Linux设计报告要点_第1页
Linux设计报告要点_第2页
Linux设计报告要点_第3页
Linux设计报告要点_第4页
Linux设计报告要点_第5页
已阅读5页,还剩13页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、广西大学计算机与电子信息学院课程设计报告(2015 2016年度第一学期)名 称: UNIX 程序设计课程设计 题 目 UNIX程序设计课程设计 院系:计算机与电子信息学院班级:计科132班学号:1307300358学生姓名:郭江达指导教师:葛志辉设计周数:2周成绩:日期: 2015年 12月 27日目录1. 设计任务 . 12. 设计步骤 . 12.1 开发环境配置 . 12.2 开发工具 . 23. 程序开发步骤 . 44. 遇到的问题及相应解决办法 125. 个人体会及建议. 13参考文献 . 131. 设计任务设计题目、任务及完成情况的大致说明,让老师能够了解你所做工作的大体情况。(每

2、个人都要独立完成下面三个题目,不要相互抄袭!切记!)1、完成Linux下的shell编程,要利用shell编程实现某一个具体的功能。2、 完成Linux下的C语言编程,要求至少包括两个文件,比如一个test.c,test.h test.h中包含了 test.c中的声明,分别利用gcc和makefile进行编译。3、完成Linux下PHP+MySQL的编程,能够完成一个简单的具有数据库存储功能 的网站。2. 设计步骤2.1开发环境配置2.1.1 Shell编程的开发环境Shell编程的开发环境不需要什么配置,只需在 Linux系统的终端进行即可2.1.2 C语言编程的开发环境C语言在Linux系

3、统下编程,需要dev安装包,用于编译C语言在终端下输入“ sudo apt-get in stall Iibc6-dev”进行下载,在下载之前需要输入登录密码,之前已经下载好了,如下图所示:ei/makefile > sudo apt-get install libc6-dev sudo password for guojiangda: Reading package lists., r DoneBuilding dependency treeReading state infdrmation”. Done libc6-dev is already the newest 蚁巳rsiun.

4、 0 upgraded, 0 neuly installed, 0 to remove and 857 not upgraded. guojiangda<guojiangda-virtual-machinei/naKef ile >下载好后,系统会自动安装,安装完成便可在终端编译C语言程序了2.1.3 Linux下PHP+MySQL编程的开发环境这是在ubuntu上搭建LAMP,需要安装“ php5”,“ mysql”,“即ache2和“ phpmyadm in”,如下图所示:datguoj iangda-virtua 1-machine:/makef ile >Readin

5、g packag巳 丄DoneBulldlng dependenuy treeReading state informat ion. Done phpS is already the n已nest version.0 upgradedh 0 neuuly installed, 0 to remove and 857 ie z/rnake-f ile >Reading package lists.,. DoneBuilding dependency treeReading state informat ion. DoneE: Unable to Id匚ate package 叫占qlEua

6、jiangdaguoJiangda-virtua 1-machin已;/rnakefile >Read!ng package lists.,* Don已Building dependency treeReading state information. Done apa匚is already the neuiest version, 0 upgrad已d, 0 门已uily installed, 0 to remove and S57 ua 1-mach ine: /makef i le >Reading package lists, DoriEBuilding die pende

7、ncy treeReading state information,. Done phpmyadmin is already the neuest version.0 upgraded, 0 newly installed, 0 to remove and 857 tual-machin已:"/make-file >sudo apt-get installnot upgraded*sudo apt-get installsudo apt-get installnot upgraded.sudo apt-get Installnot upgradedphp5myscilapach

8、已2phpnKjadinin2.2开发工具2.2.1 VMware Workstation 12 虚拟机VMware Workstation 12虚拟机简介:著名的虚拟机软件。不需要分区或重开机就能在同一台PC上使用两种以上的操作系统,完全隔离并且保护不同OS的操作环境以及所有安装在OS上面的应用软件和资料,不同的 OS之间还能互动操作,包括网络、周边、文件分享以及复制贴上功能等。安装方法:1. 下载虚拟机可执行文件 VMware-workstation-full-12.1.0-3272444.exe2. 点击运行,按照安装教程安装即可。使用方法:打开虚拟机,在“文件”菜单中选择“新建虚拟机”

