操作本质上来讲就是一个比较大的程序,由多个源文件和头文件编译联接而成。操作系统的主要功能就是操作设备平台的各个硬件,将使用设备的人和具体的硬件操作隔离开来,只留下操作插口供使用,这样使用者就毋须直接操作硬件,避开了冗长的工作量,只须要通过api插口来间接操作硬件。
操作系统具体的功能主要彰显在以下四个方面:
1.显存管理:裸机程序要使用显存,须要程序员自己去管理分配,这样容易导致已使用显存被覆盖、访问到不该访问的区域以及显存泄露等致命问题,有了操作系统后,当任何进程须要使用到显存时,都要向操作系统申请、注册,再由操作系统统一分配、调度,操作系统清楚地晓得什么显存归那个进程所有,什么区域不容许被访问,这就极大地增加了显存覆盖、越权访问等问题,提升了整个系统的稳定性。
2.进程调度:操作系统允许多个进程进行宏观上的并行运行,即可以同时间段运行多个进程,通过操作系统的协调调度实现cpu的分时复用,以在各进程间来回切换执行,实现宏观上的并行。
3.硬件设备管理:操作系统会去控制操作各个硬件设备,这样有了操作系统就不须要直接操作硬件了,而只须要通过API来调用操作系统中的硬件驱动程序来间接操作硬件。
4.有文件系统来管理块储存设备:操作系统提供文件系统来帮助用户管理块储存设备。块储存设备是由一个个磁道组成的,对块设备操作要一磁道为单位:linux操作系统,当没有操作系统时,就须要用户自己操作各个磁道来管理文件,有了操作系统后linux系统应用,用户就毋须再去关注具体的磁道操作了,而是只须要关注文件名称以及文件储存于块设备的那个区域。
Linux操作系统最重要的一个特性就是:实现了模块化。
所谓模块化,也就是说linux操作系统的各个功能模块之间的关系是互相独立的松耦合方式,互相之间没有通过全局变量来互相管理linux vi,甚至函数间的互相调用都极少,例如显存管理模块就是拿来管理显存用的,它和硬件驱动模块内有必要的联系,不至于硬件驱动发生了故障会造成显存管理模块也发生故障。模块化的最大用处就是可以实现内核功能的可剪裁,实现功能订制。
实现模块化的手段:
1.配置时可剪裁。Linux在配置时可以分为成千上万个功能模块,可以按照须要将想要的功能模块配置进去。
2.模块化编译和安装:linux实现了模块化的编译安装,可以将个别功能以模块的方式安装去系统:linux操作系统,而毋须使其成为内核的一部份,这样有利于功能模块的动态增减,实现动态升级。
3.在源码中使用条件编译来决定什么模块须要被编译安装,什么不须要。
本文原创地址://lrxjmw.cn/czxtdgnynxrh.html编辑:刘遄,审核员:暂无