
操作系统
文章平均质量分 57
「已注销」
这个作者很懒,什么都没留下…
展开
-
死锁
指两个或两个以上的进程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象死锁发生的基本条件:mutual exclusion 互斥hold and wait 保持而且等待no preemption 不能抢占circular wait 循环等待 没环一定没死锁 有环可能有死锁 有环但是没死锁 所以,没环一定没死锁,有环可能原创 2017-11-28 23:59:23 · 498 阅读 · 0 评论 -
系统内核的加载
计算机上电后第一个执行的程序是BIOS,BIOS存放在ROM中(现在一般放在flash中),BIOS将磁盘前512字节的MBR( 主引导记录,记录了磁盘的分区表等信息)读到(或加载到)内存地址为0X7C00的位置,从此位置运行程序。之后MBR将活动分区(装有操作系统)的第一个扇区的512字节也加载到地址为0X7C00的位置,又从此位置运行程序,进行操作系统的加载。原创 2017-11-24 20:49:46 · 524 阅读 · 0 评论 -
线程
进程的特点是分离,而线程的特点是不分离。 使用线程可以提高程序的响应性,一般将耗时的任务单独交给一个线程去完成。 进程与进程之间的资源是完全独立的,而线程之间的资源是共享的,所以信息的传递较快,效率高。Thread Include:Thread IDProgram countRegister setStack可见线程有独立的栈和寄存器 属于同一个进程的线程一同共享除上述内容的其他数据原创 2017-11-26 10:00:08 · 321 阅读 · 0 评论 -
进程
主要研究进程对CPU是如何管理的。进程状态A process includes:program counter and other registersstackheapdata sectiontext sectionProcess Statesnewready (就绪态)runing (运行态)waiting (阻塞态)terminated进程切换进程控制块PCBPCB是一个原创 2017-11-25 21:27:03 · 297 阅读 · 0 评论 -
CPU调度
多进程与多线程的提出根本上是为了做大化CPU的利用率,调度也是如此多数程序都是通过IO读取数据,之后经过CPU的运算后再通过IO输出,基本就是CPU与IO操作轮换进行。通过分析进程对IO和CPU的占用,可以将进程分为两类: 1. CPU绑定的进程 2. IO绑定的进程CPU scheduling decisions may take place:Switch from running to w原创 2017-11-26 16:37:31 · 469 阅读 · 0 评论 -
进程的同步
解决多个进程同时访问同一个资源的时候出现数据破坏的问题首先找到临界区 临界区:一段代码对共享的数据进行访问然后对临界区进行保护 加锁 应该满足三个条件: 互斥进度有限等待软件方法(现在不常用) 硬件方法(常用) 硬件方法有以上两种,下面仅介绍第一种,这种操作是基于硬件的原子指令(执行过程中不能被中断)实现的。TestAndSet()就是原子操作原创 2017-11-28 13:57:46 · 426 阅读 · 0 评论