实验二Linux进程调度及用户管理.pdf
实验二实验二1 1 实验名称:实验名称:LinuxLinux进程调度及用户管理进程调度及用户管理2 2 实验目标实验目标2.1 掌握手工启动前后台作业的方法。2.2 掌握进程与作业管理的相关Shell 命令。2.3 掌握 at 调度和 cron 调度的设置方法。了解系统性能监视的基本方法。2.5 掌握用户管理基本方法和命令。2.6 具有批量新建用户能力。掌握非实时的通信方式。3 3 实验环境和准备实验环境和准备Windows XP 下基于“VMware Workstation”虚拟机环境的 Red Hat Enterprise Linux Server 5系统。3.2 将主机改为具有个人学号后3 位特征的名称。4 实验要求、步骤及结果实验要求、步骤及结果vi 的基本操作;实现用户间非实时通信;进行作业和进程的基本管理。;存盘退出。内容参见下表左列。S01:x:800:800:/home/S01:/bin/bashS02:x:801:800:/home/S02:/bin/bashS03:x:802:800:/home/S03:/bin/bashS04:x:803:800:/home/S04:/bin/bashS05:x:804:800:/home/S05:/bin/bashS06:x:805:800:/home/S06:/bin/bashS07:x:806:800:/home/S07:/bin/bashS08:x:807:800:/home/S08:/bin/bashS09:x:808:800:/home/S09:/bin/bashS10:x:809:800:/home/S10:/bin/bashS11:x:810:800:/home/S11:/bin/bash【操作步骤1-新建】【操作步骤2-存盘】S01:12345678S02:12345678S03:12345678S04:12345678S05:12345678【操作要求 2;内容参见上表右列。【操作步骤】【操作要求 3】将 vi 作业挂起;显示当前所有进程的详细信息。学习文档 仅供参考【操作步骤1-挂起】【操作步骤2-显示】【操作要求 4】将挂起的 vi 作业切换到前台;继续向 password.txt 文件输入以下内容,输入完成后存盘退出。password.txt 文件的后段内容:S06:12345678S07:12345678S08:12345678S09:12345678S10:12345678S11:12345678【操作步骤1-作业切换】学习文档 仅供参考【操作步骤2-vi操作】【操作要求 5】返回虚拟终端 1root 用户;将 helen 用户的进程优先数改为-3。【操作步骤】学习文档 仅供参考【操作要求 6】返回虚拟终端 2helen 用户;后台再次启动 ftp 进程;显示进程的详细信息。【操作步骤 1-启动进程】【操作步骤 2-显示进程】4.2 基本用户管理和组群管理【操作要求 1】创建 student 用户;启动虚拟终端 3,用 student 用户登录;修改自己的登录口令。【操作步骤-创建】【操作步骤-修改口令】【操作要求 2】将普通用户 student 切换为超级用户并使用相应环境,比较超级用户和普通用户工作环境。【操作步骤】【工作环境比较】工作环境命令提示行普通用户 student超级用户 root学习文档 仅供参考用户主目录【操作要求 3】新建名为“class15”的组群,GID=800。【操作步骤及结果】批量新建多个用户帐号【操作要求 4】利用 vi 命令,修改/etc/hosts 文件的最后一列的内容与现主机名相同。学习并利用“mail”命令向 student 用户发送一封邮件,内容为“Please hand in the experimental report.”,主题“Urgethe experimental report.”,并抄送给 helen 用户。【操作步骤 1-vi】【操作步骤 2-学习】【操作步骤 3-发邮件】学习文档 仅供参考【操作要求 5】启动虚拟终端 2;helen 用户登录,接收、阅读邮件,并回复“I know”;后台启动 ftp 进程;显示进程的优先级。【操作步骤1-收邮件并回复】【操作步骤2-启动进程】【操作步骤3-显示优先级】【操作要求 6】删除 student 用户同时删除其个人用户主目录。【操作步骤-删除用户】4.3 批量新建多个用户帐号【操作要求 1】为某学习小组的 10 位同学批量创建用户账号。用户账号为“S”+2 位顺序号,即S01S11,初始口令均为“12345678”,且均隶属于 GID 为 800 的组群、假设 UID 从 800 开始顺序编号。学习文档 仅供参考注:用户信息保存在中,口令保存在中。参见本文件【截取/etc/group 相关内容】【操作步骤 1】【截取/etc/passwd 相关内容】提示:cat 命令,截取 UID=500 内容学习文档 仅供参考【截取/etc/shadow 相关内容】【操作步骤 2】【截取/etc/passwd 相关内容】【截取/etc/shadow 相关内容】学习文档 仅供参考【操作步骤 3】【截取/etc/passwd 相关内容】【截取/etc/shadow 相关内容】【操作步骤 4】学习文档 仅供参考【截取/etc/passwd 相关内容】【截取/etc/shadow 相关内容】【抄写第一行和最后一行内容】学习文档 仅供参考St001:x:800:800:/home/st001:/bin/bashSt010:x:800:800:/home/st010:/bin/bash【抄写文件第一行和最后一行内容】St001:12345678St010:12345678【操作要求 2】启动虚拟终端 3,S10 登陆。【截取登陆界面】4.4 at 进程调度【操作要求 1】设置一个 10 分钟后执行的 at 调度。要求:统计系统中登录用户数,并将结果保存到 who.txt文件中;向所有登录用户发送“The Computer Will Shutdown in 5 Minutes!”的消息;并在 5 分钟后重新启动系统。【操作步骤-设置at调度】【操作步骤-at 命令】【操作要求 2】显示进程详细状态;显示等待中的at 调度。【操作步骤 1-显示进程】学习文档 仅供参考【操作步骤 2-显示 at 调度】【操作要求 3】删除等待中的 at 调度。【操作步骤】4.5 cron 进程调度【操作要求 1】查看系统时间。设置crontab 调度,时间节点依照上课时间而变,主要还是要看到执行结果每天晚上 8:50 查看系统中进程的状态;每周一五的 9:00 统计登入用户数并保存在文件中。每月 13,18,20 日 16:55 向各位登录用户发送“Pleas submit financial statement.”信息。【操作步骤 1-查看系统时间】【操作步骤 2-设置 cron 调度】【操作要求 2】显示 crontab 调度的内容。【操作步骤及结果】学习文档 仅供参考【操作要求 3】查看 crontab 调度的执行结果。【操作步骤及结果截图】【操作步骤及结果截图】【操作步骤及结果截图】5 5 评价评价实验评价实验评价实验涉及到了上课的所有内容,设计十分全面和周到。不仅让我们回忆了自己学习过的知识,稳固了相关知识,同时又有关于进程的阅读要求,扩展了视野。整个实验重点在于了解 Linux 操作系统的桌面环境和掌握基本shell 命令的使用。知识点在课堂上上机操作的时候老师教过,但还有一部分的题需要我们自己学习老师发的辅导资料完成实验,这其中就考验了我们的自觉性。我们遇到不懂的问题可以问同学或者上网查但绝对不可以直接不动脑子的放弃或抄。比方:最后一个题目中编辑用户信息文件和用户口令文件的格式不太懂,我经过网上搜查资料,彻底搞懂之后完成题目。6 6 思考题思考题。线程是指进程内的一个执行单元,也是进程内的可调度实体。进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位。线程和进程的区别在于,学习文档 仅供参考子进程和父进程有不同的代码和数据空间,而多个线程则共享数据空间,每个线程有自己的执行堆栈和程序计数器为其执行上下文。多线程主要是为了节约CPU 时间,发挥利用,根据具体情况而定。线程的运行中需要使用电脑的内存资源和CPU。6.2 Linux 操作系统可以描述进程的哪几种状态。运行状态正在使用 CPU、就绪状态等待分配 CPU、堵塞状态等待输入/输出等6.3 简述从“程序”到“作业”再到“进程”的动态演变过程。“程序”正准备进入到内存,被称之为“作业”。然而当这个作业进入到内存后,称之为“进程”。程序被加载到内存,首地址送入程序计数器。作业从外存的后备队列进入内存的就绪队列等待运行,依照某种算法将外存上处于后备队列中的假设干个作业调入内存,PCB 记录进程当前时刻的状态及与其它进程、资源的关系,系统中所有PCB 构成控制并发程序执行,维护系统环境的依据。学习文档 仅供参考