实验网络上的.docx
- 文档编号:15798261
- 上传时间:2023-07-07
- 格式:DOCX
- 页数:31
- 大小:31.77KB
实验网络上的.docx
《实验网络上的.docx》由会员分享,可在线阅读,更多相关《实验网络上的.docx(31页珍藏版)》请在冰点文库上搜索。
实验网络上的
操作系统实验指导
实验一安装Linux操作系统2
实验二常用Shell命令4
1.目录及文件操作命令4
2.设备管理命令6
3.系统及用户管理命令7
4.其他命令8
实验三文本编辑器9
实验四Linux的进程创建15
实验五进程通信18
实验六处理器调度22
实验七主存空间的分配和回收27
实验八文件系统29
实验一安装Linux操作系统
一、实验内容
安装RedHatLinux9.0操作系统,按照要求进行初始设置。
二、实验目的
1.以安装RedHatLinux9.0为例,学习和掌握Linux操作系统的安装。
2.掌握Linux操作系统的基本系统设置。
3.掌握与Linux相关的多操作系统安装的方法。
三、安装过程
将RedHatLinux9.0安装光盘插入光驱,然后启动计算机,即可从CD-ROM启动Linux
安装程序。
步骤1boot提示
步骤2检查用户系统
步骤3欢迎使用RedHatLinux
步骤4语言选择
步骤5键盘配置
步骤6鼠标配置
步骤7选择安装还是升级
步骤8安装类型
步骤9磁盘分区设置
步骤10自动分区允许用户选择删除哪些数据
步骤11引导装载程序配置
步骤12网络配置
步骤13防火墙配置
步骤14语言支持的选择
步骤15选择时区
步骤16设置根口令
步骤17个人桌面的默认设置
步骤18选择软件包组
步骤19即将安装
步骤20安装软件包
步骤21继续插入系统光盘
步骤22创建引导盘
步骤23视频卡配置
步骤24显示器配置
步骤25定制图形化配置
步骤26安装完成
至此,安装完成。
单击“退出”按钮来重新引导系统。
四、实验报告
1.整个安装工作能否正常进行?
如果不行,可能的原因是什么?
2.安装体会是什么?
和Windows系统的安装比较呢?
实验二常用Shell命令
一.实验目的
熟悉常用的shell命令的格式,并能熟练操作。
二.实验内容
1.目录及文件操作命令
1)more
功能:
显示文件内容
格式:
more[选项]文件...
选项:
-c显示文件之前先清屏
-n行数指定每屏显示的行数
+行号从指定行号开始显示
2)rm
功能:
删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均删除。
对于链接文件,只是断开了链接,原文件保持不变。
格式:
rm[选项]文件…
选项:
-f忽略不存在的文件,从不给出提示。
-r指示rm将参数中列出的全部目录和子目录均递归地删除。
-i进行交互式删除。
3)mv
功能:
为文件或目录改名或将文件由一个目录移入另一个目录中
格式:
mv[选项]源文件或目录目标文件或目录
选项:
-i交互方式操作。
目标文件或目录存在时询问用户是否继续执行操作。
-f禁止交互操作。
4)cp
功能:
文件或目录的拷贝
格式:
–r源文件(source) 目的文件(target)
5)mkdir
功能:
创建一个目录
格式:
mkdir[选项]dir-name
选项:
-m对新建目录设置存取权限。
也可以用chmod命令设置。
-p可以是一个路径名称。
此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可建立多个目录。
6)rmdir
功能:
删除空目录
格式:
rmdir[选项]dir-name
选项:
递归删除目录dirname,当子目录删除后其父目录为空时,也一同被删除。
7)cd
功能:
改变工作目录
格式:
cd[directory]
8)pwd
功能:
显示出当前工作目录的绝对路径。
格式:
pwd
9)ls
功能:
其功能为列出目录的内容
格式:
ls[选项][目录或是文件]
选项:
-a显示指定目录下所有子目录与文件,包括隐藏文件。
-A显示指定目录下所有子目录与文件,包括隐藏文件。
但无“.”和“..”。
-l以长格式来显示文件的详细信息。
每行列出的信息依次是:
文件类型与权限链接数文件属主文件属组文件大小建立或最近修改的时间名字
10)tar
功能:
可以为文件和目录创建档案
格式:
tar[主选项+辅选项]文件或者目录
主选项:
c创建新的档案文件
t列出档案文件的内容
x从档案文件中释放文件
辅助选项:
f使用档案文件或设备,这个选项通常是必选的。
v详细报告tar处理的文件信息。
如无此选项,tar不报告文件信息
z用gzip来压缩/解压缩文件,加上该选项后可以将档案文件进行压缩
但还原时也一定要使用该选项进行解压缩。
2.设备管理命令
1)fdisk
命令1:
fdisk–l功能:
列出系统所有硬盘的信息
命令2:
fdisk-l硬盘功能:
列出相应硬盘信息
命令3:
fdisk硬盘功能:
可对相应硬盘添加、删除分区以及改变分区属性
2)mkfs
功能:
格式化磁盘
格式:
mkfs[-V][-tfstype][fs-options]filesys[blocks]
选项:
-tfstype指定建立某种档案系统
-c在建立前检查是否有坏轨
示例:
mkfs–tvfat/dev/hdb1
3)mount
功能:
挂载某一设备成为某个目录名称
格式:
mount[选项]设备目录
选项:
-a将/etc/fstab中定义的所有档案系统挂上。
示例:
mount/dev/hdb1/mnt/dev
4)umount
功能:
将已安装的文件系统卸下
格式:
umount设备
示例:
umount/dev/hdb1
3.系统及用户管理命令
1)shutdown–hnow
功能:
关闭系统
2)reboot
功能:
重启系统
3)passwd
功能:
修改密码
格式:
passwd用户名
4.其他命令
1)man
功能:
查看指令的使用方法
格式:
man指令名称
2)vi文本编辑器
语法:
vi文件名,可对指定的文件进行编辑
可在vi中使用的命令:
Esc:
按
r:
替换一个字符。
R:
无限制地在一行中替换。
i:
插入模式。
dd:
删除一行。
x:
删除一个字符。
wq:
写文件并退出vi。
q:
退出vi,不存文件。
实验三文本编辑器
一.实验目标
熟练掌握文本文件编辑工具pico、vi、emacs等的按键命令语法及相关操作。
二.实验内容
1.使用pico编辑器创建短小、简单的文件;
2.使用vi编辑器进行较为复杂的文字处理;
3.使用emacs编辑器进行定制。
三.介绍文本文件编辑工具
1.如何使用pico编辑器进行简短编辑
实战演练1:
步骤1:
在shell提示符下,输入pico并按
步骤2:
在pico屏幕的文本区,并将光标置于首行并输入。
ThisistextthatIhaveenteredonalineinthepicoeditor
按
步骤3:
按3次
步骤4:
输入Thisisalineoftextthreelinesdownofthefirshhine.
步骤5:
同时按
步骤6:
在FileNameToWrite提示后输入linespaced.并按
步骤7:
同时按下
步骤8:
在shell提示符下,输入morelinespced并按
表1.1pico中重要的光标移动按键命令
按键命令
动作
<^F>
将光标前移一个字符
<^B>
将光标后移一个字符
<^P>
将光标移到上面一行
<^N>
将光标移到下面一行
<^E>
将光标移到当前行的末尾
<^V>
将光标移到文本下一页
<^Y>
将光标移到文本上一页
表1.2pico中按键命令及其动作
按键命令
动作
<^Shift6>
开始标记一段文本用作剪切文本
<^C>
报告当前光标位置(以所在行号和字符数号形式)
<^G>
访问pico的帮助文本
<^J>
调整所选中段落的文本,使每行排满,与文字处理器中的自动换行(wordwrap)类似
<^K>
剪切选中的文本
<^O>
回写或保存当前的文本到文件中
<^R>
从文件中读取文本并粘帖到光标当前位置
<^T>
校验文本中的拼写错误
<^U>
粘帖所剪切的文本到当前位置
<^V>
将页面下翻一页
<^W>
Whereis功能(在文本中查找字符串)
<^X>
退出(pico允许在退出前保存修改)
<^Y>
将页面上翻一页
2.vi命令的格式和操作模式
实战演练2:
步骤1:
在shell提示符下,输入vifistvi并按
步骤2:
输入A,输入thisisthefisrlineofavifile,并按
步骤3:
输入thisisthelineofavifile.并按
步骤4:
输入isthe3rlineofavi.
步骤5:
按
步骤6:
输入:
w并按
步骤7:
用方向键将光标置于文件第二行的字“line”上的第一字符“1”上.
步骤8:
输入i接着输入2nd.(“”表示空格)
步骤9:
按
步骤10:
用方向键将光标置于文件第三行的任意位置。
步骤11:
输入I,接着输入This_.
步骤12:
按
步骤13:
用方向键将光标置于该行“3r”的字符“r”上。
步骤14:
输入a,接着输入d.
步骤15:
按
步骤16:
输入A,接着输入_file.
步骤17:
按
步骤18:
输入:
wq返回到shell提示符下。
表2.1vi命令语法示例
命令
动作
5dw
从当前光标位置开始删除5个字
7dd
从当前行开始删除7行
7o
在当前行后面打开7个空行
7O
在当前行后面打开7个空行
c2b
修改光标前面两个字
d7,14
将缓冲区第7行~14行删除
1G
将光标置于文件首行
10yy
将后面10行(从当前行开始)复制到临时缓冲区中
表2.2插入模式下的重要按键
按键
动作
在光标所在字符后添加文本
在当前行最后一个字符后面添加文本
开始修改操作,允许更改当前行文本
修改从光标位置开始到当前行末尾范围的内容
在光标所在字符前插入文本
在当前行开头插入文本
在当前行下方打开一空行并将光标置于改空行行首
在当前行上方打开一空行并将光标置于改空行行首
开始覆盖文本操作
替换单个字符
替换整行
表2.3命令模式下的重要命令
命令
动作
d
删除字,行等
u
撤销最近一次编辑动作
p(小写)
在当前行后面粘帖(插入)此前被复制或剪切的行
P(大写)
在当前行前面粘帖(插入)此前被复制或剪切的行
:
rfilename
读取filename文件中的内容并将其插入当前光标位置
:
q!
放弃缓冲区内容,并退出vi
:
wq
保存缓冲区内容,并退出vi
:
wfilename
将当前缓冲区内容保存到filename文件中
:
w!
filename
用当前文本覆盖filename文件中的内容
ZZ
退出vi,仅当文件在最后一次保存后进行了修改,才保存到缓冲区内容
3.使用emacs编辑器获取最大控制
emacs是Linux文本编辑器中最复杂,可定制化程度最高的编辑器,它给你最大的自由度、灵活性和控制权来编辑文本文件。
表3.1重要的emacs命令
命令
动作
退出emacs
取消执行当前命令或命令操作
保存以前从未保存过的缓冲区
保存缓冲区
撤销最后一次编辑,如需要可以使用多次
获取帮助文档
在当前光标位置插入来自其他文件的文本
保留当前视窗,删除所有其他视窗(在帮助文档中有用)
表3.2重要的emacs光标移动和编辑命令
命令
动作
将光标移到缓冲区头
将光标移到缓冲区尾
将光标移到当前行行首
将光标移到当前行行尾
每次将光标前进一字
每次将光标倒退一字
删除当前光标所在处字符
删除当前光标所在处的字
删除光标前面的字
删除从光标所在处至当前行行尾的内容
将删除的内容放回缓冲区
实战演练3:
(利用表3.1和表3.2中给出的命令创建一个文本文件)
步骤1:
在shell提示符下,输入emacsalien并按
(文件alien为上述示例创建的文本文件)
步骤2:
用方向键将光标置于文件第3行末尾的引号(”)字符右边。
步骤3:
按
步骤4:
输入alicedir/w=”ls”。
步骤5:
同时按
光标移到当前行行首。
步骤6:
同时按
从缓冲区中剪切掉字alice。
步骤7:
输入alias。
步骤8:
同时按
光标移到字alias的开头字符。
步骤9:
用方向键将光标置于第一空白行开头,即在aliastype=”more”那一行下面。
步骤10:
同时按
刚才被剪切的字alice放回到当前行行首。
步骤11:
如果光标不在alice字尾,用方向键将其置于字alice的末尾。
步骤12:
用
步骤13:
输入ascopy=“cp”。
步骤14:
同时按
步骤15:
在Writefile:
提示符在,用
步骤16:
同时按
在那块小的显示区域里,显示了关于获取帮助的提示信息。
同时按
这样做,取消了帮助请求。
步骤17:
同时按
实验四Linux的进程创建
一、实验目的
(1)加深对进程概念的理解,明确进程和程序的区别;
(2)进一步认识并发执行的实质;
(3)掌握使用Linux命令管理和操作进程的方法。
二、实验预备知识
(1)阅读Linux的sched.h源码文件,加深对进程管理概念的理解。
(2)阅读Linux的fork.c源码文件,分析进程的创建过程。
三、实验内容
(1)进程的创建
编写一段程序,使用系统调用fork()创建两个子进程。
当此程序运行时,在系统中有一个父进程和两个子进程活动。
让每个进程在屏幕上显示一句话和进程ID,试观察记录屏幕上的显示结果,并分析原因。
(2)创建进程扇、进程链和进程树。
(3)使用fork-exec组合,用新创建的进程执行一个新的任务。
(4)使用一些Linux命令操作和管理进程。
四.实验报告
1.写出源程序及运行结果。
2.根据运行结果,绘制出进程扇、进程链和进程树,并进行分析。
五.系统调用函数、参数说明及定义
1.fork()创建一个新进程
intfork()
返回:
子进程中为0,父进程中为子进程id,出错为-1
2.voidexit(intstatus);无返回参数0正常结束,1异常结束
3.intexecl(char*pathname,char*arg0,…,char*argn,(char*)0);
第一个是路径名,后面的是命令行参数,最后以空指针结尾。
返回:
若出错为-1,成功无返回。
4.pid_twait(int*status);
返回:
若成功则为进程ID,若出错为-1。
六.程序示例
1.使用fork()创建进程
#include
#include
#include
main()
{pid_tpid;
pid=fork();
if(pid==0)
{printf(“Hello,I’machildprocess.\n”);
}else{printf(“Hello,I’maparentprocess.\n”);
}
exit(0);
}
2.创建进程扇
#include
#include
#include
main(void)
{inti,n=5;
pid_tpid;
for(i=1;i if((pid=fork())==0)break;//子进程满足,不再执行循环 fprintf(stderr,“Thisisprocess%ldwithparent%ld\n”,getpid(),getppid()); sleep (2);//睡眠2秒,等待子进程 exit(0); } 3.fork-exec组合 #include #include #include #include #include #include voidmain() { pid_tpid; intstatus;//等待的退出状态 pid=fork(); if(pid==-1){perror(“Forkfaildtocreataprocess”); exit (1); }elseif(pid==0){ if(execl(“/bin/ls”,“ls”,“-l”,NULL)<0)//子进程执行“ls” {perror(“Execfaild”);exit (1);} }elseif(pid! =wait(&status)) perror(“Asignaloccurredbeforethechildexited”); exit(0); } 实验五进程通信 一.实验目的 (1)了解Linux系统中进程通信的基本原理。 (2)了解和掌握管道通信机制。 (3)了解和熟悉消息通信机制、共享存储区机制以及信号通信机制。 二.实验内容 1.编写一段程序,实现进程的管道通信。 使用系统调用pipe()建立一条管道,创建两个子进程P1和P2。 让P1和P2分别向管道各写一句话: Child1issendingamessage! Child2issendingamessage! 父进程则从管道中读出来自于两个子进程的信息,显示在屏幕上。 要求父进程先接受子进程P1发来的消息,然后再接受子进程P2发来的消息。 2.消息的创建、发送和接受。 使用系统调用msgget()、msgsnd()、msgrev()及msgctl()编制一长度为1K的消息的发送和接受程序。 3.共享存储区的创建、附接和断接。 (选做) 使用系统调用shmget()、shmat()、shmdt()及shmctl()编制一个与上述功能相同的程序。 4.编制一段程序,使其实现进程的软中断通信。 (选做) 创建两个子进程,让父进程捕捉键盘上来的中断信号(即“ctrl+C”),当捕捉到信号后,父进程使用系统调用Kill()向两个子进程发出信号,子进程捕捉到信号后分别输出下列信息后终止 Childprocess1iskilled! Childprocess2iskilled! 父进程等待两个子进程终止后,输出如下的信息后终止: Parentprocessiskilled! 三.实验报告 1.写出源程序及其运行结果。 2.分析实验结果。 1.管道通信有什么特点? 四.程序示例 1. 消息队列的编程示例: #include #include #include #include voidmain() { intkey; intmsgid; inti; msgbufmq_buf; msgid=msgget(IPC_PRIVATE,IPC_CREAT|0666);//创建消息队列 printf("messagequeuemsgid=%d\n",msgid); if(msgid==-1) {perror("msgget(access)"); exit (1);} printf("Sendingaprintmessage....\n"); mq_buf.mtype=1;//设置消息内容 sprintf(mq_buf.mtext,“printamessage”); if(msgsnd(msgid,(structmsgbuf*)&mq_buf,sizeof(“printamessage”)+1,0)==-1) {perror("msgsend"); printf("Errorsendingmessage\n"); exit (1); }//发送消息 mq_buf.mtext[0]=0; i=msgrcv(msgid,(structmsgbuf*)&mq_buf,80,1,IPC_NOWAIT); //接收消息其中1为msgtype的值 if(i==-1) {print
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验 网络