linux程序设计报告

上传人:suns****4568 文档编号:90802904 上传时间:2019-06-19 格式:DOC 页数:22 大小:6.34MB
返回 下载 相关 举报
linux程序设计报告_第1页
第1页 / 共22页
linux程序设计报告_第2页
第2页 / 共22页
linux程序设计报告_第3页
第3页 / 共22页
linux程序设计报告_第4页
第4页 / 共22页
linux程序设计报告_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《linux程序设计报告》由会员分享,可在线阅读,更多相关《linux程序设计报告(22页珍藏版)》请在金锄头文库上搜索。

1、昆明理工大学信息工程与自动化学院学生上机报告( 2012 2013 学年 第 二 学期 )课程名称:Linux程序设计开课实验室:呈贡校区信自楼444 2013年5 月 6 日年级、专业、班计科102学号 姓名成绩实验项目名称Linux程序设计上机报告指导教师欧阳鑫教师评语该同学是否了解相关理论: A.了解B.基本了解C.不了解该同学的动手能力: A.强 B.中等 C.差 该同学的上机是否达到要求 : A.达到 B.基本达到C.未达到上机实验报告是否规范: A.规范 B.基本规范C.不规范上机实验过程是否详细记录: A.详细 B.一般 C.没有 注:5个A 为优 4个A为良 3个A 为及格 其

2、余为不及格。教师签名: 年 月 日目录上机实验一:虚拟机及Linux安装.2页上机实验二:Linux下Shell程序开发.14页上机实验三:Linux下多进程多线程程序开发20页上机一:虚拟机及Linux安装一、上机目的1、安装虚拟机2、在虚拟机上安装Red Hat Enterprise Linux 5二、相关技术阐述 根据四的步骤一步一步安装实现,其中在安装虚拟机过程中用到下面代码: (1)su(2)chmod +w /etc/inittab (3)vi /etc/inittab (4)reboot三、所用软件系统VMware Workstation 、Red Hat Enterprise

3、Linux 5四、源代码或上机步骤1、虚拟机(VMware Workstation)安装过程(1) 单击VMware-workstation-full-9.0.2-1031769_.exe可执行文件,进入安装:(2)进入一下界面:(3)选择安装目录(4)点击下一步(5)点击下一步(6)单击continue (7)加载过程(8)输入序列号,进入到下面界面(9)安装汉化包,一直点击下一步到完成(10)点击完成后进入Red Hat Enterprise Linux 5安装界面,如2-(1)2、Red Hat Enterprise Linux 5安装(1)打开VMware Workstation安装R

4、ed Hat Enterprise Linux 5界面 (2)新建虚拟机,然后单击下一步(3)选择安装包,然后单击next(4)设置登录信息,单击next(5)单击next到finish进入安装界面安装界面 数据加载进入linux虚拟机界面,登录虚拟机 五、运行结果(1)输入用户名和密码后回车,开始登录输入账号:输入密码:进到界面:(2)Application下选择Accessies再选择Terminal终端,进入到终端登录窗口(3)输入配置命令szklocalhost $ suPassword: su: incorrect passwordszklocalhost $ chmod +w /e

5、tc/inittabszklocalhost $ vi /etc/inittab进入权限修改页面:# 4 - unused# 5 - X11# 6 - reboot (Do NOT set initdefault to this)#id:5:initdefault:# System initialization.将5改为3(按下i可修改):id:3:initdefault# Run xdm in runlevel 5x:5:respawn:/etc/X11/prefdm -nodaemon:wq!进入重新启动界面:reboot进入到编辑页面:六、分析和结论通过实验,对虚拟机的安装过程有了一个初

6、步的了解和认识,在实验中对配置文件下的/etc/inittab文件的配置命令有了清楚的了解。如果需要修改权限则用chmod对其进行修改。上机二:Linux下Shell程序开发一、上机目的1、掌握建立虚拟机并进入编辑界面2、了解和掌握shell程序的创建、编译、执行全过程3、在界面中创建shell、C程序,编译、执行二、相关技术阐述 Shell既是命令解释程序,又是一种高级程序设计语言。Shell是解释型语言,这使得调试工作比较容易进行,因为可以逐步的执行指令,而且节省了重新编译的时间。一个shell程序,包含了要由shell执行的命令并存放在普通的Linux文件中。Shell允许使用一些读写存

