基本命令及编程调试

基本命令及编程调试

ID:37504293

大小:116.71 KB

页数:7页

时间:2019-05-24

基本命令及编程调试_第1页
基本命令及编程调试_第2页
基本命令及编程调试_第3页
基本命令及编程调试_第4页
基本命令及编程调试_第5页
资源描述:

《基本命令及编程调试》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、实验1Linux命令行的基本使用及编程调试1.1实验目的ò熟悉Linux操作系统在命令行的基本操作ò掌握在Linux下C程序的编辑、编译、调试的基本方法:¢掌握VIM的基本操作及在Vim中C源程序的编辑技巧¢掌握使用gcc编译器进行C程序编译的基本方法和技巧¢掌握使用gdb进行调试的基本方法与技巧1.1.1实验环境要求ò硬件¢主机:PentiumIII以上;¢内存:128MB以上;¢显示器:VGA或更高;¢硬盘空间:至少100MB以上剩余空间。ò软件Linux操作系统,内核2.4.26以上,预装有X-Window、vim、gcc、gdb和任意web浏览器。1.1.2学生实

2、验前的准备工作阅读与Linux操作、vi使用、gcc和gdb有关的参考资料,理解以下内容:1.Linux命令行界面与图形界面有何不同;2.vi的功能和操作特点;3.gcc的功能和特色;4.gdb的功能和操作特点;5.vi、gcc和gdb组合后的功能11.2实验内容1.2.1Linux的基本操作通过一个Linux下的应用程序安装示例,学习部分Shell的基本操作命令,主要包括:1.系统的启动与关闭2.系统登录3.目录管理4.文件管理、5.压缩与解压缩1.2.2vi的基本操作vimtutor是vi自带的一个入门教程,它直接在vi的真实环境下一步步地教授vi的基本操作命令。它有

3、多种语言版本,通过命令行参数选择不同的语言。执行“vimtutorzh”进入简体中文教程,有些发行商的版本缺省语言就是简体中文,直接运行vimtutor即可。我们将学习vimtutor中的前五讲,内容包括:1.新文件、编辑旧文件、保存和退出;2.光标移动、文本编辑之删除、插入、替换、更改;3.对象的概念和撤销操作;4.复制和粘贴;5.定位和搜索;6.执行外部命令的方法。1.2.3使用gcc和gdb编译和调试C语言程序阅读由陈皓编写的教程《用GDB调试程序》,用vi建立示例程序,按其中的步骤操作,学习如下内容:1.用gcc编译器编译可执行文件和附带调试信息的方法;2.用gd

4、b跟踪调试程序的基本命令,包括查看源代码、设断点、查看变量值、查看函数堆栈、单步运行和连续运行等。21.3实验报告回答下列问题,写入实验报告。1.你认为命令行界面和图形界面各有什么优缺点?你更喜欢哪种界面?为什么?2.如果要执行当前目录下的configure文件,应该输入什么命令?3.vi中一次删除一行、一词和一个字符的命令分别是什么?4.如果用gdb调试未加入调试信息的目标代码会出现什么现象?5.gcc和gdb都属于一个叫做GNU的组织。这个组织的全称是什么?它有什么特色?3实验2进程2.1实验目的ò通过观察、分析实验现象,深入理解进程及进程在调度执行和内存空间等方面的

5、特点ò掌握在POSIX规范中fork和kill系统调用的功能和使用2.2实验要求2.2.1实验环境要求1.硬件(1)主机:PentiumIII以上;(2)内存:128MB以上;(3)显示器:VGA或更高;(4)硬盘空间:至少100MB以上剩余空间。2.软件Linux操作系统,内核2.4.26以上,预装有X-Window、vi、gcc、gdb和任意web浏览器。2.2.2学生实验前的准备工作学习man命令的用法,通过它查看fork和kill系统调用的在线帮助,并阅读参考资料,学会fork与kill的用法。复习C语言的相关内容。2.3实验内容通读下列代码:4/**POSIX下

6、进程控制的实验程序残缺版1.2*作者:SunnerSun*最后修改时间:2005-3-1023:59*/#include#include#include#include#include/*允许建立的子进程个数最大值*/#defineMAX_CHILD_NUMBER10/*子进程睡眠时间*/#defineSLEEP_INTERVAL2intproc_number=0;/*子进程的自编号,从0开始*/voiddo_something();main(intargc,char*a

7、rgv[]){intchild_proc_number=MAX_CHILD_NUMBER;/*子进程个数*/inti,ch;pid_tchild_pid;pid_tpid[10]={0};/*存放每个子进程的id*/if(argc>1){/*命令行参数中的第一个参数表示建立几个子进程,最多10个*/child_proc_number=atoi(argv[1]);child_proc_number=(child_proc_number>10)?10:child_proc_number;}for(i=0;i

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。