OS
Irish_Moonshine
沐月
展开
-
HUST OS 9.0 文件系统【自学笔记】
9.0文件系统9.1文件系统概念9.2文件物理结构9.3FAT文件系统9.4文件存储和目录9.1文件系统概念文件由若干信息项有序构成信息项可以使字节,可以是结构化数据分类标准1:文件的用途系统文件 库文件 用户文件~2:文件的操作权限只读文件 读写文件 不保护文件~3:文件的性质普通文件 目录文件 设备文件*目录文件:记录目录里面文件列表信息文件名,文件存放地址,文...原创 2019-06-07 13:12:47 · 170 阅读 · 0 评论 -
HUST OS 6.1 进程调度概念【自学笔记】
6.1 进程调度概念进程调度目标:1.响应速度尽可能快2.进程处理的时间尽可能短3.系统吞吐量尽可能大4.资源利用率尽可能高5.对所有进程要公平6.避免饥饿7.避免死锁平均周转时间t=(t1+t2…tn)/n;带权周转时间w=t/tr;tr:进程的运行时间意义:表明在系统中的相对停留时间...原创 2019-06-08 07:59:23 · 151 阅读 · 0 评论 -
HUST OS 5.3 死锁的预防策略【自学笔记】
5.3死锁的必要条件互斥条件:进程互斥使用资源,资源具有独占性不剥夺条件:进程在访问完资源前不能被其他进程强行剥夺部分分配条件:进程边运行边申请资源,临时需要临时分配区别于:全部分配环路条件:多个进程构成环路,已占用的资源被前一个进程申请,已申请的资源被后一个进程占用.-解决方案:1.预先静态分配法.把进程所需要的一切资源都供给.缺点:执行可能被延迟(资源缺一个)\...原创 2019-06-08 08:00:08 · 145 阅读 · 0 评论 -
HUST OS 5.1-5.2 死锁的概念与起因【自学笔记】
5.0 死锁5.1 死锁的概念哲学家就餐问题进程阻塞,全部处于等待状态,永远不会结束.5.2 死锁的起因系统资源有限资源数目不足,进程对资源的竞争而产生死锁.并发进程的推进顺序不当进程请求资源何释放资源的顺序不当,导致死锁,不正确的P-V操作也可能会带来死锁,生产者与消费者问题...原创 2019-06-08 08:00:16 · 133 阅读 · 0 评论 -
HUST OS 4.4 临界区和锁【自学笔记】
4.4 临界区和锁4.4.1 临界区与临界资源临界资源:一次只允许一个进程独占访问(使用)的资源[Critical Resource]*临界区:进程中访问临界资源的程序段[Critical Section]在并发环境下面,多个程序同时使用了同一个全局可见变量,会出现随机的不稳定的结果。解决方案:程序设定一个特定区域不让两个程序同时进入,只能先后进入。【临界区】【临界资源】临界...原创 2019-06-08 08:00:48 · 536 阅读 · 0 评论 -
HUST OS 4.5 同步和P-V操作【自学笔记】
4.5同步和P-V操作4.5.1 同步和互斥的概念4.5.2 P-V操作概念4.5.3 P-V操作解决互斥问题4.5.4 P-V操作解决同步问题4.5.5 经典同步问题4.5.1进程同步和互斥的概念进程的互斥关系:多个进程由于共享了独占性资源,必须协调各进程对资源的存取顺序:确保没有任何两个或以上的进程同时进行存取操作。互斥和资源共享相关资源:临界资源存取操作区域:临界区进...原创 2019-06-08 08:00:43 · 238 阅读 · 0 评论 -
HUST OS 4.6 Windows和Linux进程同步机制【自学笔记】
4.6 windows|Linux进程同步机制4.6.1 临界区机制(CRITICAL_SECTION)等待函数WaitForXXXobject;(XXX:Multiple|Single)等待目标对象变成有信号的状态就返回当多个线程同时在临界区就绪的时候,需要对临界区进行一个互斥的访问.P(S) //进入临界区V(S) //退出临界区互斥量 Handle信号量 Sema...原创 2019-06-08 08:00:34 · 265 阅读 · 0 评论 -
HUST OS 4.7 进程通信【自学笔记】
4.7进程通信4.7.1匿名管道通信(仅能用于父子进程或兄弟进程间的通信)任务:把一个CMD控制台程序改成windows窗口程序约束条件:必须利用源程序,但无源码可用1.管道定义pipe程序A(写数据)—>管道—>程序B(读数据)(1)由父进程(A)创建管道:CreatePipe(Handle W,Handle R),有读/写2个句柄(2)由父进程(A)创建子进程...原创 2019-06-08 08:00:28 · 182 阅读 · 0 评论 -
HUST OS 3.3 用户界面【自学笔记】
3.3 用户界面3.3.1 用户界面概念3.3.2 Shell脚本编程3.3.1 操作系统用户界面用户界面的定义:OS提供给用户控制计算机的机制,又称用户接口。用户界面的分类:操作界面系统调用(System Call ,系统功能调用,程序界面)图形用户接口( GUI , Graphic User Interface)窗口、图标、菜单、按钮、鼠标(消息,事件)键盘命令(COMM...原创 2019-06-08 08:01:26 · 161 阅读 · 0 评论 -
HUST OS 3.4 系统调用【自学笔记】
3.4 系统调用系统调用(System Call,系统功能调用,程序界面)操作系统内核为应用程序提供的服务/函数系统调用的特点:1.一般涉及核心资源或硬件的操作2.运行于核态3.每一个系统调用具有唯一的编号:ID4.调用过程会产生中断,自愿中断DOS利用INT 21h中断实现系统调用Linux利用INT 80h中断实现系统调用特点:利用EAX寄存器存放系统调用的编号隐式...原创 2019-06-08 08:01:19 · 461 阅读 · 0 评论 -
HUST OS 2.1 操作系统逻辑结构【自学笔记】
第2章 操作系统逻辑结构2.1 操作系统的逻辑结构2.2 CPU的态2.3 中断机制2.1 操作系统的逻辑结构逻辑结构:OS的设计和实现思路种类:1.整体式结构2.层次式结构3.微内核结构(Client/Server 结构)整体式结构以模块为基本单位构建1.模块设计、编码和调试独立2.模块调用自由3.模块通信多以全局变量形式完成缺点信息传递随意,维护和更新困难。...原创 2019-06-09 10:32:45 · 242 阅读 · 0 评论 -
HUST OS 2.2 CPU的态【自学笔记】
2.2 CPUCPU 的态(Mode)CPU 的工作状态对资源和指令使用权限的描述态的分类:核态能够访问所有资源和执行所有指令管理程序/OS内核用户态仅能访问部分资源,其他资源受限用户程序管态介于核态和用户态之间用户态和核态之间的转换用户态向核态转换:1.用户请求OS提供服务2.发生中断3.用户进程产生错误(内部中断)4.用户态企图执行特权指...原创 2019-06-09 10:32:39 · 190 阅读 · 0 评论 -
HUST OS 2.3 中断机制【自学笔记】
2.3 中断机制中断定义:指CPU对突发的外部事件的反应过程或机制。CPU收到外部信号(中断信号)后,停止当前工作,转去处理该外部事件,处理完毕后回到原来工作的中断处(断点)继续原来的工作。引入中断的目的:1.实现并发活动2.实现实时处理3.故障自动处理中断概念中断源和中断类型引起系统中断的事件称为中断源。中断类型强迫性中断:程序没有预期:I/O,外部中断自愿中断...原创 2019-06-09 10:32:34 · 609 阅读 · 0 评论 -
HUST OS 6.2 进程调度算法【自学笔记】
6.2 进程调度算法1.先来先服务调度(First Come First Serve)算法:特点:容易实现,效率不高缺点:只考虑作业的等候时间,而没考虑运行时间的长短.本算法不利于短作业(来得晚的短作业,无法短时间解决).2.短作业优先调度算法(Short Job Firtst)算法特点特点:容易实现,效率不高缺点:忽视了作业的等待时间,一个早来但是很长的作业将会很长时间得不到调...原创 2019-06-08 07:59:15 · 233 阅读 · 0 评论 -
HUST OS 4.3 线程【自学笔记】
4.3 线程(Tread)4.3.1 概念线程是可由CPU直接运行的实体;一个进程可以创建多个线程多个线程共享CPU可以实现并发运行单线程程序:整个进程只有一个线程.Windows缺省只有一个线程(主线程,main线程)多线程程序:整个进程至少有2个进程.主线程和至少一个用户线程4.3.2 线程技术应用场景1.程序的多个功能需要并发运行2.提高窗口程序的交互性后台计算的特点...原创 2019-06-08 08:00:58 · 141 阅读 · 0 评论 -
HUST OS 4.2 进程控制【自学笔记】
4.2 进程控制4.2.1 进程控制的概念:4.2.2 windows进程控制4.2.3 Linux进程控制4.2.1 进程控制的概念:在进程生存全期间,对其全部行为的控制四个典型的控制行为进程创建创建一个空白PCB获得并赋予进程标识符ID为进程分配空间初始化PCB插入相应的进程队列(默认就绪)进程撤销撤销一个指定的进程收回进程所占有的资源,撤销该进程的PCB...原创 2019-06-08 08:01:04 · 271 阅读 · 0 评论 -
HUST OS 8.0 设备管理【自学笔记】
第八章 设备管理8.1 设备管理概念8.2 Spooling系统8.3 Linux模块机制,Linux驱动程序,Windows驱动程序8.1 设备管理概念1.按照交互对象分类2.按交互方向分类3.按外设特性分类设备管理的主要功能1.设备分配功能;2.设备映射:将逻辑设备映射到物理设备1)物理设备:I/O系统中实际安装的设备,ID或字符串2)逻辑设备:应用软件使用的设备,...原创 2019-06-07 13:18:47 · 164 阅读 · 0 评论 -
HUST OS 7.4 Intel CPU 与 Linux 内存管理【自学笔记】
7.4 Intel CPU与Linux内存管理7.4.1 Intel CPU物理结构7.4.2 Intel CPU段机制7.4.3 Linux页面机制7.4.4 Linux对段的支持7.4.1 Intel CPU物理结构x86的实模式(Real Mode)保护模式(Project Mode)x86 CPU架构下的3种地址:逻辑地址:汇编语言(段:偏移)线性地址:由逻辑地址转...原创 2019-06-07 13:22:14 · 215 阅读 · 0 评论 -
HUST OS 7.3 虚拟内存管理【自学笔记】
7.3 虚拟内存管理7.3.1 页式虚拟内存管理概念7.3.2 页表和页式地址映射7.3.3 快表技术和页面共享技术7.3.4 缺页中断7.3.5 页面淘汰策略7.3.6 缺页因素与页式系统缺点7.3.7 段式和段页式虚拟存储7.3.1 页式虚拟内存管理概念目的:使得大的程序能在较小的内存中运行;使得多个程序能在较小的内存中运行(/能容纳下);使得多个程序并发运行时地址不冲...原创 2019-06-07 13:25:48 · 293 阅读 · 0 评论 -
HUST OS 7.2 物理内存管理【自学笔记】
7.2物理内存管理7.2.1分区内存管理单一区存储管理分区存储管理固定分区动态分区单一存储管理(不分区存储管理){定义:用户区不分区,完全被一个程序占用;例如:DOS优点:简单,不需要复杂硬件支持,适用于单用户单任务OS缺点:程序运行会占用整个内存.}分区存储管理:分类:固定分区,动态分区固定分区:每个分区的大小位置都固定,系统运行期间不再重新划分.分区表:记...原创 2019-06-07 13:35:12 · 288 阅读 · 0 评论 -
HUST OS 7.1.5 内存碎片【自学笔记】
7.2.5 内存碎片1.过小的空闲区,难实际利用2.内存碎片会降低内存有效利用率动态分区的缺点:1.容易产生内存碎片:内存反复分配和分割2.最佳适应法最容易产生碎片.’解决办法1:规定门限值分割空闲区时,若剩余部分小于门限值,则此空闲区不进行分割,而是全部分配给用户.解决方法2:内存拼接技术将所有的空闲区集中在一起构成一个大的空闲区.内存拼接的时机:释放区回收的时候...原创 2019-06-07 13:37:15 · 290 阅读 · 0 评论 -
HUST OS 7.1.4 内存交换技术【自学笔记】
7.1.4 内存交换技术原理:内存不够时把进程写到磁盘(换出/Swap out)当进程要运行时再重新写回内存(换入/Swap in)交换技术的缺点:换入和换出增加CPU开销.交换单位太大(整个进程)需要考虑的问题:减少交换传送的信息量(模板/ 段)外存交换空间的管理方法程序换入时的地址重定位...原创 2019-06-07 13:38:36 · 402 阅读 · 0 评论 -
HUST OS 7.1.3 内存覆盖技术【自学笔记】
7.2.3 内存覆盖技术覆盖_Overlay常驻区:被某段单独且固定地占用,可划分多个.覆盖区:能被多段共用(覆盖),可划分多个.覆盖的缺点编程复杂:程序员划分程序模块并确定覆盖关系程序执行时间长:从外存装入内存耗时...原创 2019-06-07 13:40:41 · 264 阅读 · 0 评论 -
HUST OS 7.1.1-7.1.2 内存管理功能【自学笔记】
7.1.1 内存管理功能(一)储存器功能需求:容量足够大 速度足够快 信息永久保存 多道程序并行多道程序并行带来的问题共享:代码和数据共享,节省内存保护:不允许内存中的程序相互间非法访问三级储存体系:Cache(快小贵)+内存+辅存(慢大廉)存储管理的功能:(1)地址映射:把程序中的地址(虚拟地址/虚地址/逻辑地址)变成内存的真实地址的过程地址重定位,地址重映射...原创 2019-06-07 13:44:27 · 131 阅读 · 0 评论 -
HUST OS 6.3 Linux进程调度【自学笔记】
6.3Linux进程调度普通进程1.采用动态优先级来调度2.调度程序周期性地修改优先级(避免饥饿)实时进程:1.采用静态优先级来调度;2.由用户预先指定,以后不会改变.静态优先级:进程创建时指定或用户修改动态优先级:进程运行期间可以按照调度策略改变非实时进程采用动态优先级,由调度程序计算只要进程占用CPU,优先级就随着时间流逝而不断减小task_struct co...原创 2019-06-08 07:59:33 · 198 阅读 · 0 评论 -
HUST OS 3.1 操作系统启动过程【自学笔记】
第3章 操作系统用户界面3.1 操作系统启动过程3.2 操作系统生成3.3 用户界面3.4 系统调用3.1 操作系统启动过程3.1.1 BIOS和主引导记录MBR3.1.2 操作系统启动过程3.1.1 BIOS和主引导记录MBR实模式和保护模式实模式(实地址模式,REAL MODE)1.程序按照8086寻址方式去访问0h——FFFFFh(1MB)空间2.寻址方式:物...原创 2019-06-08 08:04:39 · 274 阅读 · 0 评论 -
HUST OS 3.2 操作系统生成【自学笔记】
3.2 操作系统生成操作系统的生成满足特定硬件环境和用户需要,组装和构建操作系统过程。操作系统生成的主要步骤1.根据硬件环境/用户需求配置功能模块和构造参数2.构建(build)OS的映像。操作系统的生成前提1.操作系统由可拆装模块构成2.有交互式配置工具3.有映像构建(build)工具Linux操作系统的生成1.获取Linux内核的源代码2.选择和启动内核...原创 2019-06-08 08:04:33 · 187 阅读 · 0 评论 -
HUST OS 4.1 进程概念【自学笔记】
4.1 进程概念4.11 进程基本概念4.12 进程状态4.13 进程控制块4.11 进程基本概念特点:OS会在任何时候暂停或继续一个程序的运行。程序运行在并发环境中的问题:1.运行结果不确定2.结果不可再现(程序运行被干扰)解决方案:对运行过程施加相互制约进程:描述和管理程序的“运行过程”进程是程序在某个数据集合上的一次运行活动数据集合:软/硬件环境,多个进程共存...原创 2019-06-08 08:01:10 · 162 阅读 · 0 评论 -
HUST OS 1.4 分时技术与分时操作系统【自学笔记】
1.4 分时技术与分时操作系统多道批处理系统的缺点:1.作业处理时间长;2.交互能力差;3.运行过程不确定;60年代硬件的两个重大发展:中断技术CPU收到外部信号(中断信号)后,停止当前工作,转去处理该外部事件,处理完毕后回到原来工作的中断处(断点)继续原来的工作。通道技术专门处理外设与内存之间的数据传输的处理机。分时操作系统1.事务性任务的涌现交互性高响...原创 2019-06-09 11:02:45 · 387 阅读 · 0 评论