实验名称: Linux观察行为
实验时间:年 月 日
实验人员: (姓名) (学号) (年级)
实验目的: 掌握监视系统的几个Linux基本命令以及其他常用命令,学习linux内核,进程,存储和其他资源的一些重要特征,熟悉/proc虚拟文件系统。
实验环境: linux
实验步骤:
1. 用帐户root,密码123456登陆linux系统
2. 运行ps、man ps、cal、date、clear、who、which命令,观察输出结果
3. 运行/proc文件系统的相关命令(参见以下实验陈述3),观察输出结果
实验陈述:
1、基础知识:
为什么说/proc是一个虚拟文件系统:
proc文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间。
该文件的作用:
它以文件系统的方式为访问系统内核数据的 *** 作提供接口。用户和应用程序可以通过 proc得到系统的信息,并可以改变内核的某些参数。
2、写出下列运行指令的结果(在终端里原样输入命令即可得到结果)
cal: 返回当前年月日历
who am I:返回当前用户信息
find /usr -name "clear":
返回 一直到/clear的路径 如:/use/bin/clear
which ls: alias ls='ls --color=tty'
/bin/ls
3、完成下列liunx机器问题(/proc文件系统)
² CPU的类型和型号
Ø指令:cat /proc/cpuinfo
Ø结果:(原样输入指令即可得到结果)
² 使用的Linux内核版本、编译器版本
Ø指令:cat /proc/version
Ø结果:(原样输入指令即可得到结果)
² 配置了多少内存
Ø指令:cat /proc/meminfo
Ø结果:
MemTotal项就是总的内存.
² 当前有多少可用内存
Ø指令:cat /proc/meminfo
Ø结果:
MemFree项就是可用内存.
² 有多少磁盘读写请求
Ø指令:cat /proc/stat
Ø结果:
disk_io项
² 从系统启动以来已经创建了多少进程
Ø指令:cat /proc/stat
Ø结果:
processes项即为总的线程数
实验总结:...
1-for dir in "a_sub b_sub"
do
cd $dir
ls -1 *.c
ls -1 *.o
cd ..
done
2-
str=`df /home |grep home|cut -c 51-`
for used in $str
do
per_use=$used
break
done
num=`echo $per_use|cut -d'%' -f1`
if [ $num -lt 50 ]
then
echo "用户文件系统磁盘使用负荷量小"
else
if [ $num -lt 90 ]
then
echo "用户文件系统磁盘使用负荷量正常"
else
echo "用户文件系统磁盘使用负荷量偏大"
fi
fi
3-假设文件内容如下:
class 1
100
98
80
class 2
99
96
90
class 3
100
60
50
cnt=0
sum=0
while read a
do
if echo $a|grep class >/dev/null
then
if [ $cnt -ne 0 ]
then
avg=`expr $sum / $cnt`
echo "$old_class's average: $avg"
fi
cnt=0
sum=0
old_class=$a
else
cnt=`expr $cnt + 1`
sum=`expr $sum + $a`
fi
done <score.txt
if [ $cnt -ne 0 ]
then
avg=`expr $sum / $cnt`
echo "$old_class's average: $avg"
fi
一、实验目的:进一步认识并发(并行)执行的概念,区别顺序执行和并发(并行)执行。
分析进程争用临界资源的现象,学习解决进程排斥的方法。
二、实验环境:
一台至少具有256MB内存的计算机,并安装Red Hat Linux 9的Linux *** 作系统。
三、实验内容:
1. 预备知识
fork函数调用:创建一个新进程。
getpid函数调用:获得一个进程的pid。
lockf系统的调用:在进程同步控制中为进程加锁。
2. 编写一段程序(程序名为fork1.c),使用系统调用fork()创建两个子进程。当此程序运行时,在系统中有一个父进程和两个子进程活动。让每一个进程在屏幕上显示一个字符:父进程显示字符“a”,子进程分别显示字符“b”和字符“c”。试观察记录屏幕上的显示结果,并分析原因。
(1)进入Linux *** 作系统。
(2)打开终端。进入vi编译器。
(3)输入源程序代码。
(4)按Esc键,进入命令模式后,输入“: wq文件名”就可以运行该程序了。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)