登录 注册
当前位置:主页 > 资源下载 > 43 > 杭电操作系统实验

杭电操作系统实验

  • 更新:2024-09-29 17:11:56
  • 大小:1KB
  • 推荐:★★★★★
  • 来源:网友上传分享
  • 类别:Linux - 操作系统
  • 格式:TXT

资源介绍

完整实验代码,有注释,可以直接运行,添加一个系统调用,实现对指定进程的nice值的修改或读取功能,并返回系统最新的nice值即优先级prio。 调用原型为: int mysetnice(pid_t pid, int flag, int nicevalue,void_user*prio,void_user*nice) 其中包括通过所给PID找到相应进程,即设置一个结构体指针p,指向第一个进程(0号进程)的PCB,利用for()循环,判断若p->pid!=pid,即不是目标进程,则指针p指向下一个进程PCB,直到找到目标进程或下一个进程PCB等于当前进程PCB(遍历所有进程),循环结束。找到目标进程后,读取该进程的NICE值和优先级PRIO,当flag=1时,set_user_nice()函数来改变进程NICE值和优先级PRIO;当flag=0时,利用cope_to_user()函数将读取到的NICE和PRIO从内核空间复制到用户态。