
操作系统
文章平均质量分 57
zjck1995
这个作者很懒,什么都没留下…
展开
-
操作系统之I/O
输入输出的目的:提供一个人际交互的通道输入输出的分类: 块设备:磁盘,光盘,U盘,磁带,按数据块为单位进行处理 字符设备:鼠标,键盘,打印机,网络界面,字符不可寻址 当然,一个设备可以同时作为块和字符设备,例如,网络界面 输入输出设别的差异性: 传输速度的不同 设备控制器:分为机械部分和电子部分, 设备控制器的原创 2015-06-17 18:47:00 · 395 阅读 · 0 评论 -
哲学家问题 pthread信号量实现
#include#include#include#include#define false 0#define true 1long thread;long count;void * SeqEat(void * rank);void * NoOrder(void * rank);void * NoDeadLock(void *rank);int main(int argc,原创 2015-12-17 15:34:51 · 864 阅读 · 0 评论 -
操作系统之死锁
死锁的四个必要条件1.资源有限2.持有并等待3.非抢占4.循环等待哲学家就餐问题 哲学家们围坐在一个圆桌边上,每个人的左右两边均放着一根筷子,如果要吃饭,需要获得左右两边的筷子 每个哲学家都拿起左边的筷子,会出现死锁 应对办法:1.不理睬,死锁发生的频率不太高,死锁防止的代价很高,不如直接重启,windows,Linux都没有采取死锁原创 2015-06-14 19:30:49 · 488 阅读 · 0 评论 -
操作系统之锁的实现方式
1.以中断启用与禁止来实现锁 中断的启用和禁止是原子的,不能被其他代码插入的 lock(){ disable interrupt while(value!=free){ enable interrupt disa原创 2015-06-14 16:54:04 · 1468 阅读 · 0 评论 -
操作系统之磁盘调度和管理
FCFS:先到先服务原创 2015-07-08 23:06:08 · 5287 阅读 · 0 评论 -
pintos线程转换机制
首先先大致感受下转换流程,稍后解释原来的汇编代码:#### This function works by assuming that the thread we're switching#### into is also running switch_threads(). Thus, all it has to do is#### preserve(保存) a few registe原创 2015-06-09 18:06:41 · 901 阅读 · 0 评论 -
操作系统之内存
单道编程环境下,整个内存里面只有两个程序,一个是操作系统,一个是用户程序,用户程序永远在同一个地方开始执行,这样,运行前可以计算出物理地址叫做 静态地址翻译优点:运行速度快,因为越过了地址翻译这个步骤缺点: 1程序要直接加载到内存上,如果程序比物理内存大的话,就无法放上去运行了 2 只运行一个程序过于浪费了 3 无法在不同的操作系统下运行,因为不同的操原创 2015-06-15 17:31:10 · 659 阅读 · 0 评论 -
操作系统历史
第一阶段 :状态机操作系统(1940以前)第二阶段:单一操作员,单一控制端操作系统(40年代) 输入一个命令,执行一个库函数第三阶段:批处理操作系统(50年代) 将命令列成一个清单,打印在纸带上,一个一个地运行用户程序第四阶段:多道批处理操作系统(60年代) 一个程序输入输出时,让另一个程序继续运行,将多个程序同时加载到计算机内存里第原创 2015-06-21 15:16:01 · 341 阅读 · 0 评论 -
ubuntu usb接口在开机后全部失效,只有重启才能恢复的解决办法
1 进入bios, 进入【Advanced】中的【XHCI PreBoot Mode】,设置成Disabled属性2 ctrl+alt+t 打开命令行,输入sudo vim /etc/default/grub找到GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"改成GRUB_CMDLINE_LINUX_DEFAULT="quiet splash usbcore.aut原创 2016-12-19 21:27:00 · 5952 阅读 · 0 评论