清华操作系统课程笔记--第一章概述
1.2 什么是操作系统
- 什么是操作系统
- 从用户角度,操作系统是一个控制软件
- 管理应用程序
- 为应用程序提供服务
- 杀死应用程序
- 资源管理
- 管理外设、分配资源
- OS将CPU,磁盘和内存进行了抽象,如上图所示
- OS的层次结构,起到承上启下作用
- 位于硬件之上,为各种硬件进行了抽象,向应用程序提供抽象接口
- 位于应用程序之下,为应用软件提供服务支撑
- 操作系统提供了两种不同的对外接口
- shell(外壳):面向应用程序,linux, windows, android等的界面属于shell,操作系统对外提供的接口
- kernel(内核):面向内部,课程主要讲内核,不讲shell
- kernel-操作系统内部组件主要包括:
- CPU调度器
- 物理内存管理
- 虚拟内存管理:把有限大小的物理内存虚拟出一个更大的虚拟内存
- 文件系统管理
- 中断处理与设备驱动(IO)
- OS 内核的特征
-
并发(指一段时间内,有多个程序可以运行;而并行是指在一个时间点上有多个程序同时执行,并行需要计算机有多个CPU,只有一个CPU是无法完成并行的)
- 计算机系统中同时存在多个运行的程序,需要OS管理和调度
- 共享(内存等资源是多个应用程序之间共享的)
- “同时”访问
- 互斥共享
- 虚拟
- 指OS将CPU虚拟成进程,硬盘虚拟成文件,内存虚拟成地址空间
- 利用多道程序设计技术,让每个用户(应用程序)都觉得有一个计算机专门为它服务
- 异步
- 程序的执行不是一贯到底,而是走走停停,向前推进的速度不可预知
- 但只要运行环境相同,OS需要保证程序运行的结果也要相同
-
并发(指一段时间内,有多个程序可以运行;而并行是指在一个时间点上有多个程序同时执行,并行需要计算机有多个CPU,只有一个CPU是无法完成并行的)
1.5 操作系统实例
- unix家族
- Linux家族:rednat, ubuntu, fedoro,移动终端大部分都是基于linux内核开发的,除了苹果是用自己的OS
- windows家族