https://blog.csdn.net/ljianhui/article/details/10253345
实验要求:编写sender和receiver程序,sender创建一个共享内存并等待用户输入,然后把输入通过共享内存发送给receiver并等待,receiver收到后把消息显示在屏幕上并用同样方式向sender发送一个over,然后两个程序结束运行。
这个实验的难点主要在于共享内存的创建和撤销(涉及到的步骤比较多,需要理解各步骤的功能),以及实现两个进程间的相互等待(使用信号量来实现,这里使用了有名信号量)
实验心得:学习理解了linux的共享内存机制以及POSIX信号量机制。
两个实验虽然加强了对linux一些机制的理解,但是感觉对linux的学习还不够,需要继续学习。
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
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)