资源简介
配套网易云课堂学习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-ba
文件 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-ba
文件 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个文件信息
- 上一篇:纵向管理工具V1.1安装包.exe
- 下一篇:Controllogix系统实用手册
评论
共有 条评论