操作系统

知识点总结

Posted by GG on February 25, 2018

操作系统

  1. 设备分配主要采用 ==先来先服务== 和 ==优先级高者优先== 两种算法。
  2. 一个USB系统只能有一个USB主控制器,用8位地址表示下面的USB设备, 一共128个地址 但是USB主控制器下面必须带一个Root Hub, hub也算一个设备,换句话说, 还剩下 ==127==个地址给用户。
  3. 文件系统采用二级目录结构,这样可以==解决不同用户之间的文件名的冲突问题.==
  4. 请求段页式系统中,以==段==为单位++管理用户的虚空间++,以==页==为单位++管理内存空间++
  5. image
  6. ==同步信号量的用途==:++防止被抢占 初始为空++
    低优先级的任务持有信号量,高优先级的任务需要这个信号量,只有当低优先级的任务give(释放)信号量,高优先级的任务才能take(获取)信号量。通过这种机制低优先级的任务就可以防止被高优先级的任务抢占。give和take是分别在两个任务里做的。
    ==互斥信号量的用途==:++对临界区上锁 初始为满++
    当一个任务想对临界区访问时,为了防止别的任务也对该临界区操作,它需要对该临界区上锁,即take(获取)一个互斥的信号量,以保证独享。当该任务take(获取)一个互斥的信号量以后,它仍然能被高优先级的任务抢占,但高优先级的用户仍然无法访问它已经上锁的临界区。而解锁也是由上锁的任务来做的。take和give是在一个任务里完成的。
  7. 线程间的通讯机制中,关键路径上不会产生系统调用从而减少用户态到内核态的上下文切换的是==pthread_spin_lock==.