操作系统
猫咪钓鱼
相信美好的一切,批判所有的邪恶。
展开
-
交换技术、覆盖技术、虚拟存储技术的区分
覆盖技术对于一个进程,不需要一开始就把程序的全部指令和数据都装入内存再执行。程序划分为若干个功能上相对独立的程序段,按照程序逻辑结构让那些不需要同时执行的程序段共享同一块内存区,当有关程序段的先头程序段已经执行结束后,再把后续程序段从外存调入内存覆盖前面的程序段把程序按照其自身逻辑结构,划分为若干个功能上相对独立的程序模块,那些不会同时执行的模块共享一块内存区域,按时间先后来运行。覆盖技术必须是同一进程里的几个独立的程序段进行相互覆盖,也就是这几个独立的程序段无互相调用关系,互相无关。因此程序员必须给出程原创 2020-07-04 10:27:25 · 1732 阅读 · 0 评论 -
管道、通道、管程的区别
1、 管道说法一:一个程序的输出可以作为另一个程序的输入。这样可以将多个程序串在一起,将简单的任务组合,处理更大更复杂的问题,unix中有这种技术。说法二:把第一条命令的输出作为第二条命令的输入,如此进行连接的技术。2、通道与I/O有关。通道命令 通道命令规定设备的操作,每一种通道命令规定了设备的一种操作,通道命令一般由命令码/数据/主存地址/传送字节个数/标志码等部分组成。通道程序 是一组通道命令规定通道执行一次输入输出操作应做的工作,这一组命令就组成了一个通道程序。3、管程说原创 2020-07-04 09:56:40 · 5757 阅读 · 0 评论 -
为什么说多道程序概念得到了中断和通道技术的支持?
多道程序设计的概念多道程序设计是在计算机内存中同时存放几道相互独立的程序,使它们在管理程序控制之下,相互穿插的运行。 两个或两个以上程序在计算机系统中同处于开始或结束之间的状态。这就称为多道程序技术运行的特征:多道、宏观上并行、微观上串行。为什么说多道程序概念得到了中断和通道技术的支持?采用多道程序设计减少了CPU时间的浪费,增加了系统吞吐量,提高了系统的效率。为什么引入多道程序呢?说白了就是为了提高系统的吞吐量和效率。 在多道程序系统中,能做到单处理机多程序并发,但是,当存在I/O任务时,CPU要去原创 2020-07-04 09:40:40 · 3075 阅读 · 0 评论 -
磁盘调度 FCFS、SSTF、SCAN 算法c++实现(大学生专用)
三个算法按顺序是:1、先来先服务 FCFS2、最短寻道时间优先法 SSTF3、扫描法 SCAN原创 2020-06-24 17:53:49 · 1945 阅读 · 0 评论 -
库函数、系统调用和内核函数的区别
三者的层次关系:原创 2020-06-17 21:58:02 · 414 阅读 · 0 评论 -
带缓冲的IO和不带缓冲的IO
文件操作中有两套函数,一套是C库中的 fopen()、fread()…,还有一套是linux的系统调用 open()、read()… 那么既然都是实现文件操作,那么它们有什么不同呢?或许在网上我们会查到:fopen()、fread()…是缓冲系统的调用,open()、read()…是非缓冲系统的调用。那么这的 缓冲 到底是什么意思呢?先上代码:(1)C库函数调用#include <sys/types.h>#include <stdio.h>#include <原创 2020-06-14 01:13:45 · 281 阅读 · 0 评论 -
fork()详解
fork()????原创 2020-05-16 21:26:54 · 266 阅读 · 0 评论 -
通过一道题目来理解互斥和同步
文章目录前言题目:判断下列同步问题的算法是否正确?若不正确,如何改正?解答与剖析第一小问:同步问题解答剖析第二小问:互斥问题解答剖析前言在进程的学习中,互斥和同步是最重点的内容,但由于其过于抽象,繁杂的信号量的使用令同学们望而生畏,本博客的目的是想通过对一道题目的解析来探究互斥与同步最本质的特性。由于博主水平有限,还恳请大家批评指正。题目:判断下列同步问题的算法是否正确?若不正确,如何改正?解答与剖析第一小问:同步问题解答上图中的算法是有误的。假如进程A先运行,并且待存入缓冲区的信息数量原创 2020-05-16 02:47:30 · 1386 阅读 · 0 评论