操作系统的基本概念

简介: 操作系统的基本概念

## 操作系统的基本概念

### 操作系统的概念

#### 什么是操作系统?

OS:操作系统(Operating System)

OS:是指控制和管理整个计算机系统的硬件和软件资源 并对计算机资源进行合理的分配 提供给用户和其他软件方便的接口和环境的程序集合

操作系统发展.png

![操作系统发展](./操作系统发展.png)

**电脑启动流程:**

当用户启动一台计算机时 计算机首先是进入的是BIOS模式

BIOS存储在计算机的ROM中 BIOS通过读取CMOS的相关配置来选择启动的设备

从而启动装在硬盘中的操作系统来控制计算机的硬件

而一套完整的计算机系统由三部分组成 应用程序、操作系统(OS)和计算机的硬件

并且 操作系统本质上是一个运行在计算机上的软件程序 只不过这个程序运行在处理器特权模式下 用于管理计算机硬件和软件资源

**计算机系统的构成:**

- 用户

- 应用程序

- *<fontcolor="LightSeaGreen">操作系统(OS)</font>*

- 硬件(裸机)


***操作系统起着承上启下的作用:***

操作系统承上启下.png

![操作系统承上启下](./操作系统承上启下.png)

OS是一种【系统软件】

- 与硬件交互

- 对资源共享进行调度管理

- 解决并发操作处理中存在的协调问题

- 数据结构复杂 外部接口多样化 便于用户反复使用

作为【系统软件】OS做了哪些事

- 管理与配置内存

- 决定系统资源供需的的优先次序

- 控制输入设备与输出设备

- 操作网络与文件管理系统等基本事务

- 提供一个让用户与系统交互的操作页面

### 操作系统的目标和功能

#### 目标

- 有效性

 - 提高系统资源利用率  

 - 提高系统的吞吐量

- 方便性

- 可扩充性

- 开放性

#### 功能

- 作为计算机系统资源的管理

 - 处理机管理

    1. 进程控制

    2. 进程同步

    3. 进程通信

    4. 调度

 - 存储器管理

    1. 内存分配

    2. 内存保护

    3. 地址映射

    4. 内存扩充

 - I/O设备管理 (I/O指的就是input/output 即:输入/输出设备)

    1. 缓冲管理

    2. 设备分配

    3. 设备处理

 - 文件管理

    1. 文件存储空间的管理

    2. 目录管理

    3. 文件的读/写管理和保护

- 作为用户与计算机【硬件系统】之间的接口

 - 程序接口(API:Application Programming Interface)

 - 命令接口(CLI:Command Line Interface)

 - 图形用户接口(GUI:Graphical User Interface)

- 实现了对计算机资源的抽象

 - 将具体的计算机硬件资源抽象成软件资源 方便用户使用和应用程序调用

 - 开发了简单的访问方式(接口) 隐藏(封装)了实现细节

   - 举例:使用浏览器进行搜索

### 操作系统的特征

#### OS的四个基本特征

##### 并发(Concurrency)

- 同一时间间隔(时间段)内执行和调度多个程序的能力

 - 可以通过各种优化手段来提升并发性 从而提升吞吐量

   - 宏观上 处理机同时执行多道程序

   - 微观上 处理机在多道程序之间高速切换(分时交替执行 时指的是时间段)

   - 关注每个处理机同一时间段内处理任务数量的能力

##### 并行(Parallelism)

- 同一时刻(时间点)发生的事件数量

- 与电脑的核数和线程数是有关系的 最大不能超过核数或是线程数 受限于物理极限

##### 共享(Sharing)

- 即资源共享 系统中的资源供多个【并发执行】的应用程序共同使用

 - 同时访问方式:同一时间段允许多个程序同时访问共享资源

   - 比如:多个应用程序同时进行数据的读写 那么就共享同一个存储器

 - 互斥共享方式:也叫独占式 允许多个程序在同一个共享资源上独立而互不干扰的工作

   - 比如:一个程序在执行过程中 其他程序不能干扰这一程序的执行 大家都可以用这一资源 但是在某一时刻上 只允许一个程序的执行

 - 共享打印机(互斥共享式) 音频设备(大部分时间是互斥共享式) 视频设备(大部分时间是互斥共享式)

   - 并发和共享互为存在条件

     - 共享性要求OS中同时运行着多道程序

     - 若只有单道程序在运行 则不存在共享的可能

     - 并发性难以避免的导致多道程序同时访问同一资源

     - 若多道程序无法共享部分资源(如:磁盘) 则无法并发

##### 虚拟(Virtual)