9、,然后弹出“新建虚拟机 向导”,然后参照虚拟机安装步骤进行安装即可。2.2.2 Linux 系统Li nux Mi nt 简介:Linux Mi nt 是一份基于Ubu ntu的发行版,其目标是提供一种更完整的即刻可用体验,这包括提供浏览器插件、多媒体编解码器、 对DVD播放的支持、Java和其他组件。它与Ubuntu软件仓库兼容。Linux Mint 是一个为pc和X86电脑设计的操作系统因此,一个可以跑得动Windows的 电脑也可以使用 Linux Mint 来代替 Windows,或者两个都跑。既有 Windows又有Linux的系统就是传说 中的“双系统”。安装方法:1. 下载 Li

10、nux 系统镜像文件 linuxmint-17-kde-dvd-64bit.iso ;2. 在虚拟机中新建一个虚拟机,通过安装教程安装即可;使用方法:直接运行即可。2.2.3 devdev简介:编译C语言程序的一个软件。安装方法:在终端上输入sudo apt-get install Iibc6-dev,然后系统提示输入密码,输入后即可下载并自动安装。使用方法:编写好C语言代码后,利用gcc或makefile方法便可编译运行。2.2.4 Apache2+php5+mysqlApache2简介:Apache2.X版本比老版本更加强大,更具可扩展性。 一个多线程/多进程的混合模块使它可以充分利用各种

11、规模的主机性能(从一台只运行小型站点的典型X86服务器到同时运行多个虚拟实例的大型主机),这正是Apache1.3所缺乏的。新版本以插件的形式提供了对一些特定平台和几个通用模块的支持。对IPV6的官方支持已经为互联网的升级做好了准备,对HTTP1.1的支持提高了代理服务器的性能。PHP5简介:PHP是一种简单、轻便的服务器端脚本语言。PHP最初是作为一个快速、实用的工具包出现的。随着MySQL数据库的发展,PHP5还绑定了新的 MySQLi扩展模块,它提供了一些更加有效的方法和实用工具用于处理数据库操作。这些方法大都以面向对象的方式实现,同时 也极大地提高了基于数据库的Web项目的执行速度。另

12、外,PHP5中还改进了创建动态图片的功能,能够支持多种图片格式(如PNG、GIF、TTIF、JPGE等)。PHP5以及内置了对 GD2库的支持,因此安装GD2库(主要指UNIX系统中)也不再是件难事,这使得处理图像十分简单和高效。大多 数Web程序开发者依然将 XML作为一个彻底的简单数据库使用。PHP5中也采用了一系列简单易用、功能强大的方法处理XML文档。MySQL简介:MySQL是一个关系型数据库管理系统。MySQL最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS (Relational Database Management System 关系数据库

13、管理系统)应用软件之一。MySQL是一种关联数据库管理系统,关联数据库将数据保存 在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言。MySQL软件采用了双授权政策(本词条授权政策”),它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放 源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库。由于其社区版的性能卓越,搭配PHP和Apache可组成良好的开发环境。安装方法: 在ubuntu环境下搭建 apache2 + MySQL +PHP同时安装 mysql管理软件phpm

14、yadmin。 首先下载安装apache2 输入:sudo apt-get in stall apache2安装完毕后,在浏览器中输入:localhost显示如下图,说明安装正确。紧接着安装php5输入:sudo apt-get in stall php5安装完毕后,再安装 MySQL输入:sudo apt-get in stall mysql-server紧接着安装 phpmyadmin输入:sudo apt-get in stall phpmyadm in根据提示选择,选择apache2再输入root密码和数据库密码紧接着改写/var/www目录的权限。方便日后编辑网站文件。输入:sudo

15、 chmod 777 /var/www最后创建phpmyadmin链接。输入:sudo In -s /usr/share/phpmyadm in /var/www/html/现在在浏览器中输入:localhost/phpadmi n登陆后就能正确显示管理界面。使用方法:在浏览器中输入“ localhost/phpmyadmin "即可进入MySQL进行操作3. 程序开发步骤3.1 Shell编程开发步骤:1.进入终端输入用户名和密码,登录到 Li nux Mi nt系统;Linux Mint 17 Qiana gunjiangda-virtual-machine ttylguojia

16、ngda-virtual-ma匚hi门巳 login: guojiangda Password:Last login: Sun Dec 27 22:28:10 HKT 2015 on ttylWelcome to Linux Mint 17 Qiana (GNU/Linux 3,13.0-24-generi匚 x86_64)Welcome to Linux Mint* Documentat ion: http:/wwuu.l inuxmint. com-virtual-machine > Isioji日ngdaaguojiangd3-irtu日1m日chi门巳:>2. 在当前文件夹

