分享

简谈操作系统

 东西二王 2019-05-21

自打谷歌宣布停止对华为海外版手机安卓系统的更新服务后,那么对于操作系统的重要性相信很多人都有了初步认识。

那么究竟什么是操作系统?为什么如此重要?研发自主操作系统到底难不难?我们今天简单了解下。

操作系统实际上就是通过指令和设定逻辑对数字电路进行控制,以管理和完成应用软件各项功能的机器主软件系统。

操作系统在功能上体现在管理,实现各种功能上。这些管理和功能实现包括自身和应用软件。

这些功能是如何实现的?就是指令。指令是一串控制数字电路功能的代码。这些代码就是0,1字符串,实际上最后被转成物理的高低电平串来控制逻辑电路门,以求开启电路功能。

这就要求,若想生产操作系统,你必须充分了解某个逻辑电路系统的指令集和这些电路的每一个功能原理,否则生产不了操作系统。这样看,操作系统与硬件是互相配合的。

你也可以围绕别人的硬件和指令集来生产自己的操作系统。但是会受硬件厂商制约。如果不想受制约,这时你需要订制或自己开发硬件,设定指令集。

0,1指令串我们在使用和编程时不方便记忆和使用,这是个最底层的机器语言,所以我们发明了编译软件和高等指令(命令)。这些我们方便记忆和理解的命令通过各种关系组织到一起的集合,就是程序。这个过程就是编程。编程软件是工具软件,被创造出了很多种,由语言来区分。每种编程软件又对应各个应用环境。比如系统开发编程,网站后台编程,数据库编程,游戏编程等等。不同对象要选择最适合的语言。

这样看来,要想开发自己的操作系统,还要开发出对应的各类编程软件,这又是个巨型工程。否则,你的系统出来了,很可能无应用软件可用。

事实上一个操作系统并没有那么多数据,DOS只有几M,而win10弄了10多G,功能和视图肯定占了一部分,但更多的还是人为。不大不慢你还会不停地升级硬件么?安卓系统也是如此。苹果系统就非常小且流畅,因为苹果独一家,没必要自己难为自己。

至于多任务和单任务,则完全由硬件功能和性能决定,操作系统你可以设置成对硬件的任何操作。这就是我们所说的真8核和假8核或单线程和多线程。

一个完整的计算机必须包括显示器,处理器,输入输出器,内存和永久外存。所有软件数据必须被加载进内存才可以被处理器(CPU)所使用。这些内存中数据又被分成了指令和应用数据。这些指令和应用数据都是被自动区分的。

因此说生产自己的操作系统也不是太难。需要精通指令集,设置系统逻辑,精通硬件功能,精通编译,精通功能模块,只要精通这5点,你就可以编写自己的操作系统。

系统在开机时会把存在永久存储器上的系统相关数据依次加载到内存,因此编译软件非常重要,这个编译器决定了上层软件的内容。编译器不同,上层内容肯定不同。比如机器语10110100可以用FF代表,也可以用AA表示。无论什么,相同指令集的处理器最后译成的二进制码肯定相同。

先简单说这么多,实际上已经把制作操作系统的简单思路说了。但是重点是操作系统的功能,安全与效率和针对此系统的应用软件开发,这需要投入巨大的人力,财力和时间。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多