2

linux操作系统原理(Linux操作系统原理与应用(陈莉君))

美国断供“芯片之母”EDA引发轩然大波,如果美国代表的西方断供linux操作系统会产生什么后果呢?

我先说说结论:上中下游企业分摊成本,linux内核开发者迎来像前几年互联网行业的暴富潮。

1、先来看对企业的影响。

如果美国断供linux操作系统,并不是说我们就拿不到linux内核源码了。最可能的情况是国内拿不到最新的linux内核源码了,但是之前的linux内核源码还是可以正常使用的。这会卡我们的脖子吗?

大概率不会,但是会增加企业的研发成本。

硬件的东西没有就是没有,这个不可能无中生有。但是软件的东西,开发思路都是透明的,《计算机组成原理》、《操作系统》、《编译原理》、《算法导论》就是理论指导。

之前国内企业不愿意花大力气去参与linux内核的深度开发,是因为国外企业和开源爱好者把这些事情都做了。所以,我们做得最多的事情就是跟踪国外程序员的开发进度,然后给linux内核打打patch,测试下是否work。但是这些事情国内开发者搞不了么?当然不是!商业化的公司都是避害趋利的,有现成的能拿来用的东西,何必要自己再开发一遍呢?

不过,如果linux内核真的断供了,那毫无疑问,这些事情就得我们自己搞了,这无形中会增加企业的研发成本。不过这方面的成本,肯定不是由上游研发企业独自承担的,它们会通过涨价的方式传递给中下游产商、甚至最终的消费者。

所以,最终,我们看到的结果就是电子产品、各种嵌入式电子设备都涨价了。

2、再来看对linux内核开发者的影响

对linux内核开发者来说,肯定是好事儿,因为原先国外开发者干的事情,现在要由我们自己搞了,所以linux内核开发的需求肯定是变多了。

不过,前几年互联网比较火热,很多程序员都扎堆去做互联网开发,包括java、golang等后端开发,以及vue,react等前端开发,很少有程序员去啃linux内核开发的硬骨头。

现在随着互联网行业的不景气,有一部分程序员开始回流去搞linux了;如果真的linux内核代码也被断供了,那这种趋势会更加明显。

以前互联网开发大热的时候,不管原来是煤炭专业的、石油专业的还是水利土木专业的,报个培训班学上4个月就成上手。但是底层linux开发,对入门门槛要求比较高,需要精通c语言,还要有一定的操作系统啦、计算机组成原理啦、甚至算法方面的基础,所以人才的培养需要一定的时间。

需求增长,人才供给不上,会带来短期内人才缺口变大,有了人才缺口,linux程序员的身价也会变得水涨船高。

说了这么多,我们来做一个总结吧:

凡事有利有弊,如果真的到了那一步,就算西方禁掉了linux内核源代码,说不定会迎来国内自主产权的操作系统的大发展呢。

大家也可以看看我的免费linux视频(点我头像,然后点【合集】即可观看学习),提前给自己储备一些linux相关的基础技术,以应对未来的不时之需。

关注我学习更多linux内核技术干货~

戳这里关注我 -> @简说linux

#linux# #Linux# #操作系统# #c语言# #C语言# #芯片# #嵌入式# #软件# #硬件# #运维# #计算机# #我要上微头条#

原理和实战解析Linux中如何正确地使用内存屏障

闪念基因优质科学领域创作者

原理和实战解析Linux中如何正确地使用内存屏障

可能会有读者苦恼于不知道使用哪一个发行版,其实所有的发行版不管是RedHat、CentOS还是Ubuntu,其内核都是来自Linux内核官网(www.kernel.org),不同发行版本之间的差别在于软件管理的不同,所以不管使用哪个发行版,只要理解其原理,都可以顺利使用。近年来,CentOS版本发展迅猛,本书后面介绍的Linux内容将使用CentOS8版本。——《Linux核心技术从小白到大牛》

你有没有想过,阿里历史上第一个招聘广告长什么样? 这是阿里巴巴的第一个招聘广告,发布在1999年9月14日。软件开发工程师要求有一年以上开发经验,熟悉大型数据库的基本原理,熟练使用Unix、Java、PHP,有丰富的Linux经验,即使放到今天也不过时。值得一提的是,当时的阿里成立没多久,办公地点就在小区的居民楼,宣传却称是一家高速成长的高科技跨国企业,以至于常常被应聘的人当成是骗子公司。谁能想到,当时马老师吹过的牛,后来全部都实现了。

