Advertisement

华中科技大学操作系统实验报告文档。

  •  5星
  •     浏览量: 0
  •     大小:None
  •      文件类型:None


简介:
实验一 Linux系统的安装及用户界面的使用一.实验目的1. 了解Linux系统的安装、熟悉系统的启动过程和使用环境。2. 掌握Linux环境下vi编辑器的使用方法。3. 掌握Linux系统中编辑、编译、调试、运行一个C语言程序的全过程。二.实验内容1、实验要求1. 在VMWare虚拟机环境或真实物理机器上,安装一个Linux操作系统。2. 体验Linux操作系统中X Windows系统的使用。3. 尝试Linux系统键盘命令的使用,并熟练掌握常用的基本命令。4. 掌握命令行方式下vi编辑器的使用。5. 编写一段C程序,使用系统调用fork()创建两个子进程。各进程显示不同的信息,如父进程显示字符“a”,子进程分别显示字符“b”和“c”。多次运行观察显示结果,并分析产生这种执行效果的原因。实验二 Linux进程控制一.实验目的1. 掌握进程的概念,明确进程和程序的区别。2. 认识和了解并发执行的实质。二.实验内容1、实验要求1. 编写一段程序,使用系统调用fork()创建两个子进程。各进程显示不同的信息,如父进程显示字符“a”,子进程分别显示字符“b”和“c”。多次运行观察显示结果,并分析产生这种执行效果的原因。2. 修改上面编写的程序,将每个进程的输出由单个字符改为循环输出一句话,如父进程显示:“parent:”加上进程ID,子进程分别显示:“Child1:”(或“Child2:”)加上自己的进程ID。再观察程序执行时屏幕上出现的现象,并分析原因。3.一个父进程创建一个子进程,子进程通过exec系统调用执行另一个文件。各自的代码中显示不同的信息,观察其运行结果,分析两个进程并发执行的效果。4. 编写程序创建如图所示的进程树,在每个进程中显示当前进程ID和父进程ID。实验三 Linux进程间通信一.实验目的(1) 分析进程争用临界资源的现象,学习解决进程互斥的方法;(2) 学习如何利用进程的“软中断”、管道机制进行进程间的通信,并加深对上述通信机制的理解;(3) 了解系统调用pipe( )、msgget( )、msgsnd( )、msgrcv( )、msgctl( )、shmget( )、shmat( )、shmdt( )、shmctl( )的功能和实现过程,利用共享存储区机制进行进程间通信。二、实验内容1、实验要求(1) 进程的控制 修改已编制的程序,将每个进程输出一个字符修改为每个进程输出一句话,再观察程序执行时屏幕上出现的现象,并分析出现问题的原因,进一步理解各个进程争夺临界资源的情况。如果在程序中使用系统调用locking( )来给每一个进程加锁,可以实现进程之间的互斥,试观察并分析出现的现象。(2) 进程的软中断通讯 编制一段程序,实现进程的软中断通讯:使用系统调用fork( )创建两个子进程;再使用系统调用signal( )让父进程捕捉键盘上来的中断信号(即按Del键);在捕捉到中断信号后,父进程用系统调用kill( )向两个子进程发信号;子进程捕捉到信号后分别输出下列信息后终止:Child process1 is killed by parent! Child process2 is killed by parent! 父进程等待两个子进程都终止以后,输出如下信息后终止: Parent process in killed! (3) 进程的管道通讯 编制一段程序,实现进程的管道通讯:使用系统调用pipe( )建立一条管道线;两个子进程分别循环向这条管道写一句话:Child 1 is sending a message! Child 2 is sending a message! 而父进程则循环从管道中读出信息,显示在屏幕上。实验报告 内含源代码

全部评论 (0)

