一、操作系统概述
1、操作系统的定义
操作系统(Operating System,简称OS)是一种系统软件,它是计算机硬件和应用软件之间的桥梁。它管理计算机的硬件和软件资源,为应用程序提供接口和服务,并协调应用程序的运行。操作系统是计算机系统中最基本的软件之一,它控制着计算机的所有活动,包括输入输出、处理数据、管理存储、协调进程和网络通信等。常见的操作系统包括Windows、macOS、Linux、Unix等。后面我们主要讨论Linux操作系统和其他的一些嵌入式操作系统。
计算机系统的分层视图
2、操作系统的特征
- 操作系统是一种系统软件,但与其它系统软件和应用软件有很大的不同,它有自己的特殊性,及基本特征。
2.1、并发
- 并发:两个或多个事件在同一时间间隔内发生,这些事件在宏观上是同时发生的,在微观上是交替发生的, 操作系统的并发性指系统中同时存在着多个运行的程序
- 并行:两个或多个事件在同一时刻发生
- 一个单核(CPU)同一时刻只能执行一个程序,因此操作系统会协调多个程序使他们交替进行(这些程序在宏观上是同时发生的,在微观上是交替进行的)
- 操作系统是伴随着“多道程序技术出现的”,因此操作系统和并发是一同诞生的
- 在如今的计算机中,一般都是多核cpu的,即在同一时刻可以并行执行多个程序,比如我的计算机是8核的,我的计算机可以在同一时刻并行执行8个程序,但是事实上我们计算机执行的程序并不止8个,因此并发技术是必须存在的,并发性必不可少。
2.2、共享
- 资源共享即共享,是指系统中的资源可以
供内存中多个并发执行的进程
共同使用 - 共享分为两类:互斥共享和同时共享
(1)互斥共享
- 计算机中的某个资源在一段时间内只能允许一个进程访问,别的进程没有使用权
- 临界资源(独占资源):在一段时间内只允许一个进程访问的资源,计算机中大多数物理设备及某些软件中的栈、变量和表格都属于临界资源,它们被要求互斥共享
- 举个例子:比如QQ和微信视频。同一段时间内摄像头只能分配给其中一个进程
(2)同时共享
- 计算机中的某个资源在在一段时间内可以同时允许多个进程访问
- 同时共享通常要求一个请求分为几个时间片段间隔的完成,即交替进行,“分时共享”
- 这里的同时指