操作系统笔记(一)——操作系统的定义及作用
操作系统的定义及作用
操作系统的定义和作用
定义:一、以尽量有效合理的方式组织和管理计算机的各种硬件资源(CPU、内存、磁盘等)。
二、合理组织计算机的工作流程,控制程序的执行,并在程序执行的过程中向程序提供各种各样的服务功能。
三、运用某些方式使得用户能灵活、方便的使用计算机,且能够使计算机高效地运行。
作用:一、操作系统是资源的管理者。
二、向用户提供各种服务(通过命令接口、编程接口等接口)。
三、屏蔽硬件细节,为用户提供一个扩展的虚拟机器。
操作系统介于应用程序和硬件之间,他通过对硬件的复用、虚拟和抽象,为应用程序提供方便快捷的接口。向下操作系统利用某些方式调度计算机硬件,使得计算机能够合理充分且高效的运行。
复用:空分复用共享和时分复用共享。
a.空分复用共享(space-multiplexed sharing):将资源从“空间”上分割成更小的单位供不同的进程使用。在计算机系统中,内存和外存(磁盘)等是空分复用共享的。
b.时分复用共享(time-multiplexed sharing):将资源从“时间”上分割成更小的单位供不同的进程使用。在计算机系统中,处理器和磁盘机等是时分复用共享的。
虚拟:对资源进行转化、模拟或整合,把一个物理资源转变成多个逻辑上对应物(也可以把多个物理资源转变成单个逻辑上的对应物),即创建无须共享的独占资源的假象,或创建多余实际物理资源的虚拟资源的假象,以达到多用户共享一套计算机物理资源的目的。
虚拟技术可用于外部设备(外部设备同时联机操作,如:SPOOLing技术)、存储资源(虚拟内存)和文件系统(虚拟文件系统,如:Virtual File System,VFS)中。
复用VS虚拟:复用是对实际物理资源的分割,虚拟则是实现假想的物理资源。虚拟技术解决某类物理资源不足的问题,提供易用的虚拟资源和更好的运行环境。
抽象:通过创建接口来屏蔽硬件资源的物理特性和实现细节,简化对资源的操作、控制和使用。
抽象主要用于处理系统复杂性,重点解决资源易用性问题。
操作系统的主要特征
操作系统是一个软件。
操 作 系 统 主 要 特 征 : { 并 发 : 在 一 定 时 间 间 隔 内 同 时 处 理 多 个 活 动 共 享 : 操 作 系 统 允 许 多 个 用 户 的 程 序 共 同 使 用 计 算 机 中 的 资 源 虚 拟 : 把 一 个 物 理 实 体 映 射 或 转 换 为 若 干 个 对 应 的 逻 辑 实 体 随 机 : 对 以 不 可 预 测 的 次 序 发 生 的 事 进 行 响 应 并 处 理 操作系统主要特征: \begin{cases}并发:在一定时间间隔内同时处理多个活动 \\ 共享:操作系统允许多个用户的程序共同使用计算机中的资源 \\ 虚拟:把一个物理实体映射或转换为若干个对应的逻辑实体 \\ 随机:对以不可预测的次序发生的事进行响应并处理 \end{cases} 操作系统主要特征:⎩⎪⎪⎪⎨⎪⎪⎪⎧并发:在一定时间间隔内同时处理多个活动共享:操作系统允许多个用户的程序共同使用计算机中的资源虚拟:把一个物理实体映射或转换为若干个对应的逻辑实体随机:对以不可预测的次序发生的事进行响应并处理
典型操作系统的架构
经典操作系统的构架:
系统调用:为给应用程序的运行提供良好环境,内核提供了一系列具有预定功能的服务例程,通过一组成为**系统调用(System Call)**的接口呈现给用户,系统调用把应用程序的请求传递给内核,调用相应的服务例程完成所需处理,并将处理结果返回给应用程序。
注:系统调用的编号称为功能号。
- 系统调用是应用程序获得操作系统服务的唯一途径。
系统调用执行过程:当CPU执行程序中的访问指令[supervisor,也称陷阱指令(TRAP指令)或中断指令(interrupt)]实现的系统调用时会产生异常信号,用过**陷阱机制**[也称异常处理机制,当异常或中断发生时,处理器捕捉到一个执行线程,并将控制权转移到操作系统中某一个固定地址的机制],处理器的状态由用户态[^user mode,又称目态或普通态]转变为核心态[^kernel mode,又称管态或内核态],进入操作系统并执行相应服务例程,以获得操作系统服务。当系统调用执行完毕时,处理器切换回用户态,控制返回至发出系统调用的程序。
系统调用的作用:
1.内核可以基于权限和规则对资源访问进行裁决,保证系统的安全性。
2.系统调用对资源进行抽象,提供一致性接口,避免用户在使用资源时发生错误,且编程效率大大提高。
系统调用与函数调用的区别:
1.调用形式和实现方式不同。功能号VS地址;用户态转换到内核态VS用户态。
2.被调用代码的位置不同。动态调用+操作系统VS静态调用+用户程序。
3.提供方式不同。操作系统VS编程语言。
内核:一组作为可信软件来提供支持进程并发执行的基本功能和基本操作的程序模块。通常处于内核空间,运行于内核态,具有直接访问硬件设备和所有内存空间的权限,是唯一可以执行特权指令的程序。
内核是操作系统对计算机硬件的第一次抽象,内核和硬件构成了第一层虚拟机,进程在虚拟机上运行。
操作系统的分类
传统分类、Tenenbaum的分类:
批处理操作系统
工作方式:
1.用户将作业交给系统操作员。
2.系统操作员将许多用户的作业组成一批作业,输入到计算机系统中,在系统中形成一个自动转接的连续作业流。
3.启动操作系统。
4.系统自动、依次执行每个作业。
5.由操作员将作业结果交给用户。
追求目标:
提高资源利用率,增加作业处理吞吐量。
批处理的作业:
操作系统笔记(一)——操作系统的定义及作用相关推荐
- 操作系统学习-1. 操作系统的目标和作用
写在前面: 这个类别将记录我学习操作系统的学习笔记.会将视频讲解与书本内容进行内容提炼.每天学习一点,坚持下来会有收获.这篇主要记述操作系统的目标与作用,回顾操作系统发展历程.概念居多,了解即可. 操 ...
- 《计算机操作系统》——1. 操作系统的目标和作用
教材<计算机操作系统>第四版 1.1 操作系统的目标和作用 目标与应用环境有关 1.1.1 操作系统的目标 方便性 有效性 提高系统资源利用率 提高系统的吞吐量 可扩充性 与OS的结构相关 ...
- 【王道操作系统笔记】进程定义组成组织方式特征
进程定义 程序:指令序列 内存中同时放入多道程序,各个程序的代码,运算数据存放的位置不同. 系统在每个程序执行之间,会在内存创建一个数据结构,称为进程控制块(PCB),用来描述进程的各种信息(如程序代 ...
- 【王道操作系统笔记】操作系统的运行机制和体系结构
指令:CPU能够识别和执行的最基本的命令(加减乘除,内存) 特权指令:不允许用户程序使用,如内存清理指令 非特权指令:如运算指令 CPU如何判断当前是否可以执行特权指令? 两种处理器状态: 用户态(目 ...
- 【王道操作系统笔记】操作系统的发展和分类
重点理解各阶段的优点和缺点.各阶段的主要优点都是解决了上一阶段的主要缺点. 手工操作系统: 主要缺点:用户独占全机,人机速度矛盾导致资源利用率极低. 批处理阶段: 单道批处理系统 引入脱机输入/输出的 ...
- 【王道操作系统笔记】操作系统的四个特征
并发 指两个或多个事件在同一时间间隔发生.这些事件宏观上是同时发生的,微观上是交替发生的. 区别并行:并行指两个或多个事件同一时刻同时发生 操作系统的并发性:计算机系统同时存在着多个运行着的程序 一个 ...
- 【王道操作系统笔记】操作系统的概念,功能和目标
操作系统概念: 控制和管理整个计算机系统的硬件和软件资源,并合理组织调度计算机工作和资源的分配,以提供给用户和其他软件方便的接口和环境,它是计算机系统中最基本的系统软件. 计算机系统 的层次结构: 操 ...
- 【操作系统①】——操作系统的定义和功能、操作系统的四大特征【并发 共享 虚拟 异步】
因为我们的课程里面有用 C/C++ 来写代码,所以我会综合我们的课程和其他优质资料来写文章. 争取这学期把<操作系统>这一系列文章好好做完. 文章目录 一.操作系统简介: 一.操作系统的定 ...
- 【王道考研】操作系统 笔记 第二章上 进程调度
本文内容,1.进程和线程 2.进程调度 特此鸣谢王道考研 本文参考王道考研的相关课程 若有侵权请联系,立删 其余笔记链接: [王道考研]操作系统笔记 第一章_才疏学浅743的博客-CSDN博客 [王道 ...
最新文章
- Android Fragments 详细使用详细介绍
- 上机题目(0基础)- 数据库事务(Java)
- python入门系列——第2篇
- 二、WPF datagrid 特定行变色
- y空间兑换代码_Python爬虫实战:QQ空间全自动点赞工具
- C++——已知a+b、 a+c、b+c、 a+b+c,求a、b、 c
- Kubernetes API 与 Operator,不为人知的开发者战争
- nginx 升级http请求到websocket
- phpstorm docker php,使用phpstorm对docker中的脚本进行debug的方法
- matlab ds18b20 单片机,基于51单片机ds18b20温度检测————设计报告.doc
- Seek the Name, Seek the Fame - POJ 2752(next运用)
- hexo 环境变量_优雅的博客框架,快速、简洁、高效且主题丰富——Hexo
- 数据库系统概论第五版第二章答案王珊
- Win10 利用快捷键,快速新建TXT文档
- Python3 图片添加水印
- java商家查询订单功能_查询订单详情示例代码
- 沟通书籍排行榜前十名 提高沟通能力的十大书籍推荐
- 收集UE4 优化Tips
- Linux进程(二):生命周期
- iOS Instruments使用
热门文章
- 戴尔游匣7559-拆机磁盘换固态详解
- MySQL 8.0 新特性之哈希连接(Hash Join)
- mac 完全卸载android,Mac彻底卸载Android Studio
- 世界知名洋酒种类及酒具的使用
- 王老六计算机,crc校验和累加和校验哪个好
- Qt-FFmpeg开发-保存视频流裸流(11)
- 01 【Verilog实战】同步FIFO的设计(附源码RTL/TB)
- i5-8500 搭配 RTX3090 算不算奇葩
- 瑞数信息的“狩猎术”
- Designing Data-Intensive Applications翻译