打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
从零开始设计一个操作系统有多难?
可乐丶罐头 04-14 22:32
17

做一个操作系统不是特别难,除了主流Windows. Android. iOS. Linux.。 还有好多不太出名的操作系统比如朝鲜的红星系统,中国的cos,阿里的云os,黑客组织的Anonymous-OS等等。

但是做一个成功的系统并不是开发出来那么简单,后续还有很多问题。最大的就是应用的开发,像主流的安卓.iOS.Windows都有数不清的应用,但是一个新的系统由于使用人数少,并不会有很多的适配软件,所以现在有的新开发出来的系统并不是软件匹配系统,而是让系统兼容软件。后续还有更新,修复bug等很多问题。

知道的不多,不喜勿喷!

阅读全文
13评论
分享
qj8311 04-14 23:16
12

研发一款真正成功的操作系统,其难度是要高于原子弹、核潜艇之类的,你看看前苏联或者其它国家,可以成功的爆炸原子弹,可以修建核电站,可以发射卫星,但就是搞不出一款成功的操作系统,请注意这里说的不是一般般的操作系统,而是比较成功、高水准的操作系统,为什么这样呢?原因有三:

1、一套高水准的操作系统,就是一个社会的缩影,它要兼顾万般需求、兼容各类客户,它的稳定性、多功能性、兼容性、可扩展性这些看似矛盾的要求必须提现在一套软件内,因此首先就要求研制者本身具备对社会万象具备极高的理解力,要见多识广,否则一个社会可能的需要什么你都不清楚,又如何研发出一款可以满足社会各类需求的软件呢?不可能。

但很多社会本身就不发达、文化单一,那么这个社会的需求与见识就必定有限,这就意味着一套成功的操作系统,只能在一个开放多元、高度发达社会、各类文化丰富多彩的社会内才可能被研制出来,因为一套操作系统其实就是一个社会的缩影,没有极为丰富的见识、没有千奇百怪的需求,你如何做出一套可以兼容这个社会99%的需求的产品?这就是常说的“你的见识决定了你的高度”。

2、其次是竞争的压力,即便是在一个发达的社会中,各类需求要素都被你掌握了,但如果没有貌似残酷的竞争,没有巨大的压力,一套成功的系统也不可能被研制出来。

这就像战争一样,没有生与死的压力,你个人的才华与潜能根本就不可能被发挥出来。操作系统也是如此,如果你只是国家出面组织一帮人,关起门来埋头研发,我敢说“十年也只是搞出一个四不像来”,因为根本就没有在市场中被反复的蹂躏、实证和PK过,不可能有好产品。只有在生与死的压力下,才可能出好货。

换言之: 只有在一个纯粹市场经济的环境中才可能竞争出一个好的操作系统

3、我们知道,天才之火也要靠利益之油来维持,在软件行业特别依靠对知识产权的尊重,必须依靠购买正版软件,让研发的公司有巨大的利益,愿意持续投入,才能让一套操作系统可以数十年的持续改进,维持高水准、高性能、高的兼容性,在一个盗版横生的市场上,是不可能诞生一套高级的操作系统的,因为研发人员早就饿死了。

综合上述三个条件,就决定了这个地球上能够研发一套成功的操作系统的国家只有一个: 美国

阅读全文
7评论
分享
sky17968701 04-14 22:36
11

写一个操作系统真的不难,难的是生态,你可以写一个操作系统,但是你不可能把所有硬件驱动都写了吧?你不可能把所有应用软件都写了吧?这些都需要有人去一步步完善积累。如果一个操作系统写出来,没有人用,就不会有厂家去支持,没有厂家支持你连个打印功能也做不出来!如果你不是一个实力超级强大的公司,或者国家,根本不要指望独立开发操作系统,当然,一些自己企业用的微型的小操作系统除外!

阅读全文
11评论
分享
手机用户57745899955 04-14 22:58
6

目前操作系统内核分为两大类,1、windows NT内核 2、unix内核 windows内核属于封闭式仅用于windows系统。而unix的衍生系统太多了,其中最著名的linux和macos。linux不能称作为系统,linux本身就是内核。从而又衍生出ubuntu,android。中国完全又能力开发出自己的操作系统,难就难在系统后期的更新和维护,这事一比不小的投资。还有生态链的建设,要有上游的厂商支持,又要有下游的软件开发做支撑。

阅读全文
评论
分享
五花肉桃子 7小时前
2

自己玩的话到linux官网下载个linux内核,搜索教程可以做个简单的操作系统,如果是像微软那种闭源很强大很主流的操作系统非常难,我记得vista操作系统内测开发一个开始菜单就用了很多工程师还有很多时间,相当大的一个工程,据说工程师好几千个。

还有不通架构的芯片指令集也不一样,像ARM是精简指令集,X86架构就复杂多了,像咱们中国也只能开发基于Unix或者Linux内核的操作系统,因为不是软硬结合不算自主产权,未来我想也没办法,毕竟世界上所有操作系统内核和芯片都是国外尤其美国发明的,这么多年过来你根本没法逆转这个局势,世界前10的超级计算机大半都是基于Linux内核的操作系统,你们觉得从零开始有多难,就算开发出来了还是要有硬件芯片指令集授权,你肯定会想自己开发指令集,但还是难,总之没有全世界各家硬件和软件公司支持干不成事的。

