ImageVerifierCode 换一换
格式:DOCX , 页数:11 ,大小:21.71KB ,
资源ID:22276714      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/22276714.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(操作系统实验报告 linux部分原创Word文档下载推荐.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

操作系统实验报告 linux部分原创Word文档下载推荐.docx

1、 close(fd0);/ 关闭管道输入描述符 close(STD_OUTPUT);/ 关闭标准输出描述符1 dup(fd1);/ 指定标准输出描述符1为管道写指针 close(fd1);/ 关闭原始管道写指针execl(process1, process1, 0);/ 用程序father覆盖当前程序 printf( father failed、n);/ execl()执行失败 else close(fd1);/ 关闭管道输出描述符 close(STD_INPUT);/ 关闭标准输入描述符0 dup(fd0);/ 指定标准输入描述符0为管道读指针 close(fd0);/ 关闭原始管道读指针

2、execl(process2,process2,0);/ 用程序child覆盖当前程序 printf(child failed、n/ execl()执行失败 exit(2);/ 程序结束步骤2:编制“管道写”程序father、c作为父进程的一部分工作。其内容如下:单击红帽子,在“GNOME帮助”菜单中单击“附件”-“文本编辑器”命令,在文本编辑中键入程序并保存为father、c。清单4-6 father、c main() static char string = “Parent is using pipe write、” ; int len; len = sizeof(string) writ

3、e(l, string, len)/* 将string中的内容写入管道中 */ printf(“parent, parent, parent n n n” ) exit(0) 步骤3:编制“管道读”程序child、c作为子进程的一部分工作。单击红帽子,在“GNOME帮助”菜单中单击“附件”-“文本编辑器”命令,在文本编辑中键入程序并保存为child、c。清单4-7 child、c main() char output30 ; read (0, output,30)/* 从管道中读数据并存入output中 */ printf(“%s n child, child、 n” , output) re

4、turn(0) 步骤4:编译。Gcc g pipeline、c o pipelineGcc g father、c o fatherGcc g child、c o child步骤5:运行。、/pipeline 、/father 、/child 若运行不成功,则应该用文本编辑器对源程序进行修改调试。运行显示结果为:child failed 、 断开的管道 Parent is using pipe write、 parent, parent, parent 输入的字符 child,child、2、4 Linux重定向和管道(实验估计时间:90分钟) 实验内容与步骤 可选练习背景知识在本实验中,我们将

5、使用高级Linux命令来完成重定向和管道。每一个Linux命令都有一个源作为标准输入,一个目的作为标准输出。命令的输入通常来自键盘 (尽管它也可以来自文件)。命令通常输出到监视器或者屏幕上。Linux计算环境使用重定向可以控制命令的I/O。当试图把命令的输出保存到一个文件,以供以后查看的时候是很有用的。通过管道,可以取得一个命令的输出,把它作为另一个命令的进一步处理的输入。有几个元字符可用于输入/输出重定向符号:输出重定向使用右尖括号 (,又称大于号);输入重定向使用左尖括号 ()本实验重点在输出重定向。重定向命令的格式是:mand Redirection-Symbol File (text

6、file or device file)标准输出比标准输入或标准出错更经常被重定向。许多命令,如ls、cat、head和tail产生标准输出到屏幕上,常常会希望把这个输出重定向到一个文件中,以便将来查看、处理或者打印。通过替换文件名,可以截获命令的输出,而不是让它到达默认的监视器上。最强大的元字符之一是管道符号 (|)管道取得一个命令的标准输出,把它作为标准输入传递给下一个命令 (通常为more命令、lp (行式打印机)命令或者一个文件处理命令,如grep或sort)必须在管道的每边都有一个命令,命令和管道之间的空格是可选的。管道命令的格式是:mand | mand实验目的通过重定向和管道操作

7、:1)熟悉输入/输出 (I/O)重定向;把标准输出重定向创建一个文件;防止使用重定向的时候覆盖文件;4)把输出追加到一个现有的文件中;5)把一个命令的输出导入到另一个命令中。您需要做以下准备:由指导老师分配的登录用户名 (如user2)和口令。一台运行Red Hat Linux操作系统,带有GNOME的计算机。实验内容与步骤1、使用重定向标准输出符号2、 使用管道符号在本实验中将会用到下列命令:pwd:显示当前的工作路径。cd:改变目录路径。ls:显示指定目录的内容。more:分页显示文件的内容。这是用于显示文本文件的首选方法。head:截取显示文件的开头部分 (默认为开头10行)tail:截