还没有任何评论哟~
客服
客服
  • .docx
    优质
    这份文档是针对华中科技大学操作系统课程所撰写的实验报告,详细记录了学生在该课程中的实验操作、心得以及遇到的问题和解决方案。 ### 实验一:Linux系统的安装及用户界面的使用 #### 一.实验目的 1. 掌握Linux操作系统的安装过程,并熟悉其启动流程和使用环境。 2. 熟练掌握在Linux环境下使用vi编辑器的方法。 3. 学会从编写到调试,再到运行一个C语言程序的全过程。 #### 二.实验内容 **实验要求** 1. 在VMware虚拟机或真实机器上安装一个Linux操作系统。 2. 使用并体验Linux中的X Window系统。 3. 掌握基本键盘命令,并能够熟练使用常用的基本命令。 4. 学会如何在命令行方式下使用vi编辑器进行文件的编辑和保存操作。 5. 编写一段C程序,利用fork()函数创建两个子进程。其中父进程显示字符“a”,而这两个子进程分别输出字符“b”与“c”。多次运行该程序并分析其执行效果的原因。 ### 实验二:Linux进程控制 #### 一.实验目的 1. 掌握什么是进程,明确区分程序和进程的概念。 2. 认识并发执行的实质及其重要性。 #### 二.实验内容 **实验要求** 1. 编写一个程序,在其中使用fork()函数创建两个子进程。父进程中显示字符“a”,而这两个子进程分别输出字符“b”与“c”。多次运行该程序并分析其结果。 2. 修改上述代码,使得每个进程的输出从单个字符改为循环输出一句话(如:“parent:加上自己的PID”、“Child1: 加上自身的PID”等),再观察执行时屏幕上出现的现象,并进行原因分析。 3. 编写一个父进程创建子进程并使用exec系统调用让该子进程运行另一个程序的代码。每个进程中显示不同的信息,然后观察其执行结果及其并发性效果。 4. 设计一段程序以构建如图所示的进程树,在其中每一个节点(即进程)输出自己的PID以及父级PID。 ### 实验三:Linux进程间通信 #### 一.实验目的 1. 理解当多个进程争用同一资源时的现象,并学习解决此类问题的方法。 2. 学习如何通过系统提供的“软中断”机制和管道技术实现不同程序间的交互,加深对其工作原理的理解。 3. 掌握pipe()、msgget()、msgsnd()、msgrcv()等系统调用的功能及其应用方式;熟悉使用共享内存进行进程间通信的方法。 #### 二.实验内容 **实验要求** 1. 修改之前编写的程序,在每个进程中输出一句话而非单个字符,观察执行时屏幕上的现象,并分析出现该情况的原因。可以考虑利用locking()函数为每一个进程添加锁来解决多进程互斥访问的问题。 2. 编写一个实现“软中断”通信的程序:创建两个子进程;让父进程捕捉键盘输入信号(例如Del键)并使用kill()向其发送信号;当子进程接收到该信号时,输出特定信息后结束运行。最后由父进程等待所有子线程结束后退出。 3. 编写一个实现管道通信的程序:通过pipe()建立一条通道,并让两个子进程分别循环往其中写入消息(例如:“Child 1 is sending a message!”、“Child 2 is sending a message!”),而父进程中则从该管道中读取信息并显示出来。
  • _(2).doc
    优质
    这份文档是华中科技大学学生完成的操作系统课程的实验报告。报告详细记录了实验目的、过程和结果分析等内容,旨在加深对操作系统的理解和实践技能。 本段落是一份操作系统课程实验报告,旨在掌握Linux操作系统的使用方法、了解其内核代码结构以及学习如何实现实例操作系统。根据任务书的要求,学生需要掌握Linux操作系统的使用技巧,包括键盘命令和系统调用,并理解其内核代码的架构。本报告详细介绍了实验中使用的环境、内容、步骤及结果。通过此次实验,学生们成功掌握了Linux操作系统的应用方法,并对它的内核结构有了更深入的理解。
  • 杭州电子
    优质
    本文档为杭州电子科技大学操作系统课程专属资料,详尽记录了实验步骤、操作方法及心得体会,旨在帮助学生深入理解操作系统原理。 19级学长的操作系统实验文件包含了许多有用的资料和指导,可以帮助同学们更好地理解和完成相关的课程任务。这份资源对于学习操作系统原理和技术实现非常有帮助。希望更多同学能够参考这些材料,在实验中取得更好的成绩。
  • 课程设计
    优质
    本报告为华中科技大学操作系统课程的设计成果,涵盖了进程管理、内存分配及文件系统实现等核心内容,展示了学生对操作系统的深入理解和应用能力。 华中科技大学操作系统课程设计报告涵盖了四个实验的详细步骤及源码实现。
  • 课程设计
    优质
    《华中科技大学的操作系统课程设计报告》是该校计算机专业学生在操作系统课程中的实践成果汇总,涵盖了进程管理、内存分配和文件系统等核心模块的设计与实现。 华中科技大学的操作系统课程设计报告非常详细。
  • 优质
    本课程为华中科技大学计算机专业核心课程之一,旨在通过实践操作加深学生对操作系统原理的理解与掌握,培养系统开发和调试能力。 四次实验涵盖了进程控制、线程同步与通信以及共享内存与进程同步等内容,并且还包括了Linux文件目录的相关知识。
  • 西安电子
    优质
    本实验报告为西安电子科技大学操作系统课程设计,涵盖进程管理、内存分配与文件系统操作等核心内容,旨在加深学生对操作系统原理的理解和实践能力。 实验一:进程的建立 实验二:线程共享进程中的数据 实验三:信号通信 实验四:匿名管道通信 实验五:命名管道通信 实验六:信号量实现进程同步
  • 信息安全.zip
    优质
    本资料为华中科技大学学生完成的信息系统安全课程实验报告,包含多种信息安全实验的操作步骤、结果分析及心得体会。 华中科技大学信息系统安全实验报告涵盖了软件安全、Web安全以及区块链方面的内容,并详细记录了实验过程中的图文资料。
  • 西安电子综合
    优质
    《西安电子科技大学操作系统综合实验报告》涵盖了学生在操作系统课程中完成的各项实验内容,包括进程管理、内存分配与调度算法等关键技术的学习和实践,旨在加深对现代操作系统内部机制的理解。 西电操作系统综合实验报告详细记录了本次实验的各项内容与成果。报告涵盖了从理论知识到实践操作的全过程,并对遇到的问题进行了深入分析及解决方案探讨,旨在帮助读者更好地理解和掌握操作系统的核心概念和技术细节。通过此次实验,同学们不仅巩固了课堂上学到的知识,还提高了实际动手能力和问题解决能力。 (注:原文中没有具体提及联系方式等信息,故重写时未做相应修改)
  • 杭州电子(全套).rar
    优质
    本资源包含杭州电子科技大学操作系统课程全套实验报告,内容详尽,涵盖多个实验项目与操作实例,适合学习和参考。 杭电操作系统实验报告包含了全部的实验内容。