Unix内核系统分支好多个,目前做得做好是桌面版Mac OS和移动版的iOS,一开始还是开源免费后来大部分商业化了,直到Linux之父克隆Unix内核提倡开源精神,导致一发不可收拾,我们生活中的很多设备都基于Linux内核的操作系统,像家里的路由器,安卓手机,汽车,家电,生活中无处不在

Linux内核操作系统一般分X86架构,ARM架构两个版本,X86架构分32位和64位版,常用的有Debian,Redhat,Fedora,Ubuntu好多好多,不过我对于Linux分常见的软件集中管理版本,比如apt的debian、Ubuntu、Linux mint等,yum的Fedora,CenterOS,openSUSE等,像主流的Ubuntu基于debian开发,Linux Mint基于Ubuntu,以前的BT5也是基于Ubuntu,现在的Kali Linux直接基于debian开发,用于安全审计无线安全黑客……

另外linux内核系统桌面环境还分好多种,常见的GNOME,KDE,Unity(Ubuntu自家的),MATE,Cinnamon等

手打随便看看,有些也不一定对,只是我这20年用电脑的经验之谈,有兴趣可以留言交流交流

阅读全文
评论
分享
用户59162661 04-14 18:30
26

在这里我也问些问题,不好意思了,本来回答者变提问者了。首先操作系统是什么,干什么用的,没有操作系统可以吗?

不知道操作系统是什么,就好像你要做一件产品而不知这产品是干什么用的。产品的功能都不知道怎么做产品?同样操作系统都不知道是什么怎么做?

其实很多计算机是没有操作系统的。没有操作系统不见得就功能不强大。比如单片机,就没有操作系统。但它一的作用一点也不少,各种自动控制的家电都有单片机的存在。

总的来说不知道操作系统要做什么,就不知他的制作难度有多大。

阅读全文
42评论
分享
萌孩子和大灰狼1 10小时前
6

如果是说要从头开始研发内核的话,首先要有一群精通计算机集成电路的人来为内核设计底层交互,要理解各项元器件的电气原理,比如南桥芯片的总线定义,哪种操作需要用哪种脉冲之类的。有了这些理论基础之后,内核才能够实现与各个元器件之间的调度交互。

然后是通用可扩展接口,比如我们常用的PCI接口,USB接口,这些通用接口可以接驳各种不同的硬件,每种硬件都有不同的电气标准,我们没有办法集成到内核中,因此要开发一种通用可扩展接口,让第三方硬件厂家可以依照接口标准自行开发驱动程序。

在这之后就是开发核心功能,比如系统的启动程序,任务调度器,进程管理,内存管理,IO调度等。

然后还要为上述功能开发开放的API,供应用层的程序来调用。比如最基本的控制台程序。

再然后是基本应用程序,比如控制台,各种资源的管理器,常用的通信协议的实现,用户界面,各种功能的开发套件等,涉及到很多东西。

所以你看,真的很难。

阅读全文
1评论
分享
HuiBang 3小时前
1

制作一个操作系统并不难,很多大学计算机专业在学习操作系统原理、编译原理课程中有要求学生自己写一个简单版本的操作系统;又如现在的嵌入式操作系统,代码很小,具有操作系统的核心功能,也能仿写一个。那么难在哪里呢?我按重要程度梳理几条:

1.标准和专利保护

操作系统出现的时间短,从80年代算起,也就是40年不到,严重受专利保护,其传播成本又很低,只要优先占领市场,就能排斥其他,所以windows系统虽然长期被人诟病,但市场占有率一直在90%以上。其实标准在其中有起重要作用,这跟语言有一比,想想看,在国内你用中文发布消息,如果换成藏语会有那么多人看吗,自然会选汉语。

2.核心技术和硬件的兼容

操作系统的核心功能改进的比较缓慢,而且与硬件息息相关。

阅读全文
评论
分享
前村儿圣骑士 04-07 08:29
4

首先要说,抛开生态不谈的操作系统等于白谈。开发操作系统的难处就在于生态,有人用才有人开发,更多人的开发才会吸引更多人用。无论win还是lin,都不是一朝一夕完成的,就算是闭源的win,也是无数程序员参与其中建成的,而Linux就更不用说了

阅读全文
评论
分享
藤井树10936541 10小时前
1

这个问题本事其实是有问题的,所谓操作系统,你是指一个通用操作系统,比如Windows一样,还是一个核心,比如最小化的linux,还是一个嵌入式系统,还是一个完整的操作系统生态。

我假设你问的是Windows一样的通用操作系统,可以参考windows95的开发周期,win95最早的测试版貌似是93年就有了,那么可以猜测至少92年就已经开始开发了,到95年发布,应该是三年,然后到中间出过补丁和加强,合计算一年好了。要知道做win95之前微软已经开发过至少三代的windows,所以开发经验最少需要2年。把这些加起来,就是6年可以做一款成熟的操作系统。

用现代软件开发的各种技术放进去,我们假设可以节约三分之一的时间,那也需要4年。这需要一支上千人的团队,在极其有经验的项目经理的带领下完成。国内找的出这样的团队?

Linux的开发就不要讨论了,因为我们已经有了一个Linux,再去开发一个Linux有多大意义?而且以Linux的开发模式,在天朝只会半途烂尾决没成功的可能。

最后说一下,操作系统就算真的做出来,上面没软件的话,通通都是扯淡。

阅读全文
评论
分享
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Linux 新系统易用性向 Windows 看齐
为什么推荐学习Linux Ubuntu?Linux入门
Linux操作系统
几种常用操作系统各自的优点和缺点
主流3大系统对比,看看哪款最合你心意?
Linux发展编年表
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服