- 使用某种技术把一个物理实体变成多个逻辑上的对应物

 - 时分复用技术(TDM:Time Division Multiplexing)

   - 虚拟处理机技术:"四核八线程"

   - 虚拟设备技术:虚拟打印机

 - 空分复用技术(SDM:Space Division Multiplexing)

   - 虚拟磁盘技术:将一块硬盘虚拟出若干个卷

   - 虚拟存储器技术

##### 异步(Ssynchronism)

- 多道程序环境下 允许多个程序并发执行

- 单处理机环境下 多个程序分时交替执行

 - 程序执行的不可预知性

   - 获得运行的时机

   - 因何暂停

   - 每道程序需要多少时间

   - 不同程序的性能 比如:计算多少 I/O多少

 - 宏观上"一气呵成" 微观上"走走停停"

资源来源于网络 若有侵权 请联系@Admin丶武林高手(QQ:1513358596)删除

相关文章
|
6月前
|
消息中间件 存储 算法
【软件设计师备考 专题 】操作系统的内核(中断控制)、进程、线程概念
【软件设计师备考 专题 】操作系统的内核(中断控制)、进程、线程概念
168 0
|
6月前
|
存储 消息中间件 中间件
DP读书:《openEuler操作系统》(一)操作系统基本概念
DP读书:《openEuler操作系统》(一)操作系统基本概念
99 2
|
11天前
|
安全 算法 Unix
深入浅出操作系统:从基础概念到实践应用
【10月更文挑战第22天】本文旨在以浅显易懂的语言,为读者揭开操作系统的神秘面纱。我们将从操作系统的基本概念出发,逐步深入其核心功能与设计哲学,并通过具体代码示例,展示操作系统如何在实际中发挥作用。无论你是计算机科学的学生,还是对技术有浓厚兴趣的爱好者,这篇文章都将为你提供一次轻松愉快的操作系统之旅。
26 4
|
1月前
|
Ubuntu Java Linux
Linux操作系统——概念扫盲I
Linux操作系统——概念扫盲I
40 4
|
2月前
|
存储 算法 安全
深入理解操作系统:从基础概念到代码实践
【9月更文挑战第23天】本文将带领读者深入探索操作系统的奥秘,从基础概念出发,逐步揭示操作系统的工作原理和设计哲学。我们将通过实际代码示例,展示操作系统如何与硬件交互、管理资源以及提供用户界面。无论你是计算机专业的学生还是对操作系统感兴趣的开发者,这篇文章都将为你打开一扇通往操作系统世界的大门。
67 16
|
6月前
|
存储 缓存 Linux
【Linux】进程概念(冯诺依曼体系结构、操作系统、进程)-- 详解
【Linux】进程概念(冯诺依曼体系结构、操作系统、进程)-- 详解
|
4月前
|
人工智能 Unix 物联网
深入理解操作系统:从概念到实践
【7月更文挑战第31天】本文将带领读者深入探索操作系统的世界,从基本概念、发展历程、核心组件,到实际应用场景和未来趋势。我们将揭示操作系统如何作为软件与硬件之间的桥梁,以及它如何影响计算机系统的性能和用户体验。通过本文,您将获得对操作系统设计哲学的深刻理解,并掌握评估不同操作系统特性的能力。
74 7
|
4月前
|
算法 安全 Linux
深入理解操作系统:从基础概念到现代发展
【7月更文挑战第25天】在数字时代的心脏,操作系统(OS)扮演着至关重要的角色。本文将深入探讨操作系统的核心功能、设计哲学以及它们如何适应不断变化的技术需求。我们将从早期的批处理系统和多道程序设计开始,逐步走向现代的多任务、多用户操作系统,并探索它们是如何管理资源、提供安全性和促进用户交互的。文章还将触及开源与专有操作系统之间的辩论,并预测未来可能的发展方向。
|
4月前
|
存储 安全 物联网
深入理解操作系统:从基础概念到现代挑战
【7月更文挑战第14天】本文将探索操作系统的核心概念,并分析其在现代计算环境中面临的挑战。我们将从操作系统的定义和功能出发,逐步深入到进程管理、内存管理、文件系统以及并发和同步等关键领域。文章还将讨论操作系统在云计算、物联网(IoT)和安全性方面的新挑战,为读者提供对操作系统复杂性的全面理解和未来发展方向的洞见。
59 1
|
5月前
|
存储 Unix Linux
深入理解操作系统:从概念到实践
【6月更文挑战第29天】本文将带领读者深入探索操作系统的奥秘,从其基本概念到实际应用。我们将一窥操作系统如何管理计算机硬件资源,提供用户接口,以及实现文件系统和网络通信等功能。文章不仅解读了操作系统的核心原理,还通过具体案例展示了这些原理在现代计算环境中的应用。无论你是软件开发者、系统管理员还是对计算机科学感兴趣的学生,这篇文章都将为你提供宝贵的知识和洞见。