大学的时候,我们寝室4个人,总有一个人特别用功。我们其他三个人,除了打游戏就是睡觉。

期末的时候,寝室的学霸肯定是不会挂科的,甚至还我们递答案,我们也跟着考过了。

快要毕业了,我们三个才慌了起来,只有学霸胸有成竹。

学霸精通linux源码,操作系统原理, java和

c++都会,拿了一堆offer。

我们花了2个月刷题,每人拿了一个后端offer.

不过学霸后来选了客户端开发。。。。今年他被裁了, 还好知识储备够丰富,面试的时候大部分能答上来, 没有失业, 但是去了小厂。

想了想我们当初的四个人,最用功的那个人沦落成这样, 真是选择远远大于努力

随着物联网以及企业it转型的这种趋势,后续想给大家分享以下三个系列的教程:

1. kubernetes运维使用指南,教你如何使用k8s,这属于基础教程;

2. 死磕kubernetes源码,深入了解kubectl、kubelet、scheduler、controller manager的实现原理以及k8s的最终一致性设计;

3. 实战kubernetes开发,带你基于kubernetes开一个自己的云平台。涉及:统一路由、API网关、应用管理、负载均衡、服务发现、集群备份还原、自定义crd和controller等,这属于实战的项目;

看看有没有人支持?

没有的话我还是专心给大家分享linux内核技术吧。

关注@技术简说 (13站同名),带你由浅入深学习linux内核源码。进我主页点“视频”即可观看。

#云平台# #程序员# #程序# #linux# #Linux# #操作系统# #智能家居# #go# #物联网# #互联网# #k8s# #运维# #IT# #it#

大家好,我是导游小简,今天带您游览一下【技术简说】博主的知识览图:

1, 首先我们点击博主头像,映入眼帘的就是博主的全部内容。点击【合集】菜单就进入了linux内核开发100讲的视频合集。合集里的视频会按照顺序播放,此合集目前更新到29讲,博主后续会快快的更新哟。告诉大家一个小秘密,当博主焦虑的时候会通过录制视频的方式来解压。所以,当你看到博主频繁更新linux视频的时候,你大概就知道怎么回事儿了。差点忘了,一般情况下,后续linux内核视频的更新时间定于每周4晚20点左右。

2, 接着我们点击【专栏】菜单,就可以看到两个专栏:《玩转TCPIP网络协议》和Kubernetes核心开发从入门到精通》。其中《玩转TCPIP网络协议》专栏下面就是网络相关的视频,大家可以顺序播放,这个系列视频对java,golang上层网络开发还是蛮有帮助的;而《Kubernetes核心开发从入门到精通》则是博主恰饭的地方。恰饭?没错,博主也得吃饭呀。在这个专栏里博主会系统讲解Kubernetes的底层原理部分,这个专栏广受大家的好评,目前的更新已经接近完结,订阅人数已达163人。

3, 干货文章在【文章】菜单,在这个部分,我们可以看到博主的平时发布的一些干货文章,这些文章,有些是避坑指南,有些则是技术方案阐述,有些是技术细节的剖析,有些则是性能测试报告。

4, 博主也会不定期发布微头条。博主脸皮不薄、知识渊博,涉猎领域包含美图鉴赏、人文历史、心理学、代码学、美学、厚黑学等,视角独特,观点新颖。欢迎大家吐槽、交流、解压。

作为十年程序员,博主说了:技术千千万,我只取三瓢:网络,linux, kubernetes。

好了,今天的游览就结束了,祝大家学习愉悦。

#程序员# #Linux# #Kubernetes# #运维# #IT# #嵌入式# #操作系统# #网络# #java# #Java# #linux# #DevOps# #Docker# #焦虑# #35岁在职场还有竞争力吗# #我要上头条# #我要上微头条#

燥热的夏天,在CBD高档的办公楼里,对面的QA小姐姐正在忙着测试你写的Bug。