8、取显示文件的结尾部分 (默认为最后10行)cal:有关日历的命令。set:shell特性的设置。echo:显示变量的值。ps:显示当前进程。data:显示或设置系统日期和时间。grep:查找文件中有无指定的关键字。提示:如果对命令的格式不清楚,可以用man命令请求帮助,即:man more开机,登录进入GNOME。在GNOME登录框中填写指导老师分配的用户名和口令并登录。步骤2:访问命令行。单击红帽子,在“GNOME帮助”菜单中单击“系统工具”-“终端”命令,打开终端窗口。1、使用重定向标准输出符号步骤3:重定向标准输出,创建一个文件。右尖括号或称大于符号 (把命令的输出发送到一个文件中:使用

9、单个右尖括号,当指定文件名不存在的时候,将创建一个新文件;如果文件名存在,它将被覆盖。(注意:命令、重定向符号和文件名之间的空格是可选的)重定向标准输出命令的格式是:mand file1)为核实当前所在目录位置,使用什么命令?pwd 如果当前位置不在主目录中,使用什么命令可以改变到主目录中?cd2)如果希望把文件和目录列表截获,存储为主目录中的一个文件,这样可以追踪主目录中有什么文件。使用什么命令,把长文件列表的输出重定向,创建一个叫做homedir、list的文件。l s homedir、list3)新文件homedir、list被放在哪里?/home/student 使用ls命令核实新文件

10、存在。使用什么命令,以一次一屏的方式,来查看刚才创建的文件内容?ls l| more homedir、list5)使用head命令截获homedir、list文件的前10行,通过重定向,创建一个叫做dhomedir、list-top-10的新文件。应该使用什么命令?headtop-10 使用more命令查看文件的内容。6)使用tail命令,截获homedir、list文件的最后10行,通过重定向,创建一个叫做dhomedir、list-top-10的新文件。使用什么命令?tailtop-10 使用more命令查看文件的内容。7)截获calo noclobber命令来完成。o代表选项。为了重新激

11、活clobber特性,使用$setl homedir、list,结果是什么?bash: homedir、list: cannot overwrite existing file3)输入命令lsl命令的输出,作为more命令的输入 (注意:如果在当前目录中没有太多的文件,使用 /etc目录获取长列表)把输出作为more命令的输入的时候,得到什么结果?结果以一屏一次的方式显示在屏幕上2)查看使用ls l | more命令列出来的文件,注意创建或修改的日期。为了查看在同一个月被创建或修改的文件或目录的列表,可以使用grep命令对那个月进行搜索。当月份显示在列表中的时候,指定它 (例如:Oct)输入命

12、令ls1 | grep4096。产生的列表是什么?4096字节大小的目录显示4)可以使用多个管道连接多个命令。输入取得长文件列表输出的命令,把它输入给tail命令,然后到sort命令。输入的命令是:ls l| tail| sort5)ps (进程状态)命令用于查看Linux系统中运行什么进程。把pse选项将给出每一个在系统中运行的进程。把输出输入到more命令中的结果是什么?系统中运行的所有程序 步骤7:删除在本实验中创建的文件和目录。步骤8:关闭终端窗口,注销。可选练习1、使用seto。noclobber特性打开还是关闭的?如果它是关闭的,打开它。关闭的;set o noclobber2)永

13、久的关闭noclobber特性。set +o noclobber2、 可以把管道和重定向组合起来使用,达到特殊的效果。输入命令创建一个名为top5、list的文件,内容为主目录中的头5行记录,使用什么命令?ls l| head“终端”命令,打开“终端”窗口。步骤3:回顾系统进程概念。每个运行的程序都会创建一个进程,进程分配到一个唯一的进程标识符 (PID)PID被系统用于标识和跟踪进程,直到进程结束。操作系统内核管理所有进程的初始化和终止。每一个进程都要求系统资源 (例如CPU时间和RAM空间)在其中工作。当进程启动的时候,操作系统把系统资源分配给每个进程,当进程终止的时候,系统回收这些资源。

