摘要: 完全公平调度器 用黑体标出的是文章的主线,未用黑体标出的内容是对黑体内容的解释或注解。 每次调用调度器时,它会挑选具有最高等待时间的进程,把CPU提供给该进程。如果经常发生这种情况,那么进程的不公平待遇不会累积,不公平会均匀分布到系统中的所有进程。 如果通过轮流运行各个进程来模拟多任务,那么当前运行 阅读全文
posted @ 2022-04-30 16:17 vptvpt 阅读(121) 评论(0) 推荐(0) 编辑
摘要: 什么是RCU? RCU(Read-Copy Update),顾名思义就是读-拷贝-修改,它是基于其原理命名的。对于被RCU保护的共享数据结构,读者不需要获得任何锁就可以访问它,但写者在访问它时首先拷贝一个副本,然后对副本进行修改,最后使用一个回调(callback)机制在适当的时机把指向原来数据的指 阅读全文
posted @ 2022-04-30 12:23 vptvpt 阅读(219) 评论(0) 推荐(0) 编辑
摘要: 如果一个任务获取信号量失败,该任务就必须等待,直到其他任务释放信号量。本文的重点是,在Linux中,当有任务释放信号量之后,如何唤醒正在等待该信号量的任务。 信号量定义如下: struct semaphore { raw_spinlock_t lock; unsigned int count; st 阅读全文
posted @ 2022-04-18 15:54 vptvpt 阅读(431) 评论(2) 推荐(0) 编辑