而你,正在linux系统下开着Idea或者Vscode或者Eclipse做开发。

这时,小姐姐莹莹袅袅地走过来,向你提出一个蛮合理的要求:要在你的电脑浏览器上测试一个web page,看看是否有兼容性的问题!

这么简单的要求,你当然无法拒绝。“OK,哝迫波了们”,你爽快的答应了!

可是等你再接手电脑之后,还没做什么操作,就感觉系统越变越慢,几乎卡死。

你想了解了解情况:“你刚在我电脑干了啥呀,咋这么卡了?”

“啥都没干,就测试了一个页面,怎么了?”,QA小姐姐浅浅地回答道。

“哦,没,没事,,,”

你有苦难言,你开始考虑怎么解决这个问题。

重启系统是个办法,但那是一般程序员的做法,这一次,你想找到root cause。

于是你开始行动,linux系统还有一口气,你还可以运行一些工具。

于是你先运行了top命令,发现有些进程的cpu使用量有点高,但好像也没有高到那么吓人;

很自然的,你又祭出了free来查看内存,内存的余量不算多,但是也没有少到那么吓人;

你想通过wireshark抓包,但是wireshark还没有启动,linux系统就卡死了,,,

你发现cpu、内存、磁盘、网络好像都有嫌疑,情况错综复杂,你真的是不知道从何处着手进行调试了,,,

最终,你重启了系统,让糟心的问题随着电脑主机的电流而消逝,,,

作为linux的开发者或linux使用者,相信大家都有这样的经历。我也是这样过来的,按我的经验来看,我觉得大家碰到问题的根本原因在于:

- 对linux系统下的cpu,内存,磁盘,网络的工作原理缺乏基本的理解;

- 平时没有积累起多维度看待性能问题的视角;

- 缺乏对各种调试工具的积累和使用;

- 没有形成系统的知识体系,所以更谈不上解决问题的套路了;

 

我的新专栏《linux性能调试和优化》就是专门针对大家的以上问题而创作的。

通过本专栏,大家可以收获:

1、linux下进程管理,内存管理,IO管理,网络相关的底层的工作原理;

2、45多个linux下的性能调试工具的详细用法;

3、40多条linux下性能调优建议;

4、十几个性能调试的案例,借助这些案例,带你一步一步有章法地调试linux系统下的性能问题;

本专栏新上,8月22日前订阅本专栏可享受90.2元早鸟价格,并赠送包含全部内容的思维导图。

#linux# #docker# #kubernetes# #大数据# #运维# #应用开发# #c语言# #嵌入式# #我要上微头条# #操作系统# #ubuntu# #软件# #开发# #测试# #java# #互联网#

荣耀 CEO 赵明官宣将推出 Magic OS for Windows,荣耀为何要打造属于自己的系统?

小编很讨厌华为/荣耀的一点,就是本来好好的技术,非要过度营销。

Magic OS还没有公开具体技术细节,先说提到的三个手机上的技术。这三个技术从本质上来说,都是利用今天的人工智能技术,更好的调配各种硬件资源,为用户提供更好的体验。都是很好的东西,问题是这些技术都有限制,适用范围有宽有窄,效果有好有坏,非要过度营销吹上天,很败路人缘。

GPU TurboX

前几年华为推出了GPUTurbo,根据网上的文章介绍,GPUTurbo的原理应该是通过AI技术,对游戏负载进行分析、训练出一个特定的模型,操作系统/GPU驱动根据这个模型,在运行游戏的时候对 GPU的各种资源如频率、功耗、缓存等进行更好的调配,从而获得更优秀的性能和更低的功耗。用户游戏时的体验也更流畅更好。今年的荣耀V40,则是把GPUTurbo应用到高通的SoC上,并改名为 GPU Turbo X。具体改进的技术细节荣耀没有公开,但相比之前GPUTurbo在麒麟SoC上的表现。 GPU TurboX的效果我认为是更优秀的。

很显然,这是很好的技术--功耗降低手机不烫手不掉帧,画面还更流畅了。至于因为原理限制,只能对预先训练的特定游戏生效,这个就不说了。理论上来说,如果不是毛衣站问题,华为继续坐稳安卓第一的话,以华为的影响力,把训练平台开放给游戏开发商,相信会有更多支持GPUTurbo的游戏

