标题:Nachos的线程管理模块升级
只看楼主
h2363752280
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2012-12-19
结帖率:33.33%
已结贴  问题点数:20 回复次数:1 
Nachos的线程管理模块升级
3.2    实践项目2:Nachos的线程管理模块升级
3.2.1    上机实践具体要求
【背景描述】
在Nachos平台中,线程是作业调度的基本单位,除了线程和进程的概念差别之外,可直接运用操作系统教学课程中关于进程管理的知识。Nachos平台所使用的是非抢占式调度,线程一旦占用CPU,就会一直运行到结束或者被阻塞(等待I/O事件);Nachos平台中的线程数据结构定义非常简单,并无用户ID、线程ID等数据成员,也就是说,无法基于线程的ID来实现通信、同步互斥等机制。Nachos平台中并无全局性的线程管理机制,并未限制线程的数目,也无法了解有多少线程存在。
【实践要求】
本实习项目希望通过修改Nachos系统平台的底层源代码来实现以下目标:
1.    扩充Nachos中线程的管理模式,目前Nachos并不限制线程的个数,而是依靠宿主机(我们的实验环境中宿主机就是指使用VMWare创建的Linux虚拟机,预设内存为256M)的内存来保存线程的信息。请在Nachos中增加对线程数量的限制,使得Nachos中最多能够同时存在128个用户线程。
2.    修改扩充Nachos中线程调度的机制,将其改变为遵循“优先级调度”的抢占式调度。在时钟中断发生时,检查处于“就绪状态”的等待线程中是否存在优先级高于目前占用CPU线程的线程,如果存在这样的线程就使其抢占CPU,如果不存在则不发生线程切换。
3.    (可选)为Nachos的线程管理模块增加通过“公共信箱”进行通信的机制,由Nachos系统核心维护一个预定大小的Mailbox(4K),规定每一封信的大小为128字节,实现两个用户进程之间通过这个“公共信箱”进行通信。
用c/或c++也行,有谁会做啊,急急急求帮帮忙
搜索更多相关主题的帖子: 知识 用户 教学 平台 
2013-01-09 11:07
yaobao
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:蒙面侠
威 望:4
帖 子:1854
专家分:4121
注 册:2012-10-25
得分:20 
这个不删了,当福利大家分了好了

认认真真的学习,踏踏实实的走路:戒骄戒躁!!!
2013-01-09 11:12



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-395802-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.572995 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved