操作系统基本概念

目录

一、基本概述

二、操作系统的特点

(一)并发性(实质是微观的串行、宏观的并行)

1. 对比看:并行性

2. 单核CPU和多核CPU

(二)共享性

(三)虚拟性

(四)异步性

三、操作系统的功能

(一)用户与硬件的接口

1. 命令方式

2. 系统调用方式

3. 图形、窗口方式

(二)资源管理者

1. 处理机管理

2. 存储器管理

3. I/O设备管理

4. 文件管理

(三)扩充机器

四、操作系统的发展和分类

(一)手工操作(无操作系统)

(二)批处理系统(操作系统开始出现)

1. 单道批处理系统(没有并发性)

2. 多道批处理系统(有并发性)

多到批处理系统需要解决的问题

(三)分时系统

(四)实时系统

(五)微机操作系统

五、练习题


一、基本概述

操作系统基本概念_第1张图片

  • 操作系统是配置在计算机硬件上第一层软件

二、操作系统的特点

(一)并发性(实质是微观的串行、宏观的并行)

  • 并发性是指两个或多个事件在同一时间间隔内发生

操作系统基本概念_第2张图片

1. 对比看:并行性

  • 是指两个或多个时间在同一时刻发生

操作系统基本概念_第3张图片

2. 单核CPU和多核CPU

  • 单核CPU同一时刻只能执行一个程序,各个程序只能并发地执行
  • 多核CPU同一时刻可以同时执行多个程序,多个程序可以并行地执行

(二)共享性

  • 是指系统中的资源可供内存中多个并发执行的是进程(线程)共同使用
  • 互斥共享方式和同时共享方式

 操作系统基本概念_第4张图片

(三)虚拟性

  • 通过某种技术把一个物理实体变为若干个逻辑上的对应物
  1. 时分复用技术(虚拟处理机技术、虚拟设备技术)
  2. 空分复用技术(虚拟磁盘技术、虚拟存储器技术)

(四)异步性

  • 在多道程序环境下,允许多个程序并发执行,但由于资源有限,进程的执行不是一贯到底的,而是走走停停,以不可预知的速度向前推进,这就是进程的异步性。

三、操作系统的功能

(一)用户与硬件的接口

1. 命令方式

用户通过输入有关命令来取得操作系统的服务,并控制用户程序的运行

  • 联机命令(交互式命令)和脱机命令(批处理命令)

2. 系统调用方式

OS提供了一组系统调用(函数),用户可在自己的应用程序中通过相应的系统调用,来实现与操作系统的通信,并取得它的服务

3. 图形、窗口方式

 它允许用户通过屏幕上的窗口和图标来实现与操作系统的通信并取得它的服务

 操作系统基本概念_第5张图片

(二)资源管理者

1. 处理机管理

  • 用于分配和控制处理机

2. 存储器管理

  • 主要负责内存的分配与回收

3. I/O设备管理

  • 负责I/O设备的分配与操纵

4. 文件管理

  • 负责文件的存取共享保护

(三)扩充机器

  • 通常把覆盖了软件的机器称为扩充机器,又称为虚拟机

四、操作系统的发展和分类

(一)手工操作(无操作系统)

  • 缺点:用户独占全机会;CPU等待人工操作

(二)批处理系统(操作系统开始出现)

1. 单道批处理系统(没有并发性)

特点:自动性、顺序性、单道性

优点:I/O操作时,CPU无事可做

操作系统基本概念_第6张图片

2. 多道批处理系统(有并发性)

特点:多道性、宏观上多任务并行、微观上多任务分片串行

优点:由于提高了CPU、内存和I/O设备的利用率,因此系统吞吐率得到提高

缺点:用户响应时间长,没有交互性

操作系统基本概念_第7张图片

多到批处理系统需要解决的问题

  • 处理机管理问题(CPU并发的执行多道任务,先执行谁?)
  • 内存管理问题(每个任务需要的内存空间不同,空间大小分配的问题)
  • I/O设备管理问题(给哪个任务分配哪个I/O设备?)
  • 文件管理问题
  • 作用管理问题

(三)分时系统

特点

  • 多路性(可以按照时间线分给不同的用户)
  • 独立性(宏观上可以让用户感觉这个操作系统是为自己独立存在)
  • 及时性(操作系统根据用户的命令作出反馈,反馈要有一定的时效性)
  • 交互性

缺点:

  • 不能优先处理一些紧急任务。操作系统对各个用户/作业都是完全公平的,循环地为每个用户/作业服务一个时间片,不区分任务的紧急性。

(四)实时系统

  • 特点:多路性、独立性、及时性、交互性和可靠性
  • 主要优点:能够优先响应一些紧急任务,某些紧急任务不需时间片排队。

操作系统基本概念_第8张图片

(五)微机操作系统

  • 单用户单任务系统、单用户多任务系统和多用户多任务系统

五、练习题

1、在单核处理系统中,可并行的是处理器与设备、处理器与通道、设备与设备

2、操作系统提供给应用程序的接口是系统调用

你可能感兴趣的:(操作系统,c++)