云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 2012级操作系统实验报告

2012级操作系统实验报告

  • 62 次阅读
  • 3 次下载
  • 2025/5/2 21:31:02

哈 尔 滨 学 院

实 验 报 告

课程名称: 计算机操作系统 专 业: 软件工程 班 级: 12-8 学 号: 12031801 姓 名: 常燕如

教务处制

1

实验一 进程管理

【实验目的与要求】

⒈ 加深对进程概念的理解,明确进程与程序的区别。

⒉ 掌握Linux进程创建及撤销的方法,进一步认识并发执行的实质。 ⒊ 掌握Linux系统下守护进程的创建方法。 【实验原理】

⒈ Linux进程管理命令 ⑴进程查看 ⑵进程终止

⑶进程优先级设置 ⒉ Linux进程控制函数 ⑴创建和修改进程 ⑵设置进程属性 ⑶获取进程属性 ⑷进程的退出 ⒊ Linux守护进程 ⑴独立启动守护进程 ⑵超级守护进程

⑶守护进程的编写流程

守护进程的编写遵循特定的流程,主要包括五个步骤:

Step⒈ 创建子进程,退出父进程 Step⒉ 在子进程中创建新会话 Step⒊ 改变当前目录为根目录 Step⒋ 重设文件权限掩码 Step⒌ 关闭文件描述符

【实验主要仪器与材料】

⒈ 带Linux操作系统的PC机 ⒉ GCC编译器 【实验内容】

⒈ 获取进程信息

通过管理命令,获取系统当前执行进程的信息,包括进程名称与ID、PID和PGID等。

⒉ 创建进程

编程程序,实现父进程创建一个子进程,返回后父子进程都分别循环输出字符串“I am parent.”或“I am child.”5次,每输出一次延时1秒(sleep(1)),然后进入下一次循环。观察并分析运行结果。然后将程序改为父子进程同步执行:子进程循环输出字符串“I am child.”5次,然后父进程再循环输出字符串“I am parent.”5次。再次观察并分析运行结果。 【实验步骤及实验结果分析】

⒈ 实验内容1

通过进程实现及验证父进程及子进程的id号的命令

2

ps -lg ⒉ 实验内容2

⑴实现父进程创建一个子进程,返回后父子进程都分别循环输出字符串“I am parent.”或“I am child.”5次,每输出一次延时1秒(sleep(1)),然后进入下一次循环。

#include #include #include int main() {

pid_t pt;

printf(\ int i;

pt=fork();

for(i=0;i<5;i++) {

if(pt==-1)

printf(\

else if{

printf(\

Sleep(1); }

else{

printf(\

Sleep(1); }

}

return 0; } ⑵父子进程同步执行:子进程循环输出字符串“I am child.”5次,然后父进程再循环输出字符串“I am parent.”5次。

#include #include #include int main() {

pid_t pt;

printf(\ int i;

pt=fork();

for(i=0;i<5;i++)

3

{

if(pt==-1)

printf(\

else if{

printf(\

}

else{

printf(\

}

} return 0;

}

【思考题】

⒈ 程序和进程的区别。

(1)程序是动态的,程序是静态的:程序是有序代码的集合;进程是程序的执行。通常进程不可在计算机之间迁移;而程序通常对应着文件、静态和可以复制。

(2)进程是暂时的,程序是永久的:进程是一个状态变化的过程,程序可长久保存。

(3)进程和程序的组成不同:进程的组成包括程序、数据和进程控制块(即进程状态信息)。 (4)进程和程序的对应关系:通过多次执行,一个程序可对应多个进程;通过调用关系,一个进程可包括多个程序。 ⒉ Linux操作系统下有哪些进程类型。

交互进程; 批处理进程; 守护进程;

⒊ 进程创建函数fork和vfork的区别。

(1)fork()用于创建一个新进程。由fork()创建的子进程是父进程的副本。即子进程 获取父进程数据空间,堆和栈的副本。父子进程之间不共享这些存储空间的部分。而vfork()创建的进程并不将父进程的地址空间完全复制到子进程中,因为子进程会立即调用exec (或exit)于是也就不会存放该地址空间。相反,在子进程调用exec或exit之前,它在父进程的空间进行。

(2)vfork()与fork()另一个区别就是:vfork保证子进程先运行,在调用exec或exit之前与父进程数据是共享的,在它调用exec或exit之后父进程才可能被调度运行。

4

搜索更多关于: 2012级操作系统实验报告 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

哈 尔 滨 学 院 实 验 报 告 课程名称: 计算机操作系统 专 业: 软件工程 班 级: 12-8 学 号: 12031801 姓 名: 常燕如 教务处制1 实验一 进程管理 【实验目的与要求】 ⒈ 加深对进程概念的理解,明确进程与程序的区别。 ⒉ 掌握Linux进程创建及撤销的方法,进一步认识并发执行的实质。 ⒊ 掌握Linux系统下守护进程的创建方法。 【实验原理】 ⒈ Linu

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com