Linux程序设计报告Word文档格式.doc
《Linux程序设计报告Word文档格式.doc》由会员分享,可在线阅读,更多相关《Linux程序设计报告Word文档格式.doc(22页珍藏版)》请在冰豆网上搜索。
该同学的动手能力:
A.强 □B.中等□C.差□
该同学的上机是否达到要求:
A.达到□ B.基本达到□ C.未达到□
上机实验报告是否规范:
A.规范□ B.基本规范□ C.不规范□
上机实验过程是否详细记录:
A.详细□ B.一般□ C.没有□
注:
5个A为优4个A为良3个A为及格其余为不及格。
教师签名:
年月日
目 录
上机实验一:
虚拟机及Linux安装……………………………………………….2页
上机实验二:
Linux下Shell程序开发……………….…………………………14页
上机实验三:
Linux下多进程多线程程序开发…………………………………20页
上机一:
虚拟机及Linux安装
一、上机目的
1、安装虚拟机
2、在虚拟机上安装RedHatEnterpriseLinux5
二、相关技术阐述
根据四的步骤一步一步安装实现,其中在安装虚拟机过程中用到下面代码:
(1)su
(2)chmod+w/etc/inittab
(3)vi/etc/inittab
(4)reboot
三、所用软件系统
VMwareWorkstation、RedHatEnterpriseLinux5
四、源代码或上机步骤
1、虚拟机(VMwareWorkstation)安装过程
(1)单击VMware-workstation-full-9.0.2-1031769_.exe可执行文件,进入安装:
(2)进入一下界面:
(3)选择安装目录
(4)点击下一步
(5)点击下一步
(6)单击continue
(7)加载过程
(8)输入序列号,进入到下面界面
(9)安装汉化包,一直点击下一步到完成
(10)点击完成后进入RedHatEnterpriseLinux5安装界面,如2-
(1)
2、RedHatEnterpriseLinux5安装
(1)打开VMwareWorkstation安装RedHatEnterpriseLinux5界面
(2)新建虚拟机,然后单击下一步
(3)选择安装包,然后单击next
(4)设置登录信息,单击next
(5)单击next到finish进入安装界面
安装界面
数据加载
进入linux虚拟机界面,登录虚拟机
五、运行结果
(1)输入用户名和密码后回车,开始登录
输入账号:
输入密码:
进到界面:
(2)Application下选择Accessies再选择Terminal终端,进入到终端登录窗口
(3)输入配置命令
[szk@localhost~]$su
Password:
su:
incorrectpassword
[szk@localhost~]$chmod+w/etc/inittab
[szk@localhost~]$vi/etc/inittab
进入权限修改页面:
#4-unused
#5-X11
#6-reboot(DoNOTsetinitdefaulttothis)
#
id:
5:
initdefault:
#Systeminitialization.
将5改为3(按下i可修改):
3:
initdefault
#Runxdminrunlevel5
x:
respawn:
/etc/X11/prefdm-nodaemon
:
wq!
进入重新启动界面:
reboot
进入到编辑页面:
六、分析和结论
通过实验,对虚拟机的安装过程有了一个初步的了解和认识,在实验中对配置文件下的/etc/inittab文件的配置命令有了清楚的了解。
如果需要修改权限则用chmod对其进行修改。
上机二:
Linux下Shell程序开发
1、掌握建立虚拟机并进入编辑界面
2、了解和掌握shell程序的创建、编译、执行全过程
3、在界面中创建shell、C程序,编译、执行
Shell既是命令解释程序,又是一种高级程序设计语言。
Shell是解释型语言,这使得调试工作比较容易进行,因为可以逐步的执行指令,而且节省了重新编译的时间。
一个shell程序,包含了要由shell执行的命令并存放在普通的Linux文件中。
Shell允许使用一些读写存储区,为用户和程序设计人员提供一个暂存数据区的区域,这通常被称为shell变量。
Shell也提供程序流程控制命令,称为语句,它提供了对shell脚本中的命令进行非顺序执行或循环执行的功能。
在Linux中,作为/bin/sh安装的标准shell是GNU工具集中bash。
Windows7、VMwareWorkstation、RedHatEnterpriseLinux5
输入localhost,password进入编辑命令:
1、shell程序:
(1)直接输入bash命令,让bash交互性的执行
[root@localhostroot]#BOOK=”linuxbook”
[root@localhostroot]#MSG=’$BOOK’
[root@localhostroot]#echo$MSG
$BOOK
[root@localhostroot]#echo$BOOKLinuxbook
[root@localhostroot]#msg=’mynameis’
[root@localhostroot]#echo$msg
mynameis
[root@localhostroot]#echo“$msgLinux”
MynameisLinux
[root@localhostroot]#echo\$msg
$msg
(2)建立bash文件,shell编程(使用vi、emacs、gedit、kedit)
编写一个完整的SHELL脚本的步骤是
建立脚本文件(#!
/bin/bash用于指定哪个SHELL程序来进行解释
#代表注释)>
>
执行脚本文件
1)建立脚本文件,并添加可执行脚本文件的权限:
(videmo程序如下)
#!
/bin/sh
forfooinbarbie123fourfive888
do
echo“$foo”
done
exit0
2)执行脚本文件
[root@localhost~]#chmod+xdemo
[root@localhost~]#./demo
(3)建立bash脚本文件,shell程序开发:
fun和fun1程序
#!
foo()
{
echo“Functionfooisexecting”
}
echo“scriptstarting”
foo
echo“scriptended”
运行以上bash脚本文件,得到结果
#!
sample_txt=”globalvarible”
localsample_txt=”localvarible”
echo“Functionfooisexecuting”
echo$sample_txt
echo$sample_txt
(4)输入exit退入编辑环境,然后输入vihello.c进入程序编辑框
1)打开终端,使用vim编辑器来编辑hello.c,输入下列代码在编辑框中:
2)保存:
Esc,然后wq!
进行编译程序使用gcc编译器编辑hello.c程序,编译、链接后生成的可执行程序文件为hello
3)在终端中输入下面命令,运行hello程序,输出结果
五、运行结果
(1)直接输入bash命令,让bash交互性的执行结果
(2)建立bash文件,demo程序执行结果
(3)建立bash脚本文件,shell程序开发:
fun和fun1程序运行结果
(4)hello.c运行结果
通过实验,不但进一步熟悉了Linux的shell编程开发环境,而且在实验的过程中了解到了bash程序分为两种:
一种是bash命令,在运行框内直接输入bash命令;
另一种是通过vix建立一个名为x的bash脚本文件,在脚本文件中,将bash语句输入大脚本文件中,然后保存。
这种情况下的语句不能执行,也就是说该bash脚本文件,只具有读和写的权限,不具有可执行权限,通过chmod+xfilename将权限改为拥有可执行权限,在由./filename执行脚本文件。
同时在实验中对shell的C编程也有了初步的了解。
上机三:
Linux下多进程多线程程序开发
1、进一步熟悉Linux开发环境
2、对linux环境下的C编程进行了解
3、掌握进程的执行原理和能够在Linux环进行编程实现多线程开发
4、掌握线程的基本概念、相关函数及其运用、线程同步互斥
Linux系统下的多线程遵循POSIX线程接口,称为pthread。
编写Linux下的多线程程序,需要使用头文件pthread.h,连接时需要使用库libpthread.a。
顺便说一下,Linux下pthread的实现是通过系统调用clone()来实现的。
clone()是Linux所特有的系统调用,它的使用方式类似fork,关于clone()的详细情况,这里不做太多的介绍。
Windows7、VMwareWorkstation、RedHatEnterpriseLinux5
1、创建一个thread.c的多线程程序
2、编辑源程序代码
3、用gcc编译程序:
用gcc的“-D_REENTRANT-O”选项,将thread.c编译成可执行文件,用“–lpthread”选项来链接pthread线程库,输入如下:
4运行程序./thread
在报告中主要介绍了Linux环境下的多线程编程,从信号量和互斥量、线程属性控制、线程同步、线程终止、取消线程及多线程并发等多方面实现多线程。
在实验中能够明确的感觉到多线程比起单线程运行速度快得很多,多线程的实现为计算机的处理事务的效率提高了很多;
同时在实验中对Linux环境下的C编程进一步熟悉和掌握。
第22页