操作系统
!Y_M!
这个作者很懒,什么都没留下…
展开
-
操作系统(一):概述(含各章的传送门)
一. 操作系统的定义用户层面:是一个控制软件 主要是用来管理和控制计算机硬件和软件资源的计算机程序 作用: 管理应用程序 为应用程序提供服务 杀死应用程序 资源管理 管理外设/分配资源 操作系统位于,硬件之上,软件之下 进程<->CPU, 文件<->磁盘,地址空间<->内存。 Linux,Windows界面属于外壳shell(GUI),而不是内核kernel,而kernel是我们研究重点,在shell之下。.原创 2020-07-13 18:59:54 · 308 阅读 · 0 评论 -
操作系统(二)- 操作系统基础操作
操作系统的启动CPU, I/O, 内存通过总线连接。 DISK: 存放OS;BIOS:基本I/O处理系统( basic I/O system); Bootloader: 加载OS到内存中。 当电脑通电时,段寄存器CS和指令寄存器IP能够确定一个内存地址,例如CS:IP = 0xf000:fff0. POST(加电自检),寻找显卡和执行BIOS。(显示器,键盘…是否正常)。 步骤: BIOS: 将Bootloader从磁盘的磁盘的引导扇区(512字节)加载到0x7c00;跳转到CS:IP=..原创 2020-07-13 19:27:45 · 284 阅读 · 0 评论 -
操作系统(三)- 连续式内存分配
一、计算机体系结构及内存分层体系原创 2020-07-16 17:50:52 · 215 阅读 · 0 评论 -
操作系统(四)- 非连续式内存分配
1.1 非连续内存分配:分段(1)产生非连续内存分配的原因连续内存分配(上一节内容)的缺点分配给一个程序的物理内存是连续的 内存利用率低 有外碎片/内碎片问题非连续内存分配的优点分配给一个程序的物理内存是非连续的 更好的内存利用和管理 允许共享代码和数据(共享库等) 支持动态加载和动态链接非连续内存分配的缺点如何建立虚拟地址和物理地址之间的转换 软件方案(开销大) 硬件方案两种硬件方案分段Segmentation 分页Paging1..原创 2020-07-19 21:23:11 · 361 阅读 · 0 评论 -
操作系统(五) - 虚拟内存
1、 虚拟内存的起因1.1 大纲起因 覆盖技术(早期)/交换技术(早期)/虚存技术 虚拟内存技术:目标/程序局部性原理/基本概念/基本特征/虚拟页式内存管理1.2起因经常出现内存不够了。程序规模的增长大于存储器容量的增长。理想的存储器:更大,更快,更便宜,非易失性存储。 实际的存储器1.3在计算机系统中,尤其是在多道程序运行的环境中,可能会出现内存不够用的情况,怎么办?如果程序太大,超过了内存的容量,可以采用 手动的覆盖(overlay) 技术,只把需要的指令和数..原创 2020-07-14 22:20:10 · 423 阅读 · 0 评论 -
操作系统(六):页面置换算法
1页面置换算法目录1.1 功能目标功能:当缺页中断发生,需要调入新的页面而内存已满时,选择内存当中哪个物理页面被置换。 目标:尽可能减少页面的换入换出次数(即缺页中断的次数)。把未来不再使用的或短期内较少使用的页面换出,通常只能在局部性原理的指导下依据过去的统计数据来进行预测。 页面锁定(frame locking):用于描述必须常驻内存的操作系统的关键部分或时间关键(time-critical)的应用进程。实现方法是,在页表中添加锁定标志位(lock bit)。实验环境示例..原创 2020-07-15 10:24:16 · 2524 阅读 · 0 评论 -
操作系统(七)- 进程和线程
1 进程1.1 进程的定义一个具有一定独立功能的程序在一个数据集合上的一次动态执行过程。(运行的程序)1.2 进程的组成程序的代码 程序处理的数据 程序计数器的值,指示下一条将运行的指令 一组通用的寄存器的当前值,堆,栈 一组系统资源(如打开的文件) 总之,进程包含了正在运行的一个程序的所有状态信息。1.3 进程和程序的关系程序是产生进程的基础 程序的每次运行构成不同的进程 进程是程序功能的体现 通过多次执行,一个程序可对应多个进程;通过调用关系,一个进程可原创 2020-07-16 17:31:48 · 274 阅读 · 0 评论 -
操作系统 (八) - CPU调度
目录1. 背景,CPU调度在进程/线程生命周期的什么时候进行调度?内核运行调度程序的条件(满足其一即可)CPU调度方式,是否抢占(内核态、用户态)2 调度原则2.1 调度策略2.2 程序执行模型2.3 比较调度算法的准则2.4 吞吐量 vs 延迟2.5 公平的目标3 调度算法3.1先来先服务3.2 短进程优先3.3最高响应比优先3.4轮循3.5多级反馈队列3.6公平共享调度3.7不同调度模型的评价准则4 实时调度4...原创 2020-07-16 22:16:05 · 575 阅读 · 0 评论 -
操作系统(九) - 同步
1. 背景独立的线程: 不和其他线程共享资源或状态 确定性→输入状态决定结果 可重现建→能够重现起始条件,I/0 调度顺序不重要 合作线程: 在多个线程中共享状态 不确定性 不可重现 不确定性和不可重现意味着bug可能是间歇性发生的既然有风险,为什么需要合作进程/线程,计算机/设备需要合作 优点1: 共享资源 一台电脑,多个用户 一个银行存款余额,多台ATM机 嵌入式系统(机器人控制:手臂和手的协调) 优点2:加速 I/0操作和计算.原创 2020-07-18 17:13:43 · 425 阅读 · 0 评论 -
操作系统(十)- 信号量和管程
目录1. 概述1.1 上次课内容的复习1.2 结构图2 信号量(实现同步和互斥)2.1 概述2.2 机制的发现3 信号量的使用3.1 信号量是什么4 信号量的具体实现4.1 概述4.2使用的例子,互斥4.3 用信号量实现同步4.4 更复杂的情况,二次信号量实现不了,例子如下(生消案例)4.4.1解决:每个约束用一个单独的信号量4.5 消费者案例的实现4.6 p和v底层是怎末实现的4.7 需要注意的问题5 管程(抽象程度更高于...原创 2020-07-19 14:13:28 · 428 阅读 · 0 评论 -
操作系统(十一)- 死锁问题和进程间通信
目录1. 死锁1.1 死锁问题1.1.1 什么时候出现死锁1.1.2 例子 /为什么会出现死锁1.2 系统模型1.2.1 从数学角度来分析1.2.2 资源分配图:表示资源的使用1.2.3 总结1.3 死锁特征1.3.1 基于特征再分析死锁例子1.4 死锁处理办法易想到的办法1.4.1死锁预防(怎么让死锁不出现)1.4.2 死锁避免1.4.3 死锁检测2 IPC进程间通信2.1 概述2.1.2 直接通信和间接通信2.1.3 阻...原创 2020-07-19 16:33:28 · 453 阅读 · 0 评论 -
操作系统(十二)- 文件系统
1 基本概念1.1 文件系统和文件文件系统: 一种用于持久性存储的系统抽象 在存储器上:组织、控制、导航、访问和检索数据 大多数计算机系统包含文件系统 个人电脑、服务器、笔记本电脑 iPod、 Tivo /机顶盒、手机/掌上电脑 Google 可能是由一个文件系统构成的 文件:文件系统中一个单元的相关数据在操作系统中的抽象1.1.1 文件系统的功能分配文件磁盘空间 管理文件块(哪一块属于哪一个文件) 管理空闲空间(哪一块是空闲的) 分配算法(策..原创 2020-07-19 21:05:31 · 506 阅读 · 0 评论