Linux系统分析实验报告
实验一安装系统报告提交日期:2016年3月2日 报告提交截至日期:2016年3月7日
姓名:罗杰 学号:1405010511 班级:14级计算机5班
一、 实验题目安装Linux系统,并在该系统中编辑,编译及调试所给程序。
二、 实验目的1、 安装Linux系统,熟悉其基本使用与设置。
2、使用atom/vi/emacs/等工具完成所给案例源码,编译、链接和运行及gdb的使用。
三、 实验平台一台装有ubuntu 14.04.03.LTS系统的笔记本。
四、实验要求1、 安装Linux系统,并在该系统中编辑,编译及调试所给程序。
2、 按时,独立完成!
五、 设计思路和流程图
1、 设计思路本实验通过安装Linux系统,使用系统提供的工具完成源码的编译,链接并运行。
2、 实验流程
一) 安装Linux系统首先,在ubuntu官网下载所提供的ubuntu14.04.3LTS-desktop-x86.iso镜像文件。在一台Linux系统的电脑下,使用:
$ sudo ddif=ubuntu14.04.3LTS-desktop-x86.iso of=/dev/sdb bs=2M
命令完成将镜像文件刻录到U盘,至此u启动盘制作完毕。接着,启动计算机,进入BIOS系统,设置从U盘启动。在grub的引导下,进入Linux系统的安装界面,选择install now,在友好的安装界面下,根据提示很容易安装Linux系统。
系统装好后如图所示:
二) 用vim编写并运行所给源代码系统自带的vi功能不全,使用
$ sudo apt-getinstall vim-gtk安装完整版vim。(百度经验里有大量教程)
Vim 创建test1.c
使用vim编写源码(vim的使用方法来自 《鸟哥的Linux私房菜》)
在shell下的vim有三种模式,命令行模式,插入模式,编辑模式。许多快捷键要记,但是记住后,使用起来方便,基本上可以摆脱鼠标。代码下:
#include
#include
intmain(intargc,char**argv)
{
char*str[]={"ls",NULL};
intnumber=1405010515;
char*class="计算机5班";
printf("我的学号是: %d\n",number);
printf("我的班级是: %s\n",class);
printf("正在运行的进程的进程号是: %d\n",getpid());
if(execve("/bin/ls",str,NULL)<0)
printf("执行execve error!");
return0;
}使用gcc编译(使用-o选项,生成test1)
执行test1(./test1)
使用gdb调试
六、 实验体会Linux系统的shell命令使用非常有趣,几个简单的命令,就可完成Windows系统下在IDE里完成C语言代码的一系列操作。因为Linux系统绝大部分的源代码都是用C语言写的,所以,Linux系统对C语言编程有着绝对的亲和力。
在Linux系统下安装软件不需要像Windows一样选择安装路径,并且,Linux的软件大多是开源和免费的。开源就意味着用户可以看到软件的源码,就能学习并修改软件的代码。用vim编辑器,可以让用户完全脱离鼠标,提高程序员编写代码的效率。总而言之,Linux系统非常不错。
七、 程序清单该程序是打印学号,班级,姓名,程序自身在系统里的进程编号,并显示当前目录下的所有目录和文件。(使用了shell内部命令ls)
计算机开机时做了什么事情?答:1)启动BIOS,准备在实地址模式下的中断向量表和中断服务程序;
2) 从启动盘加载操作系统程序到内存,加载操作系统程序的工作就是利用第一步中准备的中断程序实现的;
3) 为执行32位的main函数做过渡工作。
从源代码到可执行程序,经过哪些步骤?答:1、编译预处理
2、编译阶段
3、优化阶段
4、汇编过程
5、链接程序