14、在Linux系统启动的时候,首先启动的两个进程是sched (调度)和init (初始化),它们管理着其他进程。Linux系统中有几种不同类型的进程:守护进程:由Linux内核启动的进程,为了特定目的而存在。例如,lpsched守护进程存在只是为了处理打印作业。父进程:派生其他进程的进程是父进程。一个叫做init的守护进程是第一个调用的进程。每一个进程,除了init之外,都有一个父进程。子进程:由其他进程派生出来的进程叫做子进程。孤儿进程:在进程返回输出之前,它的父进程结束了,这样的进程叫做孤儿进程。僵进程:子进程没有带着输出返回给父进程。这样的进程在系统中变成丢失的进程。使用此前的信息,完成

15、以下填空:Linux系统中,几乎每一个启动的进程,都会由内核分配一个唯一的 PID 进程标识符,用于跟踪从进程启动到进程结束。当启动新进程的时候,内核也给它们分配系统资源,如 CPU时间和RAM空间 。永远不向父进程返回输出的进程叫做 僵进程 。由父进程派生出来的进程叫做 子进程 。父进程 是一个派生另一个进程的进程。运行用于提供服务的Linux系统进程是 守护进程 。如果父进程在子进程之前结束,它创建了一个 孤儿进程 。步骤4:回顾ps命令和信息。ps命令用于列出当前系统中运行的进程。如果一个进程耗时太长,或者看上去好像已经终止了,表现为一个终端窗口不再响应或挂起,通常需要使用ps查看系统中

16、的进程。通过列出进程,可以查看初始化进程的命令或程序的名字,以及所有它派生出来的子进程。通过多次执行ps命令,查看进程的时间进程占用的CPU时间,可以检查一个进程是否还在运行。如果时间小再增长,那么进程可能已经终止了。如果进程占用太长的时间或者已经停止,可以使用ps命令检查进程的进程ID (PID),然后杀死进程。ps命令的输出将显示PID号和与其相关的命令或程序。PID号通常用于终止一个进程。ps命令 ( ps-options )的3个主要选项如下表所示。表3-5 ps命令选项ps选项意义功能Ps无选项显示当前shell或终端窗口中,当前用户的进程信息ps e每一个显示系统中每一个进程的信息

17、ps f完全产生一个完全列表,给出每个进程的所有可用信息ps6中。表3-6 实验记录PIDTTYTIMECMD4894pts/000:00:00bash4949pts/000:00ps从当前终端窗口中,练习使用给出的每个选项的ps命令。输入 ps7中。表3-7 实验记录UIDPIDPPIDCSTIMETTYTIMECMDstudent4894489xx:09pts/000:00bashstudent49574894008:31pts/000:00psf命令输出的各栏标题见表3-8所示。表3-8 psef 命令,显示运行在系统中的各个进程的完全信息。执行该命令,并与ps f命令的输出结果对照,一

18、致吗?有何不同?不一致; ps ef显示的信息内容要多于psef的列表可能很长。如果知道启动进程的执行程序的名字,可以更快地找到PID。通过把ps命令的输出结果输入到grep中,可以搜索想要终止的特定进程,确定正确的PID。grep命令可以在其他命令的输出中搜索所有类型的特征字符串。-l (长的输出)选项将显示和找到的PID相关的进程的名字;-e选项显示PID和初始化命令的名字。a、 单击红帽子,在“GNOME帮助”菜单中单击“游戏”-“堆麻将”命令,打开“堆麻将”游戏。b、 在当前的终端窗口中,执行命令:ps e | grep mahjongg (“堆麻将”游戏的进程名是“mahjongg”

19、),查找和“堆麻将”游戏调度守护进程相关的所有进程。c、 显示了多少个相关进程?2个 d、 显示进程中最小的进程ID号是多少?19648 c、 在当前终端窗口中执行命令:pgrep l mahjongg查找所有和“堆麻将”游戏调度守护进程相关的进程。ps和pgrep命令输出之间有什么不同?ps命令显示PID、TTY、TIME、CMD ;pgrep命令只显示PID和CMD 、步骤7:确定一个要终止的进程。当试图终止一个程序,或者释放一个挂起的终端窗口的时候,杀死和不响应的应用相关的PID可能还是不够的,一般需要杀死那个进程的父进程,在少数情况下,甚至要杀死父进程的父进程。为了沿着层次结构,从子进

