操作系统定义:
操作系统为管理与监控计算机硬件的程序,将计算机硬件的计算能力虚拟成软件形式予以表现;将CPU及内存资源分配给各个程序,并监控之,使程序之间互不干扰的运行。
完整的操作系统:Kernel+Application
狭义的操作系统:Kernel
内核:Kernel,操作系统的核心。
因芯片运行程序时为二进制数,机器也只能识别二进制,即机器语言,意味着程序员只能用机器语言来编写程序,才能保证芯片的识别与运行,这就使得编程工作非常的繁琐与复杂。
system call:系统调用;后来,为了加速程序员编程开发的速度,芯片厂商将芯片附带了微码,支持微码编程(汇编语言,而汇编语言虽然比较容易识别,但它与硬件所结合的程度比较高,所以也被称之为低级语言。),即使用人类能明白的单词来表示,但机器却无法识别,所以需要由编译器来完成将汇编语言转换成机器语言的过程。(编译器也是一个软件。)system call本身非常底层。
library call:库调用;因不同的厂商所制造的底层芯片(微码)的不同,而基于此开发的程序就无法进行移植,为了解决这个问题,在系统之上,放了一个中间层,这个中间层被称为API(Application Programming Interface应用编程接口)。API本身使用汇编语言编写,为不同的设备(硬件)上编写的具有相同功能的程序。告知上层程序员,无需关注底层的硬件类型,将底层的系统调用封装起来做出更高级的接口,这就是库,本身是个虚拟设备,想程序虚拟了相同类型的执行环境。
服务:启动操作系统的同时,为了提供一个完整意义上的操作系统,必须要提动的功能,即服务。
SHELL:人机交互接口,通过这个接口,才可以真正操作计算机。
转载于:https://blog.51cto.com/11003070/2066615