操作系统
浩丶木
这个作者很懒,什么都没留下…
展开
-
文件目录概述
目录本身就是一种有结构文件,由一条条记录组成。每条记录对应一个放在该目录下的文件。目录结构单级目录结构:早期操作系统并不支持多级目录,整个系统中只建立一张目录表,每个文件占一个目录项。单级目录实现了按名存取,但是不允许文件重名。在创建一个文件的时候,需要先检查目录表中有没有重名文件,确定不重名之后才能允许建立文件,并将新文件对应的目录项插入到目录表中。两级目录结构:分为主文件目录和用户文件目录多级目录结构{又称为树形目录结构}:可以方便地对文件进行分类,层次结构清晰,也能够更有效地进行.原创 2021-08-14 09:47:44 · 1016 阅读 · 0 评论 -
虚拟内存技术
局部性原理时间局部性:如果执行了程序中的某条指令,那么不久后这条指令很可能再次执行;如果某个数据被访问过,不就之后该数据很可能再次被访问。空间局部性:一旦程序访问了某个存储单元,在不久之后,其附近的存储单元也很有可能被访问。虚拟内存的定义和特征基于局部性的原理,在程序装入的时候,可以将程序中很快会用到的部分装入内存,暂时用不到的部分留在外存,就可以让程序开始执行。在程序执行过程当中,当访问的信息不在内存的时候,由于操作系统负责将所需要的信息从外存调入内存,然后继续执行程序。若内存空间不够,由操作原创 2021-07-28 10:16:50 · 159 阅读 · 0 评论 -
分页存储管理
分页存储管理将内存空间分为一个个大小相等的分区,每个分区就是一个页框,或者页帧,内存块。每个内存块有一个编号,即页框号,该号从零开始。将用户进程的地址空间分为与页框大小相等的一个个区域,称为页或页面。每个页面也有一个编号,即页号,该号也是从零开始的。操作系统以页框为单位为各个进程分配内存空间。进程的每个页面分别放入一个页框中。进程的页面与内存的页框有一一对应的关系。基本地址变换机构页表为了能知道进程的每个页面在内存中存放的位置,操作系统要为每个进程建立一张页表。1.一个进程对应一张页表2.原创 2021-07-27 12:17:56 · 197 阅读 · 0 评论 -
内存空间的分配与回收
连续分配管理方式:单一连续分配内存被分为系统区和用户区。系统区通常位于内存的低地址部分,用于存放操作系统相关数据;用户区用于存放用户进程相关数据。但是内存中只能有一道用户程序,用户程序独占整个用户区的空间。固定分区分配将整个用户空间划分为若干个固定大小的分区,在每个分区中只装入一到作业,这样就形成了最早的,最简单的一种可运行多道程序的内存管理方式。分区大小相等:缺乏灵活性,但是适合用于用一台计算机控制多个相同对象的场合分区大小不相等:增加了灵活性,可以满足不同大小进程需求。但是当用户程序太大原创 2021-07-23 20:05:58 · 1637 阅读 · 1 评论 -
内存空间的扩充
覆盖技术将程序分为多个段。常用的段常驻内存,不常用的段在需要的时候调入内存。内存中分为一个固定区和若干个覆盖区。需要常驻内存的段放在固定区中,调入之后就不在调出,不常用的段放在覆盖区,需要用到的时候调入内存,用不到的时候调出内存。交换技术内存空间紧张的时候,系统将内存中及某些进程暂时换出外存,把外存中某些已经具备运行条件的进程换入内存。...原创 2021-07-23 19:32:44 · 119 阅读 · 0 评论 -
内存的基础知识
内存是用于存放数据的硬件。程序执行之前需要先放到内存中才能被cpu处理。每一个地址对应一个存储单元,,每个存储单元根据计算机的类型(按字节编址,按字长编址)来形成存储单元的大小。程序的运行装入的三种方式:1.绝对装入,在编译的时候,如果知道程序将放到内存中的哪个位置,编译程序将产生绝对地址的目标代码。装入程序按照装入模块中的地址,将程序和数据装入内存。2.静态重定位:编译连接之后的装入模块的地址都是从0开始的,指令中使用的地址,数据存放的地址都是相对于起始地址而言的逻辑地址。可根据内存的当前的情原创 2021-07-23 19:15:21 · 250 阅读 · 2 评论 -
文件的管理
文件的属性文件名:同一个目录下不允许有重名文件标识符:操作系统用于区分各个文件一种内部名称类型:文件的类型位置:文件的存放的路径,在外存中的地址创建时间,上次修改时间,文件所有者的信息保护信息:对文件进行保护的访问控制信息文件的组织文件的存储操作系统以块为单位为文件分配存储空间,因此即使一个文件大小只有10B,但它依然需要1KB的磁盘块、外存中的数据读入内存时同样以块为单位。...原创 2021-07-23 10:18:51 · 70 阅读 · 0 评论 -
死锁的处理-预防死锁
1.破坏互斥条件SPOOLing技术:把独占设备在逻辑上改造成共享设备。但是并不是所有的资源都可以改造成可共享使用的资源。并且为了系统安全,很多地方还必须保护这种互斥性。因此,很多时候都无法破坏互斥条件。2.破坏不剥夺条件方案一:当某个进程请求新的资源得不到满足的时候,他必须立即释放保持的所有资源,待以后需要时再重新申请。也就是说,及时某些资源尚未使用完,也需要主动释放,从而破坏了不可剥夺条件方案二:当某个进程需要的资源被其他进程所占有的时候,可以由操作系统协助,将想要的资源强行剥夺。这种方式一般原创 2021-07-21 19:19:37 · 144 阅读 · 0 评论 -
死锁的现象
在并发环境下,各进程因竞争资源而造成的一种互相等待对方手里的资源,导致各进程都阻塞,都无法向前推进的现象,就是死锁。如果有死锁现象,那至少有两个或两个以上的进程同时发生死锁。饥饿:由于长期得不到想要的资源,某进程无法向前推进的现象,可能只有一个进程发生饥饿。死循环:某进程执行过程中一直跳不出某个循环的现象。死锁产生的条件互斥条件:只有对必须互斥使用的资源的争抢才会导致死锁。不剥夺条件:进程所获得的资源在未使用完之前不能由其他进程强行夺走,只能主动释放。请求和保持条件:进程已经保持了至少一个资源原创 2021-07-21 19:00:19 · 499 阅读 · 0 评论 -
调度与算法
CPU利用率指CPU忙碌的时间占总时间的比例系统吞吐量单位时间内完成作业的数量周转时间指从作业被提交给系统开始,到作业完成为止的这段时间间隔它包括四个部分:作业在外存后备队列上等待作业调度的时间,进程在就绪队列上等待进程调度的时间,进程在CPU上执行的时间,进程等待IO操作完成的时间。等待时间指进程或者作业处于等待处理机状态时间之和,等待时间越长,用户满意度越低。对于进程来说:等待时间就是指进程建立后等待被服务的时间之和,在等待io完成的期间其实进程也是在被服务的,所以不计入等待原创 2021-07-21 10:07:01 · 737 阅读 · 0 评论 -
处理机调度
调度:当有一堆任务要处理的时候,但由于资源优先,这些事情没法同时处理。这就需要确定某种规则来决定处理这些任务的顺序。在多道程序系统中,进程的数量往往是多余处理机的个数的,这样不可能同时并行地处理各个进程。处理机调度,就是从就绪队列中按照一定的算法选择一个进程并将处理机分配给它运行,以实现进程的并发执行。调度的三个层次高级调度:按照一定的原则从外存上处于后背队列的作业中挑选一个或者多个作业,给他们分配内存等必要资源,并建立相应的进程,以使它获得竞争处理机的权利。引入了虚拟存储技术之后,可将暂时不能运原创 2021-07-20 19:35:52 · 66 阅读 · 0 评论 -
操作系统-中断
中断机制的诞生为了解决系统资源利用率低的问题,引入了中断机制,一旦发生了中断就意味着需要操作系统接入,开展管理工作。中断的概念和作用1.当中断发生的时候,cpu立即进入核心态2.当中断发生后,当前运行的进程暂停运行,并由操作系统内核对中断进行处理,对于不同的中断信号,会进行不同的处理。中断可以是cpu从用户态切换为核心态,使操作系统获得计算机的控制权。有了中断,才能实现多道程序并发执行。而且中断是用户态切换成核心态的唯一途径,从核心态切换到用户态是通过执行一个特权指令,将程序状态字的标志位设置为用原创 2021-07-20 14:51:12 · 1236 阅读 · 0 评论 -
进程同步与进程互斥
同步也称直接制约关系,他是指为完成某种任务而建立的两个或多个进程,这些进程因为需要在某些位置上协调他们的工作次序而产生的制约关系。进程间的直接制约关系就是源于他们之间的相互合作。把一个时间段内只允许一个进程使用的资源称为临界资源,对临界资源的访问,必须互斥地进行。互斥,亦称间接制约关系。进程互斥指当一个进程访问某临界资源时,另一个想要访问该临界资源的进程必须等待 。当前访问临界资源的进程访问结束,释放该资源之后,另一个进程才能去访问临界资源。为了实现对临界资源的互斥访问,同时保证系统整体性能,需要遵原创 2021-06-16 15:56:59 · 135 阅读 · 0 评论 -
线程的属性和实现方式
可以理解成为轻量级的进程,可增加并发度,减少并发带来的开销,是程序执行流的最小单元。一个标准的线程由线程ID,当前指令指针(PC),寄存器集合和堆栈组成。线程的属性:线程是处理机调度的单位,进程是资源分配的单位多cpu计算机中,各个线程可占用不用的cpu每个线程都有一个线程ID,线程控制块线程也有就绪,阻塞,运行三种基本状态线程几乎不拥有系统资源同一进程的不同线程间共享进程的资源由于共享内存地址空间,同一进程中的线程间通信甚至无需系统干预同一进程中的线程切换,不会引起进程切换不同进程中的原创 2021-06-15 21:59:46 · 172 阅读 · 0 评论 -
进程的状态
三种基本状态:1.运行态:占有cpu,并在cpu上运行2.就绪态:已经具备运行条件,但由于没有空闲cpu,而暂时不能运行3.阻塞态:因等待某一时间而暂时不能运行另外两种状态:创建态:进程正在被创建,操作系统为进程分配资源,初始化PCB终止态:进程正在从系统中撤销,操作系统会回收进程拥有的资源,撤销PCB状态的转换...原创 2021-06-15 17:11:15 · 84 阅读 · 0 评论 -
进程的定义
程序段,数据段,PCB三部分组成了进程实体。一般情况下,我们把进程实体就简称为进程。所谓的创建进程,实质上就是创建进程实体中的PCB;而撤销进程,实质上是撤销进程实体中的PCB。注:PCB是进程存在的唯一标志进程是程序的一次执行过程,是一个程序及其数据在处理机上顺序执行时所发生的活动。它是系统进行资源分配和调度的一个独立单位。程序段:程序代码存放在这里。数据段:程序运行时使用,产生的运算数据。如全局变量,局部变量,宏定义的常量就存放在数据段内。PCB:操作系统通过PCB来管理进程,因此PCB中应该原创 2021-06-15 17:00:47 · 88 阅读 · 1 评论 -
操作系统之系统调用
操作系统作为用户和计算机硬件之间的接口,需要向上提供一些简单易用的服务。主要包括命令接口和程序接口。其中,程序接口由一组系统调用组成。系统调用会使处理器从用户态进入核心态为什么要有系统调用这个功能?操作系统提供系统调用的功能。为了让用户进程使用某种共享资源不混用的情况,当某个用户进程要想使用某种共享资源的时候,只能通过系统调用向操作系统发送请求。操作系统会对各个请求进行协调管理。...原创 2021-06-14 22:17:19 · 550 阅读 · 0 评论 -
OS的运行机制和结构体系
指令:特权指令(如内存清零指令)非特权指令(如普通的运算指令)CPU如何判断当前是否可以执行特权指令?两种处理器的状态(由程序状态寄存器来存储处理器状态)1.用户态(目态),此时CPU只能执行非特权指令2.核心态(管态),此时特权指令和非特权指令都可以执行程序:内核程序:需要使用特权指令的程序应用程序:不需要使用特权指令的程序计算机系统的层次结构内核:是计算机上配置的底层软件,是操作系统最基本,最核心的部分。实现操作系统功能的那些程序就是内核程序内核体系结构...原创 2021-06-14 21:55:52 · 114 阅读 · 0 评论 -
操作系统的发展和分类
手工操作阶段用户独占全机,人机速度矛盾导致资源利用率极低。单道批处理系统(解决手工操作阶段的人机速度问题)引入脱机输入/输出技术,并监督程序负责控制作业的输入和输出。内存中仅能有一到程序运行,只有该程序运行结束之后才能调入下一道程序。CPU有大量的时间是在空闲等待I/O完成。资源利用率依然很低。多道批处理系统:(解决单道批处理系统的资源利用率低的问题)每次向内存中输入多道程序。用户响应时间长,没有人机交互功能(用户提交自己的作业之后就只能等待计算机处理完成,中间不能控制自己的作业执行)分时操作.原创 2021-06-14 21:38:22 · 60 阅读 · 0 评论 -
操作系统的特征
并发:指两个或多个事件在同一时间间隔内发生。这些事件宏观上是同时发生的。但微观上是交替发生的。并行:指两个或多个事件在同一时刻同时发生操作系统的并发性指计算机系统中同时存在着多个运行着的程序一个单核处理机同一时刻只能执行一个程序,因此操作系统会负责协调多个程序交替执行。共享:资源共享,是指系统中的资源可供内存中多个并发执行的进程共同使用。两种资源共享方式:互斥共享方式:系统中的某些资源,虽然可以提供给多个进程使用,但一个时间段内只允许一个进程访问该资源同时共享方式:系统中的某些资源,允许一个时原创 2021-06-14 21:24:55 · 65 阅读 · 0 评论 -
操作系统的概念
操作系统的概念操作系统是指控制和管理整个计算机系统的硬件和软件资源,并合理地组织调度计算机的工作和资源的分配,以提供给用户和其他软件方便的接口和环境,他是计算机系统中最基本的系统软件。没有任何软件支持的计算机称为裸机。在裸机上安装的操作系统,可以提供资源管理功能和方便用户的服务功能,将裸机改造成功能更强,使用更方便的机器。通常把覆盖了软件的机器称为扩充机器,又称为虚拟机。操作系统的功能和目标1.提供的功能:命令接口:联机命令接口:用户说一句,系统做一句;脱机命令接口:用户说一堆,系统做一堆。程序接原创 2021-06-14 21:00:39 · 54 阅读 · 0 评论