教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 文库大全 > 教育文库 >

系统调用及进程控制

来源:网络收集 时间:2026-08-11
导读: 操作系统课程设计 第9章相关说明说明:(1)实验相关ppt内容选自《操作系统课程设 计》的核心实验。 操作系统课程设计 第9章 系统调用及进程控制实验 操作系统课程设计 提纲 操作系统课程设计 提纲 操作系统课程设计 实验目的 理解BIOS中断调用、系统调用以及C

操作系统课程设计

第9章相关说明说明:(1)实验相关ppt内容选自《操作系统课程设 计》的核心实验。

操作系统课程设计

第9章 系统调用及进程控制实验

操作系统课程设计

提纲

操作系统课程设计

提纲

操作系统课程设计

实验目的

理解BIOS中断调用、系统调用以及C语言标准库 函数的联系和区别; 理解Linux API和系统调用的区别; 熟悉Linux下进程控制相关的系统调用,并熟练 使用相关函数完成进程控制的操作; 学习写makefile文件

操作系统课程设计

提纲

操作系统课程设计

实验内容

1.登录Linux系统; 2.在home目录下建立以自己学号为文件名的文件; 3.拷贝实验提供源代码至自己建立的文件; 4.阅读关于系统调用fork,exec,wait,exit,pipe等函数 (可通过man函数进行查询); 5.编写makefile,用make编译源代码中fork.c,pipe.c,并填 写相关实验报告; 6.运行上一步生成的可执行文件,观察结果及进程,并填写 实验报告相关内容; 7.查阅资料,掌握信号和进程调度阅读signal.c代码,编译并 运行,另开终端,用ps和kill命令终止进程;

操作系统课程设计

提纲

操作系统课程设计

实验算法(系统调用)操作系统的主要功能是为应用程序的运行创建良好的环 境,为了达到这个目的,内核提供一系列具备预订功能的多内核 函数,通过一组称为系统调用(system call)的接口呈现给用户 。系统调用把应用程序的请求传给内核,调用相应的内核函数完 成所需的处理,将处理结果返回给应用程序,如果没有系统调用 和内核函数,用户将不能编写大型应用程序。

Linux提供系统调用,让用户进程能够调用内核函数。这 些系统调用允许用户操纵进程、文件和其他系统资源,从用户级 切换到内核级。也就是说,系统调用的执行会引起特权级的切换 ,是一种受约束的、为切换到保护核心的“函数调用”。普通函 数调用不会引起特权级的转换,一般不受约束。

操作系统课程设计

实验算法(BIOS中断调用)BIOS中断服务程序实质上是微机系统中软件与硬件之 间的一个可编程接口,主要用于程序软件功能与微机硬件之 间连接。BIOS中断服务“封装”了许多系统底层的细节,使 得一些用户程序也能够使用BIOS功能。

操作系统课程设计

实验算法(C语言标准库)C语言标准库是利用系统调用来实现的,它将依赖 于系统的系统调用封装起来,而对开发者透明。系统调用的 实现在内核完成,而C语言标准库则在用户态实现,标准库 函数完全运行在用户空间。

操作系统课程设计

实验算法(API和系统调用的区别)

系统命令

系统调用 内核空间

用户编程接口API 用户空间

操作系统课程设计

实验算法(makefile文件)makefile文件:一个工程中的源文件可能不计其数,其按类型 、功能、模块分别放在若干目录中,makefile定义了一系列的规则来 指定哪些文件需要先编译

,哪些文件需要后编译,哪些文件需要重新 编译,甚至进行更复杂的功能操作。makefile就像一个shell脚本一样 ,其中也可以执行操作系统的命令。Makefile文件需要按照某种语法 进行编写,文件中需要说明如何编译各个源文件并链接生成可执行文 件以及定义文件间的依赖关系。 make是一个命令工具,即解释makefile中指令的命令工具, 一般来说,大多数IDE都有这个命令,如Delph的make,VC的nmake ,GNU的make。 makefile带来的好处就是:“自动化编译”,程序一旦写好, 只需要一个make命令。整个工程自动编译,极大提高了软件开发的效 率。

操作系统课程设计

实验算法(文件描述符)标准输入 进程的文件描述表0 1 2 3 4 5 6 7

键盘

标准输出 标准报错 显示器

file1

. . . .

file2

操作系统课程设计

实验算法(输入输出重定向)

操作系统课程设计

实验算法(进程通信机制——管道)命令1命令1的输出

管道

命令2的输入

命令2

命令2的输出

管道

管道

命令N的输入

命令N

管道是半双工的,数据只能向一个方向流动;需要双方通 信时,需要建立起两个管道;管道只能用于父子进程或者兄弟进程 之间(具有“亲缘”关系的进程);管道单独构成一种独立的文件 系统:管道对于管道两端的进程而言就是一个文件,但它不是普通 的文件,它不属于某种文件系统,而是自立门户,并且只存在于内 存中。

操作系统课程设计

提纲

操作系统课程设计

实验示例(函数示例)pid_t fork( void);//pid_t 是一个宏定义,其实质是int 返回值: 若成功调用一次则返回两个值,子进程返回0,父进程返回子进程 ID;出错返回-1。 int pipe(int fd[2]) 函数传入值 fd[2]:管道的两个文件描述符,fd[0]是管道读出端,fd[1]是管道 写入端 返回值:成功返回 0,失败返回 -1。 功能:创建一个管道,把管道的读和写文件描述符放到数组fildes中, fildes[0]元素作为管道的输入描述符,fildes[1]元素作为管道的输出描述符。 int dup2(int oldfd, int targetfd) dup2函数允许调用者规定一个有效描述符oldfd和目标描述符的targetfd。 dup2函数成功返回时,目标描述符(dup2函数的第二个参数)将变成源描 述符(dup2函数的第一个参数)的复制品,换句话说,两个文件描述符现 在都指向同一个文件,并且是函数第一个参数指向的文件。 功能:把oldfd文件描述符复制到targetfd,使oldfd和targetfd指向同一文件 。

…… 此处隐藏:773字,全部文档内容请下载后查看。喜欢就下载吧 ……
系统调用及进程控制.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wenku/115815.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)