06 | 操作系统进场
06 | 操作系统进场
讲述:丁伟
时长13:16大小12.18M
操作系统的启动过程
操作系统的需求演进
操作系统的边界在哪里?
结语
赞 34
提建议
精选留言(100)
- 郭小菜2019-05-03老师,请收下我的膝盖106
- coder2019-05-05许老师,您好,虽然自己是科班出身,但是对于下面这个问题困扰了我很久: 1. 一般来说程序的运行需要OS的支撑,那么在BIOS之前,选择运行哪个操作系统那一段程序是怎么运行的?再问一句,编译器可以独立于操作系统运行吗? 2. 可以用C语言去实现很多其他的语言,比如说python, go等,那在C语言之前,这么一直追寻下去,会衍生成鸡生蛋的问题。但是编程语言又具有自举的功能,那自举是怎么实现的?e.g. 目前版本的go核心实现中,很多是用go本身实现的,它是怎么做到自己编译自己的?展开
作者回复: 1、程序运行不需要操作系统支持,有bios支持就可以(把控制权交给它)。编译器可以独立于操作系统存在,而且它应该先于操作系统产生。 2、语言诞生的过程是这样的:机器码 =》汇编 =〉C =》C写的汇编,C写的C(自举)。当然这个过程不需要每次新架构的cpu或操作系统都重新来一遍,因为人是聪明的,发明了交叉编译这样的东西,C =〉新平台的C,这样就一下子完成整个语言的进化了。
共 7 条评论77 - Jiayp2019-05-03这才是从需求出发,以前学操作系统,上来就讲有哪些操作系统,操作系统的实现,从来没有考虑过,操作系统到底要实现哪些需求共 1 条评论68
- 晓凉2019-05-04隐隐感觉到架构的主要难点在于对需求的前瞻性判断,这要求的不仅仅是技术能力。目前几乎所有的架构课程,都是基于确定的需求来讲技术架构,例如秒杀系统怎么做高可用高并发。能听到许老师这么高视角讲架构,实在幸运。
作者回复: 架构在于创造,如果你从事的事情总是重复别人,那这个公司又有何价值?即使有所参考,也应该有自己的精气神,这个精气神是需要架构师把它干出来的
共 3 条评论34 - 公号-技术夜未眠2019-05-041 操作系统、浏览器和互联网搜索引擎的关系是什么? 随着技术的更迭,Web应用程序已经成为主流的软件形态,而浏览器是运行web应用程序的容器(传统的二进制应用程序也已被支持);因此,浏览器已然成为PC时代的访问入口,从分层的技术架构上来看,操作系统已成为浏览器的底层,而浏览器已成为操作系统的入口,用户甚至无法感知操作系统的存在,所以从未来的发展趋势来看浏览器完全可以取代操作系统。 搜索引擎是浏览器上杀手级的高频应用。在PC时代,已然成为流量的漩涡。 2 移动时代的浏览器会是什么样的?它和操作系统的关系又是如何? 移动时代,浏览器就是操作系统上的一个普通App,其重要性较之PC时代已经下降不少;因为浏览器的部分作用已被各类垂直化的应用App所代替。App在移动时代较之浏览器一个突出优点就是用户体验更好。随着5G时代的来临,个人愚见是移动浏览器会焕发新一春。展开共 4 条评论26
- Enthusiasm2019-05-03关于操作系统,浏览器,搜索引擎,可以归结为平台产品。我并不认为每个架构师都有机会做出一款平台产品,而且,我认为平台产品还是类似于基础服务,并不能带来很高的收益,获得收益关键是如何形成一个商业闭环,让钱乖乖流进来。操作系统已然形成不了技术壁垒,也就起不到商业壁垒的目的。未来能形成商业壁垒的,我认为是产品差异化,物联网时代想方设法做出新产品的机会还是蛮多的。微信小程序想让所有程序都集成到微信里,我只想呵呵。微信直接开发个操作系统卖微信手机得了,互联网的流量思维,割韭菜,羊毛出在狗身上猪来买单的思维,我认为是一种浮躁。过去的3q大战,IE和网景大战,共享单车,打车补贴大战,谁真正称得上商业成功?百度成了莆田系的帮凶,谷歌当初要不及时悬崖勒马也晚节难保。踏踏实实做一个良心企业,这样的成功才称得上真正的成功。展开19
- gbfa2019-05-06这种对需求的前瞻性探索挺重要,但同时感觉也是最难的,应该如何培养呢~
作者回复: 很多时候是思维方式的转变。首先要尝试去做前瞻,预测错了并不可怕,但可以事后复盘到底是缺失了什么重要的信息让你判断出现什了偏差。
18 - 好好学习2019-05-04k8s正在接管集群操作系统的角色,服务治理是它根本停不下来16
- Enthusiasm2019-05-03老师您的意思是让我们一上来就多考虑一下系统的“收费需求”或者“商业模式”。嗯,很好。总结一下各个公司的成功途径,就是先要满足大量刚需或者打破现有商业壁垒,然后靠技术、工艺和法律形成新的商业壁垒迅速崛起,最后依靠积累的用户基数和粘性,获得规模效应,开发新产品以获得更高的溢价等等。 做硬件和做软件要相结合,只做上游服务并不能形成良好的商业闭环,所以IoT+人工智能我认为很有发展前景。非常希望NAS存储能走进千家万户,360网盘停止服务,百度网盘的限速,内容失效,且网盘内容无法保证隐私性,我妈妈的手机内存很小,经常需要清理内存,如果每天回到家都能自动把照片视频备份到私有云盘就好了。这些让我觉得,每个家庭有一块属于自己的私有云盘,是将来的刚需。现在NAS用起来没有那么智能和方便,我认为IoT+人工智能可以去做出个像样的可扩展迭代的NAS品牌。 我想做的还有很多,平时想起一个就把它记在OneNote里,将来有天想创业了,刚好是个项目。只不过,现在要从技术上朝着架构师方向努力!展开16
- 苟范儿2019-05-06老师现在主要提到的是终端(PC/Mobile)类的操作系统. 当前的云计算底层的系统,以及未来 IoT 边缘系统会有什么特殊之处么?
作者回复: 挺好的问题。后面会在第三章服务端开发再次讨论操作系统,会探讨它的演进历程和方向。
12 - frostawn2019-05-09许老师,小白请教个很困惑的问题。 为什么pc可以有兼容机,让操作系统windows收费或者linux免费各占半壁江山,但是手机不能有兼容机呢,而说手机是个性化产品,不能标准化,他们再怎么个性,也脱离不了前面讲过的冯诺依曼体系吧。而且现在现实也是有安卓和ios两大阵营。所以并不是技术上没做到兼容,而是商业盈利模式的区别,ios可以利用支付闭环将流量变现,安卓拿不到支付系统的控制权无法做生意盈利。 请您指教。谢谢!展开
作者回复: 和技术没关系,是人性的问题。手机是人体器官的延伸,是门面,用户不会接受白牌机的,所以手机不是技术上做不到兼容机,而是人性上不会接受白牌机。
共 3 条评论11 - Cordova2019-05-09根据老师的理论过程来看,个人觉得操作系统它是一个没有明确边界的,只有放在历史(时间)的维度上它才有边界的表现,其实也不需要去深究其边界、在pc时代互联网的出现的确让人感觉浏览器赋予了不同反响的历史使命,以后将发挥更大的价值,移动时代发现我们所需要的内容不仅仅可以在浏览器上才能获取到,在不同的内容平台也能获取到自己想要的内容,而现在正是如此、要说操作系统的下一次演进、我想只有两个方向:更具有便携性、个性化的硬件产品出现了,这会进一步催生… 历史好像就是这样的,但实际是软件反推动硬件(第二个方向):信息数据格式和渲染出现了新的表现形式。浏览器就让他一直停在pc时代随着pc演进吧、app就让他跟着移动端的脚步继续前进吧。至于以后,微系统-多联网、也许是下一步吧、这又将催生出怎样的新生态~ 拭目以待!展开
作者回复: 挺好的思考
共 2 条评论12 - Eternal2019-07-20老师最后的思考题我有这样的思考:从资源的使用方式来看。1.当互联网还不发达的时候,用户在操作系统上只能通过客户端软件与外界交互,剩下的只能做本地操作,使用的资源少,资源的表现形式少,用户与外界交互少。2.当万维网出现,用户可以用浏览器这个载体使用到更多的资源,资源表现形式更丰富,交互也增多,这个时候浏览器适新形式下用户对资源的使用。3.当互联网发现一定阶段后,网民数量暴增,资源多得用户只通过人力就可以先到想要的资源是不可能的了,这个时候搜索引擎是给用户进入整个网络,使用巨量资源的新的当时,现在如果上网你不用搜索引擎你怎么查资料?所以总结,我认为是资源的数量,资源表现形式的变化,人与计算机,人与网络的交互方式更加多样导致操作系统演化出浏览器,当资源庞大后才有了搜索引擎。 其实还可以换个角度 1.全球人口的增大,全球经济的增长,导致网民数量增大,使用网络的需求指数级增大,催生了信息技术的发展。 2.人是社会群里动物,有天生的沟通交流的需求,互联网和移动互联网突破了大自然的屋里空间和时间空间的限制 3.当前人工智能又在改变更多的基础限制,正在突破人脑的智力极限展开7
- Smallfly2019-06-06许老师,我今天重新回顾了一遍这篇文章,以需求为出发点的写法,给读者的印象更加深刻,也更好理解,非常赞。但是我有两个问题想请教: 1、 对于六大系统的划分,文件和内存被统一为存储管理,为什么不把输入输出合并为设备管理呢?后面也都只是放一篇文章讲的。 2、 如何理解 PC 兼容机?是指 PC 能运行 Windows 和 Linux 么?而像三星小米只能运行 Android,iPhone 只能运行 iOS,所以不是兼容机?展开
作者回复: 1、这里的输入与输出设备,是指用户输入和面向用户交互的输出设备,不同于冯诺依曼结构中提到的输入输出设备(泛指所有设备,包括存储设备和网络设备)。输入与输出设备管理合并为一章并不是因为它的内容少,而是因为它不是本章的重点。 2、PC 兼容机是指白牌机,没有品牌或品牌几乎没有知名度。而且很多白牌机连操作系统都没有预装,硬件厂商没有意识到预装是一个巨大的市场。
7 - 涵2019-05-04大胆设想,未来对大众消费者来说会持有各种终端,仅是终端而已,专注于输入输出,绝大多数计算和存储能力由云服务完成。终端设备无需复杂操作系统。设备开启接入网络,可能会在云端有一个针对这种设备这个账号的操门户,用户通过这个门户实现与各种应用的交互。因此,可以预见,云端上对于用户设备门户服务的争夺会很关键。微信小程序就有这个意思。这个门户服务就像是用户终端设备的操作系统,但是部署在云端,对用户使用的各种服务进行管理,支持跨服务的数据交互,跨终端的数据交互,管理用户数据安全,账户安全。再往远想象,这个门户会成为人与数字世界连接的界面,个人的重要身份特征会存储其中,是人生命的一种延伸。展开共 1 条评论6
- 胡鹏2019-07-03老师: 大概两个月前听到这篇文章, 期间在做spark相关的需求, 从中了解到程序开发的时候, 很多情况下需要花大把的精力来考虑分布式的问题 操作系统的出校是为了治理软件: 分布式系统的出现, 是为了解决单个机器无法完成的超大存储或者运算. 现在确实已经出现了相应的软件, 比如spark就是分布式计算, 区块链就是分布式存储. 同是目前在学习k8s, 发现k8s也是为了治理分布式软件的. 但是目前却没有一款 操作系统 能够把分布式计算和分布式存储统一起来, 封装在底层, 从而使软件开发更多就需要关心业务, 而不用太多的考虑分布式问题 我认为 分布式操作系统 大有可为, 但是目前还没有发展到这个层面还是说很多人都考虑到了, 但是有什么技术限制之类的?展开
作者回复: 你说的分布式操作系统,大概率未来是k8s的
6 - apk2019-05-08对于“PC无法摆脱操作系统控制但是手机厂商可以摆脱Google的控制形成自己的商业闭环”这一点不是明白? Pad、一体机这些能不能也形成自己的商业闭环呢?
作者回复: 历史阶段不同。PC的历史再演一遍,可能会是完全不同的结果。
4 - zjh2019-05-05感觉不论操作系统还是浏览器,一旦成熟就会变为基础设施层,人们就回默认它的存在,从而就会出现建立在其之上的应用来取代他们成为新的入口共 1 条评论4
- crazier.huang2019-08-16操作系统软件服务的治理,那到底治理的是什么。像现有Spring的架构他事实上也提高了治理。但两者治理是截然不同的,那么治理最核心的概念又是什么
作者回复: 不同领域的治理目标并不一样。操作系统的软件治理,最核心目标最基础的是软件之间和谐共存。比如Kubernetes,它也负责软件(服务)治理,最核心的目标就变了,变成软件在线上远行的稳定性和可维护性。
3 - Tom.G2019-06-191.操作系统是用户入口,浏览器是互联网入口,搜索引擎是互联网流量入口 2.移动时代的浏览器可以是各种应用,通过应用承载互联网内容,互联网内容分类更细更专业3