7、储区,为用户和程序设计人员提供一个暂存数据区的区域,这通常被称为shell变量。Shell也提供程序流程控制命令,称为语句,它提供了对shell脚本中的命令进行非顺序执行或循环执行的功能。在Linux中,作为/bin/sh安装的标准shell是GNU工具集中bash。三、所用软件系统Windows7、VMware Workstation 、Red Hat Enterprise Linux 5四、源代码或上机步骤输入localhost,password进入编辑命令:1、shell程序: (1)直接输入bash命令,让bash交互性的执行rootlocalhost root#BOOK=”linux

8、 book”rootlocalhost root#MSG=$BOOKrootlocalhost root#echo $MSG$BOOKrootlocalhost root#echo $BOOK Linux bookrootlocalhost root#msg=my name isrootlocalhost root#echo $msgmy name isrootlocalhost root#echo “$msg Linux”My name is Linuxrootlocalhost root#echo $msg$msg (2)建立bash文件,shell编程(使用vi、emacs、gedit、

9、kedit) 编写一个完整的SHELL脚本的步骤是建立脚本文件(#!/bin/bash 用于指定哪个SHELL程序来进行解释 # 代表注释)执行脚本文件1 ) 建立脚本文件,并添加可执行脚本文件的权限:(vi demo程序如下) #!/bin/sh for foo in bar bie 123 four five 888 do echo “$foo”doneexit 02 )执行脚本文件rootlocalhost #chmod +x demorootlocalhost #./demo (3)建立bash脚本文件,shell程序开发:fun和fun1程序 #!/bin/sh foo() echo

10、 “Function foo is execting”echo “script starting”fooecho “script ended”exit 0运行以上bash脚本文件,得到结果#!/bin/shsample_txt=”global varible” foo() local sample_txt=”local varible” echo “Function foo is executing” echo $sample_txtecho “script starting”echo $sample_txtexit 0(4)输入exit退入编辑环境,然后输入vi hello.c进入程序编辑框

11、1)打开终端,使用vim编辑器来编辑hello.c,输入下列代码在编辑框中:2)保存:Esc,然后wq!进行编译程序使用gcc编译器编辑hello.c程序,编译、链接后生成的可执行程序文件为hello3) 在终端中输入下面命令,运行hello程序,输出结果五、运行结果(1)直接输入bash命令,让bash交互性的执行结果(2) 建立bash文件,demo程序执行结果(3)建立bash脚本文件,shell程序开发:fun和fun1程序运行结果 (4)hello.c运行结果六、分析和结论通过实验,不但进一步熟悉了Linux的shell编程开发环境,而且在实验的过程中了解到了bash程序分为两种:一

12、种是bash命令,在运行框内直接输入bash命令;另一种是通过vi x建立一个名为x的bash脚本文件,在脚本文件中,将bash语句输入大脚本文件中,然后保存。这种情况下的语句不能执行,也就是说该bash脚本文件,只具有读和写的权限,不具有可执行权限,通过chmod +x filename 将权限改为拥有可执行权限,在由./filename执行脚本文件。同时在实验中对shell的C编程也有了初步的了解。上机三:Linux下多进程多线程程序开发一、上机目的 1、进一步熟悉Linux开发环境 2、对linux环境下的C编程进行了解 3、掌握进程的执行原理和能够在Linux环进行编程实现多线程开发

13、4、掌握线程的基本概念、相关函数及其运用、线程同步互斥二、相关技术阐述 Linux系统下的多线程遵循POSIX线程接口,称为pthread。编写Linux下的多线程程序,需要使用头文件pthread.h,连接时需要使用库libpthread.a。顺便说一下,Linux下pthread的实现是通过系统调用clone()来实现的。clone()是Linux所特有的系统调用,它的使用方式类似fork,关于clone()的详细情况,这里不做太多的介绍。三、所用软件系统 Windows7、VMware Workstation 、Red Hat Enterprise Linux 5四、源代码或上机步骤 1、创建一个thread.c的多线程程序 2、编辑源程序代码3、用gcc编译程序:用gcc的“-D_REENTRANT -O”选项,将thread.c编译成可执行文件,用“lpthread”选项来链接pthread线程库,输入如下:4运行程序./ thread五、运行结果六、分析和结论 在报告中主要介绍了Linux环境下的多线程编程,从信号量和互斥量、线程属性控制、线程同步、线程终止、取消线程及多线程并发等多方面实现多线程。在实验中能够明确的感觉到多线程比起单线程运行速度快得很多,多线程的实现为计算机的处理事务的效率提高了很多;同时在实验中对Linux环境下的C编程进一步熟悉和掌握。第22页

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号