出现。

Link Turbo X

类似于电脑上的网卡聚合,某个角度来说效果更好。毕竟电脑联网通常只有一个出口,手机则是

WiFi和4/5G两个出口。根据网络负载的不同需求以及信号条件,智能选择更适合的出口,避免因为网络堵塞导致卡顿,节约4/5G流量。

OS Turbo X

这个其实有好几个改进。

内存方面,应该是一方面启用了闪存上的虚拟内存,使得操作系统的整体可用内存容量更大:另一方面对后台进程启用了内存压缩(猜测应该类似 Linux上的ZRAM),可以节省内存使用。最终结果就是可以有更多数量的APP后台也不会被强行杀掉,多应用切换使用更流畅。

存储方面,猜测是根据闪存的存储原理,一方面操作系统及时清理各种应用的缓存数据,另一方面则是提高闪存进行磨损均衡操作的频率,从而保持闪存一直有足够多的可编程块,而且不会因为数据长时间存储下隧穿效应导致电子泄露-浮栅电平下降-位错误增加-加重纠错机制负载,提高了文件访问响应速度。

过度营销

这个不想再细说了,海军凶猛,保命要紧。有兴趣的可以翻一下当年GPUTurbo的时候60%、30%两个数字是怎么来的。

至于这次的MagicOSforWindows--以荣耀这些工程师的水平,我相信他们不会对“OS”这个定义有什么误解。然而Windows本身也是OS,所以这xx OS for yyOS是啥意思?怕不是又想像鸿蒙那样营销:你看我们的笔记本上也是用自研操作系统

操作系统、编程语言、芯片哪个突破更难,经常有人问我这个问题。关心这个问题打的小伙伴都是爱国的,时刻关注国家战略产业发展的。

我个人的理解,难要看哪方面,纯论技术难度,那应该是芯片。芯片的设计方面方面,我们已经有所突破,难的是制造,也就是大家最关心的光刻机。光刻机号称工业皇冠上的明珠,技术难度非常大。

操作系统和编程语言相比,技术上操作系统更难一点,但两者都差不多,难点主要都不是来自技术。因为原理都是公开的,还有各种开源项目可以参考,稍微学的好一点的同学都可以做一个简单的原型出来。难就难在产业体系、生态环境和用户习惯,这都是要无数年的积累才能形成的,很难有简便的路径赶超。

你就算做出来一个,可是没有配套支持,没有用户使用,那又能坚持到几时。其实编程语言国产的已经不少,从技术上来说不少也很有特色,但就是知道的人很少,使用的人更少,就是这个道理。

操作系统的话,大家都用开源的Linux内核。其实你说重写一个类似的操作系统内核行不行,技术上来看其实也没那么难,关键是软件生态也要重新建,用户习惯要重新培养,非常困难。这是典型的先发优势,后来者追赶要付出10倍以上的代价才行,因为已经形成的护城河太厚了,很难打破。

所以,虽然从技术上来说芯片最难。但要说突破,我估计芯片会最早,可能芯片都突破了,但操作系统和编程语言还是遥遥无期。

[送心]周五下班前,突然想给大家投喂点精神粮食

[心]关注+[鼓掌]转发抽5个小可爱送出来自腾讯11级工程师十年沉淀的《深入理解 Linux 网络》一书(价值118元)

十年里,每一次项目的复盘、每一次线上问题的处理、每一次性能的优化,他都一一记录并整理沉淀。内容涵盖了网络底层工作原理、TCP连接实现方式、网络性能优化,甚至还包括了容器网络当下比较火爆的技术点。

"以前总是模糊,找不到继续深入领悟网络编程的门道,今天终于入门了!"这是从众多读者评价中摘选出来的一句,希望你们看了之后也可以融会贯通,打通任督二脉,越来越强!

抽奖详情

本文来自网络,不代表本站立场。转载请注明出处: https://tj.jiuquan.cc/a-2137571/
1
上一篇linux操作系统介绍(浅谈linux操作系统)
下一篇 linux操作系统命令(linux操作系统常用命令)

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: alzn66@foxmail.com

关注微信

微信扫一扫关注我们

返回顶部