操作系统基础知识学习
Operate System
计算机系统图
1.认识操作系统
1.1什么是操作系统?
硬件之上的第一层软件,是对硬件的首次扩充,又是对其他软件运行的基础。
【其他定义】
A program 是一个系统程序
计算机硬件资源的控制分配者
计算机应用程序的提供服务者
内核:系统中全时运行的一个程序
系统调用:提供在运行程序和操作系统之间的接口
【作用】
计算机硬件、软件资源的管理者
用户使用计算机硬件、软件的接口
1.2内核 Kernel
内核,是一个操作系统的核心,物理硬件之上,系统调用之下的一切。是基于硬件的第一层软件扩充,提供操作系统的最基本的功能,是操作系统工作的基础,它负责管理系统的进程、内存、设备驱动程序、文件和网络系统,决定着系统的性能和稳定性。
操作系统是一个系统程序,即为别的程序提供服务的程序。那么,操作系统的服务是通过什么方式提供的呢?答案就是:系统调用(System Call)。
1.3系统调用systerm call
定义:系统调用提供在运行程序和操作系统之间的接口
系统调用参数传递的方式:(传递量由小到大)
寄存器、内存(寄存器形式)、堆栈
系统调用主要功能:
对进程、文件、设备、信息、通信的管理
注:想想系统调用与现在用的Web Service、WCF、WebAPI、开放API之类的是否一致?
系统调用(systerm call)是更底层的东西,大多数程序员用到的是应用程序接口(Application Program Interface,API),它包含一个或多个系统调用,可移植,用户通过调用这些API即可获得操作系统的服务。
2.操作系统发展
单机处理、多机处理、多核、计算机网络
无操作系统(手工操作),
单道批处理系统,CUP与I/O忙闲不均
多道程序批处理系统,<通道、中断>
分时系统,多个用户分享使用一台计算机,分时共享硬件和软件资源
包括:多个用户分时,前台和后台分时<time slice>
实时系统、
嵌入式系统、
并行系统、
分布式系统
3.硬件
硬件保护
4.操作系统服务
设计一个操作系统需考虑的:1.提供的服务 2.为用户和程序提供的接口 3.各组成部分及其相互联系
OS所提供的服务:用户接口服务、执行程序、I/O操作、文件管理、通信、错误检测
5.操作系统结构
无结构,系统程序+内核,层次化结构,微内核
微内核:进程+存储+通信