![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
操作系统
文章平均质量分 76
qq_20846769
这个作者很懒,什么都没留下…
展开
-
操作系统-进程互斥
信号量实现进程互斥信号量代表系统中的某种资源数量。信号量的初始值是资源数量。申请资源时,信号量减1;当信号量小<=0,阻塞当前要申请资源的进程。使用完,毕释放资源时,信号量加1。唤醒阻塞队列里的进程。wait对应下面的P操作, signal对应下面的V操作生产者消费者问题需要一个表示空闲缓冲区和一个产品数量的信号量实现同步操作。同时需要一个互斥信号量(一般为1)使得同一时刻只有一个进程能够访问缓冲区。注意: 互斥信号量在同信号量P操作(加锁)之后,不能颠倒顺序,否则可能会死锁。转载 2021-11-02 20:43:42 · 692 阅读 · 0 评论 -
操作系统-进程调度
一、进程调度按照某种算法,在就绪队列中选择一个进程为其分配处理机。1.1 进程调度时机需要进行进程调度与切换的情况当前运行的进程主动释放处理机:进程正常终止运行过程中发生异常而终止进程主动请求阻塞(如等待I/O)当前运行的进程被动释放处理机:分配给进程的时间片用完有更紧急的事情需要处理(中断)有更高优先级的进程进入就绪队列不能进行进程切换的场景处理中断的过程进程在操作系统内核临界区在原子操作过程中1.2 进程调度的方式1)非抢占式:只允许进程主动地释放处理机,转载 2021-11-02 20:43:06 · 464 阅读 · 0 评论 -
操作系统-磁盘调度算法
一、一次磁盘读写所需要的的时间以机械硬盘为例,一次磁盘读写所需要的的时间由三部分组成:寻道时间、延迟时间、传输时间。寻道时间:磁头移动到数据所在磁道所需的时间。每个磁道耗时m,总共需要跨越的磁道数n,耗时为Ts = s + m*n.(s为机械臂启动时间)延迟时间:旋转磁头定位到数据所在扇区的时间。设r为磁盘转速,则延迟平均时间为 (1/r)*(1/2)传输时间:从磁盘读出或者写入磁盘所需的时间。设每个磁道上的字节数为N.则所花时间为(1/r)*(b/N)二、磁盘调度算法传输时间和延迟时间都转载 2021-10-21 22:54:28 · 1604 阅读 · 0 评论 -
操作系统-文件存储空间管理
一、存储空间的划分与初始化操作系统可以将一块磁盘划分为不同的逻辑盘(C盘/D盘),每个逻辑区分为目录区和文件取二、存储空间管理方法存储空间管理方法要从以下几个方面考量,1)用什么方法管理和组织空闲块,2)如何分配磁盘块,3)如何回收磁盘块。主要有以下几种方式1)空闲表法2)空闲链表法(空闲盘区链、空闲盘块链)3)位示图法4)组成链接法2.1 空闲表法创建一张表,有两个字段,分别表示第一个空闲盘块和一共有几个空闲盘块。适用于连续分配。分配:可结合内存分配中的首次适应法、最佳适应和最转载 2021-10-20 19:42:25 · 767 阅读 · 0 评论 -
文件管理-文件结构
一、 文件的逻辑结构文件的逻辑结构分为无结构文件和有结构文件。有结构文件分为顺序文件、索引文件和索引顺序文件。逻辑结构:是指用户看起来该文件是如何组织的。物理结构:是指在操作系统看来,文件在外存中如何存放。无结构文件:由字节流或者字符流组成,无明显的逻辑结构。如txt文本文件。有结构文件:由记录组成,分为定长记录、可变长记录。顺序文件...原创 2021-09-28 22:51:46 · 3276 阅读 · 0 评论 -
操作系统-内存管理4(虚拟内存)
一、虚拟内存由于局部性原理,在程序装入内存时,将很快用到的那一部分装到内存中,暂时不用的留在外存。在程序执行过程中,当所访问的信息不存在时,有操作系统负责将所需的信息由外存调入内存。若内存不足,由操作系统将暂时不使用的信息交换到外存。在操作系统的管理下,在用户看来有一个比实际内存大得多的内存,这就是虚拟内存。特点:多次性:无需在作业运行时一次调入内存,而是被允许多次调入内存。对换性:在作业运行过程中无需常驻内存,而是在运行时调入调出。虚拟性:从逻辑上扩充了内存的容量,使用户看到的内存远大于实转载 2021-09-15 19:29:11 · 308 阅读 · 0 评论 -
操作系统-内存管理3(非连续内存分配)
一、基本概念页帧:连续内存分配存在内部碎片或者外部碎片,可以考虑将物理内存分为一个个大小固定的分区,叫做页帧(或者页框)。页帧的编号叫做页帧号(或者页框号,内存块号),页帧号从0开始。页面:将用户进程的地址空间也分为和页帧大小相同的一个个区域,称为页或者页面。最后一个页面可能不足页帧大小。将每一个页面分配到不同的页帧中,就是非连续分配。页表:页表用来保存逻辑页面和页帧的对应关系,页表的每一项叫做叶表项,叶表项由页号和块号(页帧号)组成。比如1号页面保存在6号页帧中,2号页面好存在8号页帧中。页面转载 2021-09-12 22:47:32 · 2002 阅读 · 0 评论 -
操作系统-内存管理1(概述)
计算机硬件的组成计算机是由CPU、内存、I/O设备、其他外设、总线等组成。CPU又包括运算器、控制器、寄存器、缓存、存储管理单元(MMU)等几部分组成。操作系统对内存管理要提供哪些功能抽象,逻辑地址空间。使应用程序不用考虑程序或者指令存在内存或者硬盘的具体位置,只需要知道一个逻辑地址即可。对应的物理地址由操作系统去查找。保护,独立的地址空间。程序在内存中运行在各自的独立内存中。共享,访问共享内存。各个程序都可以访问共享空间虚拟化,更多的地址空间。在内存不足时,可以将硬盘的一部分虚拟成内存,转载 2021-09-11 21:06:19 · 93 阅读 · 0 评论 -
操作系统-内存管理2(连续内存分配)
内存分配分为连续内存分配和非连续内存分配。连续内存分配是指为进程分配的内存空间必须是一个连续的区间。一、连续内存分配连续内存分配分为单一连续分配、固定分区分配和动态分区分配。前两种分配方式会产生内部碎片,后一种会产生外部碎片。内部碎片:进程所属内存区域内产生的碎片外部碎片:内存中某些空闲区域太小而难以利用1.1 单已连续分配:同一时刻,用户区内存中只有一个进程,只支持单道程序。无外部碎片,有内部碎片(应为此时整个用户区都属于该进程)1.2 固定分区分匹配:支持多道进程,内存分为若干个大小转载 2021-09-11 21:04:06 · 711 阅读 · 0 评论 -
操作系统的启动
操作系统的启动过程:机器上电,首先执行固化在内存硬件中的一段程序BIOS(大小512字节),BIOS主要负责上电自检,也就是检测显卡、鼠标、键盘、硬盘等硬件是否可用。如果可用,BIOS开始加载bootloader;bootloader是位于系统盘的第一块存储区域,主要用于将OS加载到内存。然后将CPU的控制权交给OS(也就是跳到OS的起始地址去执行)中断、异常和系统调用操作系统接管CPU后,可以执行一系列的功能,包括运行用户程序、响应外设等。这些操作都依赖于中断、异常或者系统调用。中断来自原创 2021-09-04 21:37:24 · 117 阅读 · 0 评论