
操作系统
水能zai舟
每一次提交务必慎重,切勿基于样例解题。
展开
-
通俗理解并发和并行的区别
转载http://blog.51cto.com/3961409/759708感谢博主 以下的红字是我的理解与原博主无关 所有的并发处理都有排队等候,唤醒,执行至少三个这样的步骤.所以并发肯定是宏观概念,在微观上他们都是序列被处理的,只不过资源不会在某一个上被阻塞(一般是通过时间片轮转),所以在宏观上看多个几乎同时到达的请求同时在被处理。如果是同一时刻到达的请求也会根据优先级的不同,...转载 2018-09-24 10:44:29 · 22526 阅读 · 8 评论 -
先进先出页面置换算法(FIFO)
算法规则:顾名思义,最早进来的元素,若发生缺页要最先出去。 code:#include <iostream>#include <cstdlib>#include <vector>#include <cstdio>#define pause system("pause")using namespace std;con...原创 2018-12-01 15:34:52 · 3079 阅读 · 0 评论 -
最佳页面置换算法(Optimal)
算法规则:其所选择的被淘汰的页面是以后永不使用,或是最长时间内不被访问的页面。 VS不愧被称作宇宙最强IDE,真TM好用,调试功能一级赞原创 2018-12-01 14:45:23 · 6954 阅读 · 0 评论 -
存储器管理
知识点一:基本概念熟记专业名词1.内存管理2.重定位3.内存保护4.交换与覆盖5.内存的分配方式6.连续存储与非连续存储7.单一连续、固定分区、动态分区(分区)8.分页、分段、段页(分段、分页)9.碎片(内部、外部)10.拼接技术 知识点二:连续分配方式熟记相关专有名词与概念1.连续分配(单一连续、固定分区、连续分区)2.单一连续分配...原创 2018-11-18 20:29:03 · 290 阅读 · 0 评论 -
Ubuntu配置gcc/g++环境
1.先安装 sudo apt-get install build-essential 2.查看 gcc 版本 然后安装 统一版本的 g++gcc --version显示出如下界面 3.安装 g++sudo apt-get install g++-4.4 4.查看安装版本 g++ --version显示出如下界面 ...原创 2018-11-10 13:07:11 · 1710 阅读 · 0 评论 -
Ubuntu下GDB调试C语言程序
转自:http://zhgeaits.me/other/2013/03/17/gdb-study-notes.html,感谢博主。1.GDB是什么GDB是GNU开源组织发布的一个UNIX下的程序调试工具,专门用来调试C,C++这些程序的了,而且都是命令行模式的。2.准备工作平时我们在IDE开发得时候,必须在运行的时候选择debug模式,否则断点就无效了。因此,在用gcc编译的时候也...转载 2018-11-10 12:59:04 · 710 阅读 · 0 评论 -
操作系统-处理器管理
知识点1:进程及其实现一. 进程1.进程是程序对某个数据集的一次执行过程,具有动态性和生命周期。2.线程是一种特殊的进程3.进程包含程序段、数据段、PCB4.进程是操作系统分配资源的基本单位5.进程创建后随即进入等待队列6.并发进程:同时进行的进程(这里的同时指的是宏观上的同时,实际为多进程在同一时间段执行)7.进程三种状态之间的关系(三态模型)( !图中进...原创 2018-10-27 18:46:54 · 1189 阅读 · 0 评论 -
作业调度算法-先到先服务(FCFS)
关于先到先服务算法,我这里只陈述几个要点: 1.为什么缩写是FCFS?first-come first-served,先到先服务。 2.FCFS算法中优先级的评定标准?优先级根据等待时间来确定,等待时间越长,优先级越高,越优先执行。 3.为什么说等待时间越长FCFS算法调度作业的优先级越高?这个问题开始挺纠结我的,不晓得大家有没有纠结过,给大家做一个比喻,当前一...原创 2018-10-14 15:44:56 · 6233 阅读 · 0 评论 -
进程通信实例
有待修改,先放上代码供参考。代码:#include <bits/stdc++.h>using namespace std;const int maxn = 105;typedef int semaphore; //信号量类型char *buf;/*缓冲区数据结构*/typedef struct message_buffer { char se...原创 2018-10-05 11:45:54 · 633 阅读 · 0 评论 -
进程与线程区分
转载https://www.cnblogs.com/dreamroute/p/5207813.html,感谢博主。进程(process)和线程(thread)是操作系统的基本概念,但是它们比较抽象,不容易掌握。最近,我读到一篇材料,发现有一个很好的类比,可以把它们解释地清晰易懂。1.计算机的核心是CPU,它承担了所有的计算任务。它就像一座工厂,时刻在运行。2.假定工...转载 2018-10-03 14:09:03 · 152 阅读 · 0 评论 -
生产者与消费者
以mutex、full、Empty作为信号量#include <bits/stdc++.h>using namespace std;const int maxn = 10; //缓冲区的最尺寸int in, out; //输入,输出指针int buf[maxn]; //缓冲区int mutex; ...原创 2018-10-01 14:24:37 · 310 阅读 · 0 评论 -
Linux文件系统
1.实验目的(1)掌握Linux提供的文件系统调用的使用方法;(2)熟悉文件和目录操作的系统调用用户接口;(3)了解操作系统文件系统的工作原理和工作方式。2.实验内容(1)利用Linux有关系统调用函数编写一个文件工具filetools,要求具有下列功能:0. 退出1. 创建新文件2. 写文件3. 读文件4. 复制文件5. 修改文件权限6. 查看文件...原创 2018-12-03 22:16:49 · 673 阅读 · 0 评论