17、创建新文件夹“ shell” ;(通过“ mkdir shell”创建)3. 在“ shell ”文件夹下创建一个文件“ number”;(通过“ Is > number”创建)Helcome to Linux Hint* Documentations http:/uuujw1 inuxmint.conn guojiangdaeguojiangdauirtu日lnrachin巳:"> Isline:> cd shell uojiangdauoj iangda-virtual-machine: /shell > Is numberguojiangda电gunji

18、日ngd日一virtu日日chin巳:"/shEll > .4.打开“ number”文件编写shell程序;(通过“vim number”打开文件进行编辑)4!/bin/bash filename:number x-0njhile -It 10 do汽二+1y=uuhile -It doecho -n 1111y= 4-1doneechodone5.编写并保存好shell程序后,输入“chmod u+x number”后回车再输入“./number” 即可执行shell程序;:'"/shell > chmod u+x number ne:/shell

19、> ,/number0o 10 1 2012301234012345012345601234567012345618012345678 3guojiangdaOguojiangda-virtual-machine:""/shell >3.2.1 C语言编程开发步骤(利用 gcc方法进行编译):1.进入终端输入用户名和密码,登录到Linux Mint系统;Linux Mint 17 Qiana gunjiangda-virtual-machine ttylguojiangda-virtual-ma匚hi门巳 login: guojiangda Password:L

20、ast login: Sun Dec 27 22:28:10 HKT 2015 on ttylWelcome to Linux Mint 17 Qiana (GNU/Linux 3,13.0-24-generi匚 x86_64)Welcome to Linux Mint* Documentat ion: http:/wwuu.l inuxmint. com guojiangdaOguojiangda-irtual-machine: > IsiidaOguojiangda-virtual-machine:丹 >2.在当前文件夹创建新文件夹“ c”;(通过“ mkdir c”创建)gu

21、ojj iangd 日一廿 irt ual-machiine;" >Is0ciji angdasguojia ngdm廿 irlL 旧日 chiine:" >cd cguaji angdagu ojian gda-virtual-machii> :%> isarea area匚 area.hguojiangdaSguoj iangda-virtualmachii> _3. 在“c”文件夹下新建area.c和area.h两个文件;(通过“Is > area.C'和“Is > area.h')4. 分别在area.c和a

22、rea.h文件中输入代码;guojiangdaguojiangda-virtual-machine:w/c > isarea area.c areahguojiangd日Oguciji日ngd日一> cat area.c #include<math.h>#incluclE<£tcliD h> #include<,area.h"Lnt malnO ffloat a,b3c; printfC'input asb,c:");scanf;printf ("a=%7.2f T b=%7.2f,c=3f7.2fn&q

23、uot;,aTb ,c);printf ("area=S7.2fn'areaCaJbnc);return 0;ifloat area(float asfloat bafloat c) Efloat SjQrea;s二 1/2*(a+b+c);area= sqrt(s(s-a)*(s-b)*(s-c); etum area;ine:/c > cat area.h float area(float a,float b,float c);guoj iangdaguojiangda-virtual-machinei/c >5通过“ gcc -o area area.c -

24、Im进行编译,通过“ ./areh'运行程序;(在这个程序中, 用到了数学函数库中的函数sqrt,编译程序时,要加链接选项-Im)1丄 UIU L UIJU 也 I 丄 <_13电 O ? IIL kJluLUUL Ur / Jdne:/c > gcc -o area area.c/tmp/cckOdpzv,o: In function area 1:rea + c: (.text+0x113) unde fined ref ere nc:巳 t 口 ' sqrt 'collect: error: Id returned 1 exit statuslinei

25、/c > gcc -o arBa area.c -Im iine:/c > /areainput a,b,c:3 4 5a= 3.00, b二4.00)匚二 5.00area= 6.00guojiangdaQgucjingda-virtual-machine/c >3.2.2 C语言编程开发步骤(利用 mikefile方法进行编译):1.进入终端输入用户名和密码,登录到Linux Mint系统;I Linux Mint 17 Qiana guojiangda-virtual-machine ttylguoji石ngda-virtual-ma匚hin已 login; guoji

26、angdaPassiuord:Last login: Sun Dec 27 22:28:10 HKT 2015 on ttylWelcome to Linux Mint 17 Qiana (GNU/Linux 3,13.0-24-generic x86_64)Welcome to Linux Mint* Documentation: http:/wwuu gda-virtual-machine: > Is:n daflguojiangda-irtual-machine:>2. 在当前文件夹创建新文件夹“ makefile”;(通过“ mkdir makefile”创建)3. 在“

