我认为操作系统可以理解为是一个软件运行在硬件上,负责管理硬件资源,并且将硬件资源所提供的计算能力切割(cpu切割成多片分配给多个不同的程序,内存切割成多段分割给多个不同的程序,并且在它们之间完成协调)。还负责一个程序的启动、终止、切换、回收等工作。总的来说,它不负责具体工作,只负责协调其他程序的工作。
要学习操作系统,还需要了解进程的概念。进程其实就是一个程序的处理过程,具有生命周期。
用户怎么打开一个进程呢?这就需要知道shell的概念。shell是一个把计算机的功能通过人类容易操作的方式输出的一个接口。就是人机交互接口(也可以说是人机交互界面)。shell分为GUI(图形用户界面)和CLI(命令行用户界面)。我理解shell就是将用户的指令行为翻译成内核能理解的指令。
下图为我理解的一个程序的执行过程。
上图的操作系统内核主要功能就是进程管理,内存管理,提供文件系统,网络功能,硬件驱动,安装机制等等。
在我看来操作系统内核的根源是Unix,其他都是在它的基础是演变而来。(仅为个人观点)
常见的操作系统有Android, iOS, Linux, Windows。
时间: 2024-10-10 11:00:46