- 1、本文档共18页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
系统调用及进程控制
第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和系统调用的区别) 实验算法(makefile文件) makefile文件:一个工程中的源文件可能不计其数,其按类型、功能、模块分别放在若干目录中,makefile定义了一系列的规则来指定哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至进行更复杂的功能操作。makefile就像一个shell脚本一样,其中也可以执行操作系统的命令。Makefile文件需要按照某种语法进行编写,文件中需要说明如何编译各个源文件并链接生成可执行文件以及定义文件间的依赖关系。 make是一个命令工具,即解释makefile中指令的命令工具,一般来说,大多数IDE都有这个命令,如Delph的make,VC的nmake,GNU的make。 makefile带来的好处就是:“自动化编译”,程序一旦写好,只需要一个make命令。整个工程自动编译,极大提高了软件开发的效率。
文档评论(0)