27、makefile”文件夹中新建“ area.C', “area.h'和“makefile” 3个文件,它们的代 码分别如下图所示:(注意:在makefile文件中每行需要执行的命令要以 <tab>开头。反斜杠 是换行符。可以用#开头进行注释。clean不是一个文件,只是一个动作。 )11:"/makefile cat area,cinclude<math,h>#include<stdio4h>#include"area*h"int mainO ffloat a,b?c;prints("input a&g

28、t;b,c:;scanf (l,%f%m,aa,ab,ac);print-FC'a=X7.2-fB b=ff7.2f > c泄72f打日,b,c);prints(Marea=X7.n",area(ab ? c);return 0;float area (float afloat b, float c) float s,area;s=1.0/2*(a+b4C);area= sqrt(s*(s-a)*(s-b)*(s-c); return area;:"/makefile > cat area.h float area(float a,float bfflo

29、at c);machin巳:"/m日k巳fil巳 > cat makefile area:area.ogcc -o area area -Imarea.o:area.c area.hgcc -c area.cclean:rm area areao"tual-machine:/makef ile >4. 输入make命令后,系统会:a、读入 Makefile 或 makefile 文件b、读入被in elude的其他 Makefilec、初始化文件中的变量d、推到隐晦规则,并分析所有规则e、为所有目标文件(包括 target )创建依赖关系链f、 决定那些目标要重

30、新生成。即当目标文件不存在或其依赖文件的修改时间比目标文件的更新g、执行生成命令5. 然后输入“ ./area ”,便可执行代码。3.3 PHP+MySQL的编程开发步骤:1打开浏览器,在地址栏中输入 localhost/phpmyadmin便可转到Phpmyadmin网页,©F v 沧 hoclocalhost hpm、a - mast Visited v 5) Linux Mint Community Forums BlogNewsphpMyAIfWelcome to phpMyAdminLanguageEnglishLog in &Username:2.通过“ Log

31、in ” 登录至U mysqlphpMyAdminfit fij © Q 律StatusUse(Recent tables)+ - information schema i-4- laoguotest+h mysql+ performan匚 hEmaU SQL妙 Change password呈 Server connection collation © :utf8_general_cizJ3.在 “mysql” 中新建 “guojiangda” 表,表中含有,“sex” , “age” , “from ” 和 “school” ;4.在“ guojiangda”表中插入数

32、据;phpMyAdminJRecent tables)BrowseDatabase: mysqlguojiangda SQLNull Value 1 II 1+1-0 event i+l-H func 4也 general l og quojianqda 一ihelpcategory 扌-匠| helpkeywond .he I p re llation +_help_topic + -|_ | hostI ndb binlogindex + - pluginFunctionI13ii5.查看数据;Show : Start row;0Number of r<sexagefromschoo

33、ln21HanNanGuangXim21HanNanGuangXi十 Options-I-I-J-J7Qproc+|-_ event + E和皿 I+J-; | general log g-|_| guojiangda +lJ help_category +- J help_keyword helprelation helptopic host ndb_binlog_index6.在终端可进行查看,输入“ mysql -uroot -p”回车再输入mysql的登录密码便可进入 mysql;e:/make-file > mysql -uroot -pEnter passwordsWelco

34、me to the MySQL monitor. Commands end with ; or g.Your MySQL conne匚ticiri id is 50Server version: 5.5*46-0ubuntu0<14.04.2 (Ubuntu)Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved,Oracle is a registered trademarK of Oracle Corporat ion and/or its affiliates. Other narnes

35、 rnay be trademarks of their respectiye owners,Type ' help; ' or *xh' ion help. Tjp已、匚' to 匚1 ean the current input statement.mysql>7输入“ show databases ”可查看数据库;mysql> shouj databases JI DatabaseI+information_schema laoguo_t已st mysqlperfDrmance_schema4+4 roiiis in set (0.00 sec)

36、mysql>8.输入“ show tables;”可查看表;mysql> shoiu tables;Tables_in_mysqlcolumns_pr.iv db event func generallog guojiangda help_catego対 helpkeyiuo rd help_relation help_topic host ndb_binlog_index plugin proc procspriv proxies_nriy servers S10UJ_10g tablespriv tiTie_zone ti me_zone_leap_secanid timeonename time_zone_transition time_zon巳idn_type user2

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论