首页 > 代码库 > 日常总结:自学操作系统基础的一些领悟

日常总结:自学操作系统基础的一些领悟

    我认为操作系统可以理解为是一个软件运行在硬件上,负责管理硬件资源,并且将硬件资源所提供的计算能力切割(cpu切割成多片分配给多个不同的程序,内存切割成多段分割给多个不同的程序,并且在它们之间完成协调)。还负责一个程序的启动、终止、切换、回收等工作。总的来说,它不负责具体工作,只负责协调其他程序的工作。

    要学习操作系统,还需要了解进程的概念。进程其实就是一个程序的处理过程,具有生命周期。

    用户怎么打开一个进程呢?这就需要知道shell的概念。shell是一个把计算机的功能通过人类容易操作的方式输出的一个接口。就是人机交互接口(也可以说是人机交互界面)。shell分为GUI(图形用户界面)和CLI(命令行用户界面)。我理解shell就是将用户的指令行为翻译成内核能理解的指令。

    下图为我理解的一个程序的执行过程。

wKiom1ROUYjRg8EHAAH6ShMrxZ0686.jpg

    上图的操作系统内核主要功能就是进程管理,内存管理,提供文件系统,网络功能,硬件驱动,安装机制等等。

    在我看来操作系统内核的根源是Unix,其他都是在它的基础是演变而来。(仅为个人观点)

    常见的操作系统有Android, iOS, Linux, Windows。    

本文出自 “xxlixin” 博客,请务必保留此出处http://xxlixin1993.blog.51cto.com/9498220/1568639

日常总结:自学操作系统基础的一些领悟