• 大小: 27.14MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-07-09
  • 语言: 其他
  • 标签: linux实验  

资源简介

配套网易云课堂学习linux0.11,内有环境配置全套工具,实验楼实验环境可亲自搭建。学习操作系统不二之选。

资源截图

代码片段和文件信息

#include 
#include 
#include 
#include 

#define HZ 100

void cpuio_bound(int last int cpu_time int io_time);

int main(int argc char * argv[])
{
return 0;
}

/*
 * 此函数按照参数占用CPU和I/O时间
 * last: 函数实际占用CPU和I/O的总时间,不含在就绪队列中的时间,>=0是必须的
 * cpu_time: 一次连续占用CPU的时间,>=0是必须的
 * io_time: 一次I/O消耗的时间,>=0是必须的
 * 如果last > cpu_time + io_time,则往复多次占用CPU和I/O
 * 所有时间的单位为秒
 */
void cpuio_bound(int last int cpu_time int io_time)
{
struct tms start_time current_time;
clock_t utime stime;
int sleep_time;

while (last > 0)
{
/* CPU Burst */
times(&start_time);
/* 其实只有t.tms_utime才是真正的CPU时间。但我们是在模拟一个
 * 只在用户状态运行的CPU大户,就像“for(;;);”。所以把t.tms_stime
 * 加上很合理。*/
do
{
times(¤t_time);
utime = current_time.tms_utime - start_time.tms_utime;
stime = current_time.tms_stime - start_time.tms_stime;
} while ( ( (utime + stime) / HZ )  < cpu_time );
last -= cpu_time;

if (last <= 0 )
break;

/* IO Burst */
/* 用sleep(1)模拟1秒钟的I/O操作 */
sleep_time=0;
while (sleep_time < io_time)
{
sleep(1);
sleep_time++;
}
last -= sleep_time;
}
}


 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2015-05-27 02:39  hit-oslab-master\
     文件          13  2015-05-27 02:39  hit-oslab-master\.gitignore
     文件        1859  2015-05-27 02:39  hit-oslab-master\README.md
     目录           0  2015-05-27 02:39  hit-oslab-master\amd64\
     文件         131  2015-05-27 02:39  hit-oslab-master\amd64\mount-hdc
     文件         679  2015-05-27 02:39  hit-oslab-master\amd64\run
     目录           0  2015-05-27 02:39  hit-oslab-master\common\
     文件     9923103  2015-05-27 02:39  hit-oslab-master\common\bochs-and-hdc.tar.gz
     目录           0  2015-05-27 02:39  hit-oslab-master\common\files\
     文件       13628  2015-05-27 02:39  hit-oslab-master\common\files\memtest
     文件        1395  2015-05-27 02:39  hit-oslab-master\common\files\process.c
     文件        8502  2015-05-27 02:39  hit-oslab-master\common\files\stat_log.py
     文件        5009  2015-05-27 02:39  hit-oslab-master\common\files\testlab2.c
     文件         762  2015-05-27 02:39  hit-oslab-master\common\files\testlab2.sh
     文件      119902  2015-05-27 02:39  hit-oslab-master\common\linux-0.11.tar.gz
     目录           0  2015-05-27 02:39  hit-oslab-master\gcc-3.4\
     目录           0  2015-05-27 02:39  hit-oslab-master\gcc-3.4\amd64\
     文件     1825738  2015-05-27 02:39  hit-oslab-master\gcc-3.4\amd64\cpp-3.4_3.4.6-8ubuntu2_amd64.deb
     文件      165122  2015-05-27 02:39  hit-oslab-master\gcc-3.4\amd64\gcc-3.4-base_3.4.6-8ubuntu2_amd64.deb
     文件     1551014  2015-05-27 02:39  hit-oslab-master\gcc-3.4\amd64\gcc-3.4_3.4.6-8ubuntu2_amd64.deb
     目录           0  2015-05-27 02:39  hit-oslab-master\gcc-3.4\i386\
     文件     1682710  2015-05-27 02:39  hit-oslab-master\gcc-3.4\i386\cpp-3.4_3.4.6-8ubuntu2_i386.deb
     文件      165126  2015-05-27 02:39  hit-oslab-master\gcc-3.4\i386\gcc-3.4-base_3.4.6-8ubuntu2_i386.deb
     文件     1541036  2015-05-27 02:39  hit-oslab-master\gcc-3.4\i386\gcc-3.4_3.4.6-8ubuntu2_i386.deb
     文件         560  2015-05-27 02:39  hit-oslab-master\hit.icon
     目录           0  2015-05-27 02:39  hit-oslab-master\i386\
     目录           0  2015-05-27 02:39  hit-oslab-master\i386\bochs\
     文件     7587107  2015-05-27 02:39  hit-oslab-master\i386\bochs\bochs-dbg
     文件     7081378  2015-05-27 02:39  hit-oslab-master\i386\bochs\bochs-gdb
     文件         115  2015-05-27 02:39  hit-oslab-master\i386\dbg-asm
     文件         119  2015-05-27 02:39  hit-oslab-master\i386\dbg-c
............此处省略6个文件信息

评论

共有 条评论