【Linux系统编程】对操作系统的理解
·
操作系统的概念:
广义的操作系统:操作系统内核+其他程序(shell外壳、库函数等等)
狭义的操作系统:操作系统内核(进程管理、内存管理、文件管理、驱动管理)
操作系统是一个进行软硬件资源管理的软件。操作系统几乎都是用C语言写的。

设计操作系统的目的:

首先我们要清楚的是:管理的本质就是对数据的管理。
我们管理的基本步骤是:先描述,再组织。怎么理解?我们可以定义一个struct或者class,从而对这个对象进行详细的描述,然后对定义出的多个对象进行管理组织,用什么呢?答案是数据结构。操作系统的设计也是如此,所以在操作系统的内部存在着大量的结构体和数据结构,达到管理下层软硬件资源的目的。
操作系统存在的目的:
对下:与硬件交互,管理所有的软硬件资源
对上:为用户程序(应用程序)提供良好的执行环境
库函数和系统调用的理解
为什么要存在系统调用?因为群众当中有坏人!如果让上层随意的访问操作系统甚至下层的数据进行篡改、抹除,这是一件非常可怕的事情,所以要进行控制,暴露部分接口,保证可控的情况下供上层开发使用,这部分由操作系统提供的接口就叫做系统调用。
接口的功能比较基础,根据要求,开发者也可以对部分系统调用的接口进行封装,形成库函数,从而产生了库,极大减少了用户使用操作系统的成本,也利于更上层用户或开发者进行二次开发。
完~
openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构
更多推荐

所有评论(0)