20、程追溯到派生它们的父进程,必须能够查找PID和PPID。必须首先确定最低级不响应进程的PID。通常,可以试着去杀死那个进程。如果这样做不能够停止那个进程,可能需要杀死它的父进程。杀死父进程将杀死所有它派生的子进程。杀死一个父进程也比杀死几个子进程快得多。在GNOME当前终端窗口中,输入ps命令。有多少进程正在运行?为什么只有这么少的进程?有2个进程;因为ps只显示当前运行的进程 。正在运行的进程的名字是什么?它表示什么?bash和ps3)这个进程的PID是多少?4990和196834)在bash shell中输入命令csh,打开一个C shell会话,当前系统的会话提示符是什么?student

21、inux$5)输入 pssh、ps f6)bash的PID是-sh (csh)的PPID吗?是,都为49907)输入命令sleep l000&,创建一个进程,把执行挂起1000秒 (大约15分钟)&表示在后台运行命令,返回shell提示符,这样您可以继续工作。8)再次输入pssh (csh)的PID是sleep命令的PPID吗?哪个PID是csh (C shell)的子进程?是,都为19695;19717和19718是csh的子进程9)输入命令 killf命令。什么PID是sleep父命令的PPID?init进程的PID:1 是sleep父命令的PPID sleep进程现在是什么类型的进程?孤

22、儿进程 步骤8:使用kill命令终止一个进程。信号用于终止、挂起和继续进程。有时候使用Ctrl + c可以终止一个不响应的进程。这样向进程发送一个中断 (INT)信号,终止它及所有它派生的子进程。kill命令提供了一个终止不想要的命令进程的直接方法。当想停止一个运行了很长时间的命令的时候,或者当需要终止一个不能够正常退出的进程的时候,它很有用。指定PID正常地杀死一个进程。k ill-signal process9选项的kill命令。这个选项叫做强制杀死,当shell对所有其他终止信号都不响应的时候,需要使用它来杀死shell。k illid注意:对于shell之外的进程,把kill 9 (S

23、IGKILL)作为最后的选项,因为它是一种生硬的方法,不允许正确的进程终止。a、 输入命令ps f ,显示在当前shell中运行的进程的完整信息。现在什么进程正在运行?bash、sleep1000、psf 步骤9:按照用户查找和终止一个进程。ps命令可以带ef使用得更多,因为一般只能够管理属于自己的进程。我们可以通过用户登录名或者UID号来查找用户的进程。用户只能够终止自己的进程,但是超级用户可以终止系统中所有运行的进程。p s u login-ID或UID1)启动计算器和“堆麻将”游戏GNOME应用程序。使用带u命令组合grep,查找“堆麻将”程序的PID号,而不是使用ps -u查找整个列表

24、。您使用什么命令?猜猜“堆麻将”程序的命令名中可能有哪个字母,使用grep搜索那些字母。p s u student| grep mahj5)终止“堆麻将”程序。它是否还在桌面上运行?否6)退出 C shell。步骤10:删除所有在本实验中创建的文件和目录。步骤11:5、2 Linux文件信息命令和基本文件管理(实验估计时间:120分钟) 实验内容与步骤背景知识在本实验中,我们将使用不同的信息命令,来调查和发现文件的信息;使用命令来帮助确定文件类型和创建文件的应用;也可以使用几个命令来查看文本文件的内容和对它们进行比较。作为基础,使用命令来分析和管理文件及目录的能力对于进一步学习Linux操作系

25、统是非常重要的。Linux特权用户和系统管理员必须有使用命令行的工作背景,例如创建可执行的脚本文件等 (Linux脚本文件包含着一系列的Linux命令)许多操作系统管理和设备配置作业需要理解Linux命令,并且在某些情况下,命令行是仅有的操作方式。在本实验中,我们将在命令行下使用文件管理命令工作,介绍文件和目录命名规则。我们将创建一个简单的目录结构,然后在那些目录中创建一个文件,并练习创建和删除文件和目录。实验目的通过本实验:使用控制字符执行特殊功能;使用file和strings命令确定文件类型;使用cat利more命令显示文本文件的内容;使用head和tail命令显示文本文件的部分内容;使用wc命令确定单词、行和字符数;使用diff命令比较2个文件。回顾文件和目录命名约定;使用touch命令创建新文件;9)使用mkdir命令创建新目录;10)使用r

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1