Linux操作系统课程设计 实验总结,操作系统课程设计实验报告(以linux为例).doc

41528d3028836879cd698677c3999917.gif操作系统课程设计实验报告(以linux为例).doc

操作系统课程设计实验报告学号1117404059姓名姜栏苏州大学计算机科学与技术学院2014年9月操作系统课程设计实验报告1目录目录1一、实验环境2二、实验报告总体要求2实验一编译LINUX内核3实验二观察LINUX行为7实验三进程间通信14操作系统课程设计实验报告2一、实验环境LINUX平台硬件平台普通PC机硬件环境。操作系统LINUX环境,例如,红旗LINUX或REDHATLINUX;启动管理器使用GRUB。编译环境伴随着操作系统的默认GCC环境。工作源码环境一个调试的内核源码,版本不低于2420。二、实验报告总体要求在2013年11月25日前提交实验报告。实验报告至少要求包含以下内容1引言概述本次实验所讨论的问题,工作步骤,结果,以及发现的意义。2问题提出叙述本篇报告要解决什么问题。注意不可以抄写实验要求中的表述,要用自己的话重新组织我们这里所提出的问题。3解决方案叙述如何解决自己上面提出的问题,可以用小标题31,32等分开。这是实验报告的关键部分,请尽量展开来写。注意,这部分是最终课程设计的基本分的部分。这部分不完成,本课程设计不会及格。4实验结果按照自己的解决方案,有哪些结果。结果有异常吗能解释一下这些结果吗同别人的结果比较过吗注意,这部分是实验报告出彩的地方。本课程设计要得高分,应该在这部分下功夫。5结束语小结并叙述本次课程设计的经验、教训、体会、难点、收获、为解决的问题、新的疑惑等。6附录加了注释的程序清单,注释行数目至少同源程序行数目比12,即10行源程序,至少要给出5行注释。操作系统课程设计实验报告3实验一编译LINUX内核实验时间6小时实验目的认识LINUX内核的组成,掌握配置、编译、安装LINUX内核的步骤。实验目标下载2619或更新的LINUX内核,配置该内核使其支持NTFS,并在新的内核中修改其版本为LINUXNAMETESTKERNELXXX,其中,NAME是你的名字(汉语拼音);XXX是新内核的版本号,最后在你的机器上编译安装这个新内核。背景知识参见REDHATENTERPRISELINUX4入门与提高第20章。实验步骤1验证GCC的可用在你自己的工作目录下,编译链接运行HELLOWORLD程序。2在HTTP//WWWKERNELORG上下载指定的内核,或者查找更新的稳定版内核并下载之。3准备相关工具。提示如当前运行的LINUX内核是基于24版本的,则需要更新以下软件MODULEINITTOOLS和MKINITRD。具体更新信息可参见下载内核源代码中的DOCUMENTATION/CHANGES这个文件。4把源代码解压缩至/USR/SRC中,最终形成/USR/SRC/LINUXXXX/目录(XXX是新内核的版本号)。提示这里的注意点是路径的选择,一般要放在/USR/SRC/LINUXXXX/目录下面,以满足MAKEFILE对路径设置的初始要求。5进入源代码的根目录(/USR/SRC/LINUXXXX),找到合适自己的内核配置方法,并按照实验目标对其进行配置。操作系统课程设计实验报告46修改/USR/SRC/LINUXXXX/INCLUDE/LINUX/VERSIONH文件中的版本信息。注如果没有这个文件,请执行命令MAKEINCLUDE/LINUX/VERSIONH7编译内核。8安装模块文件。9安装内核文件。10重新启动新内核。实验结果1实验步骤1中,编译链接运行程序你下达了哪些命令2实验步骤2中,你下载了哪个版本的内核文件3实验步骤3中,你是否安装了相关工具如安装,则写出安装过程。4实验步骤4中,你是用哪些命令解压缩内核文件的5实验步骤5中,你用了哪种内核配置的方法6你对实验步骤6中涉及的文件做了怎样的修改7实验步骤79的过程,是否出现错误如有,你是如何解决的8观察你机器中GRUB的配置文件,它在安装完新内核后发生了哪些变化9新内核启动过程是否成功如有错误,是哪些错误你是如何消错的操作系统课程设计实验报告5(如不够,可另附页)实验报告INCLUDE“MQX_INCH“//将“MAXINCH”添加到源文件中/\PRIVATE//声明私有变量及分配存储空间声明私有变量及分配存储空间\BRIEFCREATESTHELIGHTWEIGHTSEMAPHORE//简单创建轻量级的信号\PARAMINSEM_PTRPOINTERTOTHELIGHTWEIGHTSEMAPHORETOCREATE//创建轻量级指针信号\PARAMININITIAL_NUMBERINITALNUMBEROFSEMAPHORESAVAILABLE//信号量可用的初始数量\PARAMINHIDDENTRUEIFSEMAPHOREWILLNEHIDDENFROMKERNEL,FALSEIFNOT如果信号量NE被隐藏在核心代码中则为TRUE,否则则为FALSE\PARAMINUSERUSERMODEFUNCTIONALITY//用户模式的功能\RETURNMQX_OK//返回MQX_OK\RETURNMQX_EINVAL//返回MOX_EINVAL\RETURNMQX_INVALID_LWSEM//返回MQX_INVALID_LWSEM\SEE_LWSEM_CREATE\SEE_LWSEM_CREATE_HIDDEN\SEE_USR_LWSEM_CREATE\SEELWSEM_STRUCT/_MQX_UINT_LWSEM_CREATE_INTERNALLWSEM_STRUCT_PTRSEM_PTR,_MQX_INTINITIAL_NUMBER,//初始数BOOLEANHIDDEN,//隐藏BOOLEANUSER//用户{KERNEL_DATA_STRUCT_PTRKERNEL_DATA//内核数据结构指针的核心数据操作系统课程设计实验报告6LWSEM_STRUCT_PTRSEM_CHK_PTR//LWSEMSTRUCTPTRSEM检查PTRIFMQX_ENABLE_USER_MODE//如果启用用户模式代码IFUSER//返回MQX_INVALID_LWSEM}ENDIF/MQX_ENABLE_USER_MODE///结束条件指令_GET_KERNEL_DATAKERNEL_DATA//得到的内核数据(内核数据)_KLOGE2KLOG_LWSEM_CREATE,INITIAL_NUMBER//SEM_PTRVALUEINITIAL_NUMBER_QUEUE_INIT_INT_DISABLEIFHIDDEN//如果没有隐藏{IFMQX_CHECK_ERRORS/CHECKIFLWSEMISALREADYINITIALIZED///检查LWSEM是否已经初始化IFMQX_ENABLE_USER_MODE//如果用户启用MQXIFUSER{SEM_CHK_PTRLWSEM_STRUCT_PTRPOINTERKERNEL_DATAUSR_LWSEMNEXTWHILESEM_CHK_PTRLWSEM_STRUCT_PTRPOINTER_KLOGX2KLOG_LWSEM_CREATE,MQX_EINVALRETURNMQX_EINVAL}SEM_CHK_PTRLWSEM_STRUCT_PTRPOINTER

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
包含源代码以及测试说明 题目如下: 1. 系统管理员每天要做大量任务,请编写shell脚本来减轻工作负担吧。要求如下: (1)首先编写一个主文本菜单,通过输入各菜单项的编号,调用以下(2)到(6)小题的功能; (2)添加“账号管理”子菜单。其有3项功能:a.添加帐号,允许交互式输入账号名和密码;b.删除账号,允许交互式输入账号名,需要验证账号是否存在;c.从使用者指定的文件中批量添加20个账号。 (3)添加“磁盘管理”子菜单。其有3项功能:a.查看当前系统硬盘分区情况;b.监控根分区磁盘容量,小于给定值(该值可由使用者手动设置)时通过邮件向管理员报警;c.计算各账户家目录占用磁盘空间的大小,找出前十名账户,生成一个以当前日期命名的报告。 (4)添加“网络管理”子菜单。其有2项功能:a.测试本地局域网整个网段中哪些主机处于开机状态,哪些主机处于关机状态;b.实时显示本地网卡(使用者可指定)发送的数据包流量。 (5)自动备份功能:要允许设置时间周期,需要备份的源文件目录,生成的归档文件要求是一个以日期时间命名的压缩文件。 (6)添加“文件管理”子菜单。其有3项功能:a. 统计某目录(由使用者指定)下有多少个文件,并显示这些文件名;b. 给某目录下(由使用者指定)的所有文件批量改名;c. 修改指定文件的权限。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值