实验一 Ubuntu Linux操作系统及开发环境

实验一 Ubuntu Linux操作系统及开发环境
实验一 Ubuntu Linux操作系统及开发环境

实验一Ubuntu Linux操作系统及开发环境

【实验目的】

1、熟悉Ubuntu Linux操作系统。

2、vi编辑器的使用。

3、gcc编译器与g++编译器的使用。

【准备知识】

一、vi编辑器的使用

vi提供二种工作模式:输入模式(insert mode)和命令模式(command mode)。使用者进入vi后,即处在命令模式下,此刻键入的任何字符皆被视为命令,可进行删除、修改、存盘等操作。要输入信息,应转换到输入模式。

(1)命令模式

在输入模式下,按ESC可切换到命令模式。命令模式下,可选用下列指令离开vi:

:q! 离开vi,并放弃刚在缓冲区内编辑的内容

:wq 将缓冲区内的资料写入磁盘中,并离开vi

:ZZ 同wq

:x 同wq

:w 将缓冲区内的资料写入磁盘中,但并不离开vi

:q 离开vi,若文件被修改过,则要被要求确认是否放弃修改的内

容,此指令可与:w配合使用

(2)命令模式下光标的移动

h 左移一个字符

j 下移一个字符

k 上移一个字符

l 右移一个字符

0(零) 移至该行的首

$ 移至该行的末

^ 移至该行的第一个字符处

H 移至窗口的第一行

M 移至窗口中间那一行

L 移至窗口的最后一行

G 移至该文件的最后一行

W, W 下一个单词 (W 忽略标点)

B, B 上一个单词 (B 忽略标点)

+ 移至非空白字符下一列的第一个字符处- 移至非空白字符上一列的第一个字符处( 移至该句首

) 移至该句末

{ 移至该段首

} 移至该段末

nG 移至该文件的第n列

n+ 移至光标所在位置之后第n列

n- 移至光标所在位置之前第n列

(3)输入模式

输入以下命令即可进入vi输入模式:

a(append) 在光标之后加入资料

A 在该行之末加入资料

i(insert) 在光标之前加入资料

I 在该行之首加入资料

o(open) 新增一行于该行之下,供输入资料用

O 新增一行于该行之上,供输入资料用

dd 删除当前光标所在行

x 删除当前光标字符

X 删除当前光标之前字符

u 撤消

·重做

yy 复制光标所在的那一行

p 在光标下一行粘贴复制的内容

ESC 离开输入模式

二、GNU C编译器

在Unix操作系统中,专门提供了CC命令来帮助系统工程师编译C语言;Linux 操作系统中,采用的是gcc命令;如果是c++ 直接将gcc改为g++即可。

(1)编译的命令是:

gcc -c test.c // -c 选项告诉GCC 仅把源代码编译为目标代码。

缺省时GCC 建立的目标代码文件有一个.o 的扩

展名。

gcc -o test test.c // -o 编译选项来为将产生的可执行文件用指定的文

件名。

gcc test.c //a.out可执行文件

格式:

gcc filename.c [-o outputfilename.out]

其中gcc是c的编译器。参数:filename.c 是要编译的源文件的名称,outputfilename表示输出文件名称,中括号表示括号内部的内容可输入也可以不输入(中括号本身不再命令行中出现)。如果不输入outputfilename.out,默认的输出文件是a.out 。

例如,

gcc test.c

g++ test.cpp

编译成功后,当前目录下就产生了一个a.out文件。

也可用-o选项来为即将产生的可执行文件指定一个文件名来代替a.out。例如:

gcc –o count count.c

g++ –o count count.cpp

此时得到的可执行文件就不再是a.out,而是count。

(2)最后一步是运行程序,方法如下:

./ count

或./ a.out

三、c/c++语言多文件编译

如果有多个源文件,基本上有两种编译方法:

[假设有两个源文件为test.c和testfun.c]

1. 多个文件一起编译

用法:#gcc testfun.c test.c -o test

作用:将testfun.c和test.c分别编译后链接成test可执行文件。

2. 分别编译各个源文件,之后对编译后输出的目标文件链接。

用法:

#gcc -c testfun.c //将testfun.c编译成testfun.o

#gcc -c test.c //将test.c编译成test.o

#gcc -o testfun.o test.o -o test //将testfun.o和test.o链接成test

以上两种方法相比较,第一中方法编译时需要所有文件重新编译,而第二种方法可以只重新编译修改的文件,未修改的文件不用重新编译。

如果是c++ 直接将gcc改为g++即可。

【实验内容】

一、用VI编辑器输入以下程序,用gcc编译并运行。

程序1:

#include

main( )

{

int p1,p2;

while((p1=fork( ))= = -1); /*创建子进程p1*/

if (p1= =0) putchar('b');

else

{

while((p2=fork( ))= = -1); /*创建子进程p2*/

if(p2= =0) putchar('c');

else putchar('a');

}

}

程序 2:

#include

main( )

{

int p1,p2,i;

while((p1=fork( ))= = -1); /*创建子进程p1*/

if (p1= =0)

for(i=0;i<10;i++)

printf("daughter %d\n",i);

else

{

while((p2=fork( ))= = -1); /*创建子进程p2*/

if(p2= =0)

for(i=0;i<10;i++)

printf("son %d\n",i);

else

for(i=0;i<10;i++)

printf("parent %d\n",i);

}

}

二、用VI编辑器输入以下程序,用g++编译并运行。

程序 1:

#include

using namespace std;

void main(void)

{

cout<<"hello!\n";

cout<<"Welcome to c++!\n";

}

程序 2:

#include

using namespace std;

int main()

{

int year;

bool IsLeapYear;

cout << "Enter the year: ";

cin >> year;

IsLeapYear = ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0));

if (IsLeapYear)

cout << year << " is a leap year" << endl;

else

cout << year << " is not a leap year" << endl;

}

LINUX操作系统实验报告

中国地质大学江城学院 LINUX操作系统实验报告 姓名 班级学号 指导教师冯春华 2012 年月日

实验一在LINUX下获取帮助、Shell实用功能 实验目的: 1、掌握字符界面下关机及重启的命令。 2、掌握LINUX下获取帮助信息的命令:man、help。 3、掌握LINUX中Shell的实用功能,命令行自动补全,命令历史记录,命令的排列、替 换与别名,管道及输入输出重定向。 实验内容: 1、使用shutdown命令设定在30分钟之后关闭计算机。 2、使用命令“cat /etc/named.conf”设置为别名named,然后再取消别名。 3、使用echo命令和输出重定向创建文本文件/root/nn,内容是hello,然后再使用追加重定向输入内容为word。 4、使用管道方式分页显示/var目录下的内容。 5、使用cat显示文件/etc/passwd和/etc/shadow,只有正确显示第一个文件时才显示第二个文件。 实验步骤及结果: 1、 2、 3、 4、 5、

实验二文件和目录操作命令 实验目的: 1、掌握LINUX下文件和目录的操作命令,如pwd、cd、ls、touch、mkdir、rmdir、cp、 mv、rm等。 2、掌握LINUX下建立链接文件的方法。 实验内容: 1、使用命令切换到/etc目录,并显示当前工作目录路径。 2、使用命令显示/root目录下所有文件目录的详细信息,包括隐藏文件。 3、使用命令创建空文件/root/ab,并将该文件的时间记录更改为8月8日8点8分。 4、使用命令创建具有默认权限为744的目录/root/ak,然后将/etc/named.conf文件复制到该目录中,最后将该目录及其目录下的文件一起删除。 5、统计文件/etc/named.conf的行数、字符数和单词数。 6、使用命令创建/root/a文件的硬链接文件/root/b和软链接文件/root/c。 实验步骤及结果:

操作系统实验实验1

广州大学学生实验报告 1、实验目的 1.1、掌握进程的概念,明确进程的含义 1.2、认识并了解并发执行的实质 2.1、掌握进程另外的创建方法 2.2、熟悉进程的睡眠、同步、撤消等进程控制方法 3.1、进一步认识并发执行的实质 3.2、分析进程竞争资源的现象,学习解决进程互斥的方法 4.1、了解守护进程 5.1、了解什么是信号 5.2、INUX系统中进程之间软中断通信的基本原理 6.1、了解什么是管道 6.2、熟悉UNIX/LINUX支持的管道通信方式 7.1、了解什么是消息 7.2、熟悉消息传送的机理 8.1、了解和熟悉共享存储机制 二、实验内容 1.1、编写一段程序,使用系统调用fork( )创建两个子进程。当此程序运行时,在系统 中有一个父进程和两个子进程活动。让每一个进程在屏幕上显示一个字符:父进程显示'a',子进程分别显示字符'b'和字符'c'。试观察记录屏幕上的显示结果,并分析原因。 1.2、修改上述程序,每一个进程循环显示一句话。子进程显示'daughter …'及 'son ……',父进程显示'parent ……',观察结果,分析原因。 2.1、用fork( )创建一个进程,再调用exec( )用新的程序替换该子进程的内容 2.2、利用wait( )来控制进程执行顺序 3.1、修改实验(一)中的程序2,用lockf( )来给每一个进程加锁,以实现进程之间的互斥 3.2、观察并分析出现的现象 4.1、写一个使用守护进程(daemon)的程序,来实现: 创建一个日志文件/var/log/Mydaemon.log ; 每分钟都向其中写入一个时间戳(使用time_t的格式) ; 5.1、用fork( )创建两个子进程,再用系统调用signal( )让父进程捕捉键盘上来的中断信号(即按^c键);捕捉到中断信号后,父进程用系统调用kill( )向两个子进程发出信号,子进程捕捉到信号后分别输出下列信息后终止: Child process1 is killed by parent! Child process2 is killed by parent! 父进程等待两个子进程终止后,输出如下的信息后终止: Parent process is killed! 5.2、用软中断通信实现进程同步的机理

Linux操作系统实验教程

Linux操作系统实验教程 第1章Linux系统概述 一、Linux系统结构 从操作系统的角度来分析Linux,它的体系结构总体上属于层次结构如下图所示: 从内到外包括三层:最内层是系统核心,中间是Shell、编译编辑实用程序、库函数等,最外层是用户程序,包括许多应用软件。 从操作系统的功能角度来看,它的核心有五大部分组成:进程管理、存储管理、文件管理、设备管理、网络管理。各子系统实现其主要功能,同时相互之间是合作、依赖的关系。进程会管理是操作系统最核心的内容,它控制了整个系统的进程调度和进程之间的通信,是整个系统合理高效运行的关键; 存储管理为其他子系统提供内存管理支持,同时其他子系统又为内存管理提供了实现支持,例如要通过文件管理和设备管理实现虚拟存储器和内外存的统一管理。 二、配置一个双引导系统 如果计算机中已经安装了其他操作系统,并想创建一个引导系统以便兼用Red Hat Linux和另外的操作系统,需要使用双引导。机器启动时,可以选择其中之一,但不能同时使用两者。每个操作系统都从自己的硬盘驱动器或硬盘分区中引导,并使用自己的硬盘驱动器或硬盘分区。 如果计算机上还没有安装任何操作系统,可以使用专门的分区及格式化软件给Windows创建指定大小的分区,Windows的文件系统为FAT,再为Linux系统创建所需要大小的分区(4G或更大),另外再给Linux留100MB 左右的交换分区,Linux的文件系统为ext2。然后就可以安装系统了。应首先安装Windows,然后再安装Red Hat Linux。如果只进行了分区而没有格式化各分区,在安装时可以使用Windows自带的格式化程序和Linux自带的格式化程序进行各自分区的格式化。 当Windows已经被安装,而且已为Linux准备了足够的磁盘空间,就可以安装Linux了。Red Hat Linux安装程序通常会检测到Windows并自动配置引导程序来引导Windows或Red Hat Linux。

操作系统实验_实验1

广州大学学生实验报告 开课学院及实验室:计算机科学与工程实验室 2015年11月11日 实验课 操作系统成绩 程名称 实验项 进程管理与进程通信指导老师陈康民目名称 (***报告只能为文字和图片,老师评语将添加到此处,学生请勿作答***) 进程管理 (一)进程的创建实验 一、实验目的 1、掌握进程的概念,明确进程的含义 2、认识并了解并发执行的实质 二、实验内容 1、编写一段程序,使用系统调用fork( )创建两个子进程。当此程序运行时,在系统中有一 个父进程和两个子进程活动。让每一个进程在屏幕上显示一个字符:父进程显示'a',子进程分别显示字符'b'和字符'c'。试观察记录屏幕上的显示结果,并分析原因。 2、修改上述程序,每一个进程循环显示一句话。子进程显示'daughter …'及'son ……', 父进程显示'parent ……',观察结果,分析原因。 三、实验步骤 1、编写一段程序,使用系统调用fork( )创建两个子进程。 代码: #include main( ) { int p1,p2; while((p1=fork( ))= = -1); /*创建子进程p1*/ if (p1= =0) putchar('b'); else { while((p2=fork( ))= = -1); /*创建子进程p2*/ if(p2= =0) putchar('c'); else putchar('a'); } } 运行结果:

bca,bac, abc ,……都有可能。 2、修改上述程序,每一个进程循环显示一句话。子进程显示'daughter …'及'son ……',父进程显示'parent ……',观察结果,分析原因。 代码:#include main( ) { int p1,p2,i; while((p1=fork( ))= = -1); /*创建子进程p1*/ if (p1= =0) for(i=0;i<10;i++) printf("daughter %d\n",i); else { while((p2=fork( ))= = -1); /*创建子进程p2*/ if(p2= =0) for(i=0;i<10;i++) printf("son %d\n",i); else for(i=0;i<10;i++) printf("parent %d\n",i); } } 结果:

苏州大学操作系统实验1

实验一Linux系统 实验目的: (1)熟悉Linux操作系统,并尝试在Linux环境下编程。 (2)使用vi编辑器,了解用C语言编写文本处理程序的具体过程。 实验要求: (1)根据报告册上的提示进行操作,创建自己的目录,以及输入编译和执行C 程序。 (2)使用C语言编写一个词频(限英文文章)统计程序,使之能够给出各个单词在输入文件中的出现次数。 (3)使用C语言编写一个反向打印程序,使之能够按与输入文件中文本行相反的次序来打印(即后出现的文本行先打印)。 问题分析: 1.1实验没有具体要求英语文章是从文件中读出,还是直接由用户从屏幕上输入一篇,因此要根据自己的情况确定读取方式。 1.2统计每个单词出现的次数及频率。 1.3将结果输出到屏幕上,要解决如何不重复输出相同单词出现的频率。 1.4如何把用户输入的文本行以相反的顺序输到屏幕上的算法。 实验程序清单: #include #include void main() { char str[500][26]; //定义一个二维字符数组存放单词

const char str1[4]="000"; //定义一个const变量,用于停止输入 const char str2=' '; //定义一个const变量,用于初始化二维数组 int num[500]; //定义一个整型数组,用于单词出现频率的计数 int mark[500]; //定义一个整型数组,用来标记已出现过的单词 int i,j,m,x; int len; double q[500]; //定义一个浮点型数组,用来存放出现频率的数值again: m=0;j=0;i=0;x=0; //对m,j,i,x进行初始化 for(m=0;m<500;m++) //对num,mark,q数组初始化 { num[m]=0; mark[m]=0; q[m]=0; } for(m=0;m<500;m++) //对二维数组str进行初始化 { strcpy(str[m],&str2); } printf("请输入英文文章(单词数限制在500以内,每个单词不大于25个字符)\n"); //对用户的引导语句 printf("输入“000”代表文章输入终止!\n"); //对用户的引导语句 for(m=0;m<500;m++) //使用for循环,将用户输入的单词依次放入二维数组{ scanf("%s",str[m]); if(strcmp(str[m],str1)==0)//直到用户输入000,结束输入 break; } for(i=0;ii) //当j大于i时 { mark[i]=1; //标记此时的mark } num[i]++; //当两个单词相同,num[i]加1 } } q[i]=(double)num[i]/m; //获得单词出现的频率 } for(i=0;i

操作系统实验一

本科实验报告 课程名称:操作系统 学号: 姓名: 专业: 班级: 指导教师: 课内实验目录及成绩 信息技术学院

实验(实验一) 1 实验名称:基本shell命令及用户管理 2 实验目的 2.1 掌握安装Linux操作系统的方法。 2.2 掌握Linux操作系统的基本配置。 2.3 了解GNOME桌面环境。 2.4 掌握基本shell命令的使用。 3 实验准备 3.1 下载VMware Workstation虚拟机软件(版本不限)。 3.2 准备Linux操作系统的安装源(内核版本和发行版本均不限)。 注:实验准备、实验内容4.1和4.2作为回家作业布置,同学们利用课余时间可在私人计算机上完成。 4 实验要求、步骤及结果 4.1 安装虚拟机软件。 【操作要求】安装VMware Workstation虚拟机软件,并填写以下4.1.1和4.1.2的内容。 4.1.1【VMware Workstation虚拟机版本号】 4.1.2【主要配置参数】 4.2 安装Linux操作系统。 【操作要求】安装Linux操作系统,版本不限。 Linux发行版本: Linux内核版本:

【主要操作步骤:包括分区情况】 1、创建一台虚拟机安装操作系统时客户机操作系统选择Linux 2、修改虚拟机的安装路径。 3、建一个新的虚拟磁盘,磁盘的空间20GB,并且将单个文件存储虚拟磁盘。 4、设置分区完毕,安装虚拟机 4.3 了解Linux操作系统的桌面环境之一GNOME。 【操作要求】查看桌面图标,查看主菜单,查看个人用户主目录等个人使用环境。【操作步骤1】桌面图标

【操作步骤2】主菜单 【操作步骤3】个人用户主目录 【操作步骤4】启动字符终端

Linux操作系统实验指导书

《Linux系统管理与维护》实验指导书 实验一初识Linux操作系统 一实验名称 初识Linux操作系统 二实验目的与要求 掌握Linux的启动、登录与注销。 三实验内容 1.以root用户和普通用户两种不同身份登录Linux,说出其登录后得差异。 2.图形模式下的注销、重启与关机。 3.学会在虚拟机上登录和注销Linux。 四操作步骤与结果分析 五问题与建议

实验二Linux的桌面应用 一实验名称 Linux的桌面应用 二实验目的与要求 熟悉Linux操作系统桌面环境 熟悉Linux文件系统及常用的操作 掌握Linux下使用外部存储设备、网络设备 掌握Linux下安装应用程序 三实验内容 1.查看GNOME提供的“应用程序”、“位置”或者“系统”菜单,运行其中的应用程 序和工具。 2.查看Linux文件目录结构,学会常用的文件目录操作,如复制、粘贴、移动、删 除、更名、创建文档、创建文件夹等。 3.练习在Linux下使用光盘和U盘。 4.学会网络配置,使计算机能够进行网络浏览等操作。 5.学会在Linux下安装新的应用软件。 四操作步骤与结果分析 五问题与建议

实验三Linux操作系统的安装 一实验名称 Linux操作系统的安装 二实验目的与要求 掌握安装Linux操作系统 三实验内容 1.通过学习《项目五Linux操作系统的安装及远程服务》的内容,学会如何安装Linux。 环境:windows 系统、vmware虚拟机、Redhat Linux镜像光盘。 通过安装向导将安装分为两步:1、基本安装,2、配置及具体安装。 在第一阶段重点如何分区,在第二阶段重点掌握如何设置密码及安装桌面环境。四操作步骤与结果分析 五问题与建议

Linux操作系统实验二

实验报告 2016 至2017 学年第二学期

1.crontab帮助信息 usage: crontab [-u user] file crontab [ -u user ] [ -i ] { -e | -l | -r } (default operation is replace, per 1003.2) -e (edit user's crontab) -l (list user's crontab) -r (delete user's crontab) -i (prompt before deleting user's crontab) 2.查看用户的计划任务列表 命令:crontal -l 如图,当前用户为cyril,还没有计划任务。 3.建立计划任务 命令:crontal –e 为当前用户建立计划任务,如果为其他用户建立计划任务需要使用-u参数指定。 执行命令后会打开一个由EDITOR变量指定的编辑器如vim,在其中写好计划任务保存后,终端回显:crontab: installing new crontab 编辑计划任务时,格式为: *****command 分时日月周命令 其中*/5 这样的格式表示“每5(分钟、小时…)”

这里我先写了一个脚本,用来在/tmp目录下创建文件,脚本内容如下: 然后创建计划任务来每隔一分钟运行这个脚本,如下图: 现在再查看一下任务列表:

查看脚本的执行情况: 如图,显示了7个由计划任务调用脚本创建的文件。20170424-16:48.txt 20170424-16:49.txt 20170424-16:50.txt 20170424-16:51.txt

操作系统实验报告.

学生学号0121210680225 实验课成绩 武汉理工大学 学生实验报告书 实验课程名称操作系统 开课学院计算机科学与技术学院 指导老师姓名刘军 学生姓名李安福 学生专业班级软件sy1201 2014 — 2015 学年第一学期

《操作系统》实验教学大纲 课程编号: 课程名称:操作系统/Operating System 实验总学时数:12学时 适应专业:计算机科学与技术、软件工程 承担实验室:计算机科学与技术学院实验中心 一、实验教学的目的和任务 通过实验掌握Linux系统下常用键盘命令、系统调用、SHELL编程、后台批处理和C程序开发调试手段等基本用法。 二、实验项目及学时分配 序号实验项目名称实验学时实验类型开出要求 01 Linux键盘命令和vi 2 设计必开 02 Linux下C编程 2 设计必开 03 SHELL编程和后台批处理 2 设计必开 04 Linux系统调用(time) 2 设计必开 05 Linux进程控制(fork) 4 设计必开 三、每项实验的内容和要求: 1、Linux键盘命令和vi 要求:掌握Linux系统键盘命令的使用方法。 内容:见教材p4, p9, p40, p49-53, p89, p100 2、Linux下的C编程 要求:掌握vi编辑器的使用方法;掌握Linux下C程序的源程序编辑方法;编译、连接和运行方法。 内容:设计、编辑、编译、连接以及运行一个C程序,其中包含键盘输入和屏幕输出语句。 3、SHELL编程和后台批处理 要求:掌握Linux系统的SHELL编程方法和后台批处理方法。 内容:(1) 将编译、连接以及运行上述C程序各步骤用SHELL程序批处理完成,前台运行。 (2) 将上面SHELLL程序后台运行。观察原C程序运行时输入输出情况。 (3) 修改调试上面SHELL程序和C程序,使得在后台批处理方式下,原键 盘输入内容可以键盘命令行位置参数方式交互式输入替代原键盘输入内容, 然后输出到屏幕。 4、Linux系统调用使用方法。

实验2--操作系统环境

2.1 操作系统的计算环境 2.1.1 操作系统计算环境的背景 本实验帮助回顾Windows 2000/XP 、UNIX 和Linux 的计算环境术语,加深理解 有关操作系统的基础概念。学生还将调查在学校或其他机构中Windows 、UNIX 和Linux 的使用情况,看哪些机构在使用Windows 、UNIX 或者Linux 系统;研究Web 站点,看哪些因特网网站 (尤其是简体中文网站) 分别支持着Windows 、UNIX 和Linux 操作系统的应用。 2.1.2 练习与实验 本节“练习与实验”的目的是: 通过实验,加深对以下内容的理解: 1) 基本的计算机硬件组件; 2) 计算机操作系统; 3) Windows 的发展和版本 4) UNIX 和Linux 的历史和版本; 5) Windows XP 、UNIX 或Linux 操作环境。 调查在机构、学校和学生中Windows 、UNIX 和Linux 操作系统的使用情况。 实验 2 操作系统环境

26 操作系统原理实验(第二版) 分别研究支持Windows和Linux的Web站点。 1. 工具/准备工作 在开始本实验之前,请回顾教科书的相关内容。 请联系指导老师或者熟识网络技术的人士,如学校或企业信息技术部门的职员,了解你所在的学校 (或者其他机构) 中使用了哪些服务器和网络操作系统,找出是否在用Windows 2000/XP、UNIX和Linux以及在哪里使用这些操作系统。 需要准备一台带有浏览器,能够访问因特网的计算机。 2. 实验内容与步骤 (1) 识别一台计算机的4个主要硬件组成部分。 1) __运算器___ 2) ___控制器 3) 存储器 4) 输入输出设备 (2) 在空格中,填写3个概念中的一个:内核、shell或者文件系统。 1) shell_____________ 表现为用户界面,把用户的需求翻译为系统活动。 2) 文件系统____________ 在用户之间管理和分配资源。 3) 内核______________ 提供命令解释。 4) 文件系统____________ 以层次化的结构组织和存储数据。 5) 内核___________ 进行内存管理。 6) 文件系统________ 组成部分是文件和目录。 7) shell_________ 管理硬盘、磁带机、打印机、终端、通信线路和其他设备。 (3) Windows XP操作系统的主要优点是什么? 1) 兼容性好,软件资源最丰富。 2) 速度快 3)占用资源较少 4) 用户操作无障碍,绝大部分会用电脑的人都能比较自如的使用XP (4) UNIX操作系统的主要优点是什么? 1)具有简单强大统一的I接口,将所有设备用文件表示。 2) 可靠性高 3)伸缩性较强

linux操作系统实验报告

LINUX操作系统实验报告 姓名 班级学号 指导教师 2011 年 05月 16 日 实验一在LINUX下获取帮助、Shell实用功能 实验目的: 1、掌握字符界面下关机及重启的命令。 2、掌握LINUX下获取帮助信息的命令:man、help。 3、掌握LINUX中Shell的实用功能,命令行自动补全,命令历史记录,命令的排列、替

换与别名,管道及输入输出重定向。 实验容: 1、使用shutdown命令设定在30分钟之后关闭计算机。 2、使用命令“cat /etc/cron.daliy”设置为别名named,然后再取消别名。 3、使用echo命令和输出重定向创建文本文件/root/nn,容是hello,然后再使用追加重定向输入容为word。 4、使用管道方式分页显示/var目录下的容。 5、使用cat显示文件/etc/passwd和/etc/shadow,只有正确显示第一个文件时才显示第二个文件。 实验步骤及结果: 1.用shutdown命令安全关闭系统,先开机在图形界面中右击鼠标选中新建终端选项中输入 命令Shutdown -h 30 2、使用命令alias将/etc/cron.daliy文件设置为别名named,左边是要设置的名称右边是要更改的文件。查看目录下的容,只要在终端输入命令即可。取消更改的名称用命令unalias 命令:在命令后输入要取消的名称,再输入名称。 3.输入命令将文件容HELLO重定向创建文本文件/root/nn,然后用然后再使用追加重定向输入容为word。步骤与输入容HELLO一样,然后用命令显示文件的全部容。 4.使用命令ls /etc显示/etc目录下的容,命令是分页显示。“|”是管道符号,它可以将多个命令输出信息当作某个命令的输入。

操作系统实验3答案

实验三操作系统进程管理 一、实验目的 1) 掌握系统进程的概念,加深对Linux / UNIX进程管理的理解。 2) 学会使用ps命令和选项。 3) 列出当前shell中的进程。 4) 列出运行在系统中的所有进程。 5) 根据命令名搜索特定的进程。 6) 使用kill命令终止进程。 7) 根据用户名查找和终止进程。 二、实验内容和相应的答案截图,三、实验结果分析 步骤1:创建一个普通用户(参见实验二),以普通用户身份登录进入GNOME。 步骤2:打开一个“终端”窗口(参见实验二)。 步骤3:回顾系统进程概念,完成以下填空: 1) Linux系统中,几乎每一个启动的进程,都会由内核分配一个唯一的__PID__进程标识符,用于跟踪从进程启动到进程结束。 2) 当启动新进程的时候,内核也给它们分配系统资源,如__内存_和__CPU_。 3) 永远不向父进程返回输出的进程叫做__僵进程__。 4) 由父进程派生出来的进程叫做____子___进程。 5) ___父_进程是一个派生另一个进程的进程。 6) 运行用于提供服务的Linux系统进程是_______________。 7) 如果父进程在子进程之前结束,它创建了一个______________进程。 步骤4:回顾ps命令和信息。基本的ps命令显示当前shell中的进程信息,用户只能够查看当前终端窗口中初始化的进程。输入ps命令,将结果填入表3-3中。 表3-3 实验记录 下面,在当前终端窗口中,练习使用给出的每个选项的ps命令。

输入ps -f 命令,显示运行在系统中的某个进程的完全信息,填入表3-4中。 表3-4 实验记录 步骤5:列出系统中运行的所有进程。 输入ps -ef 命令,显示运行在系统中的各个进程的完全信息。执行该命令,并与ps –f 命令的输出结果对照,一致吗?有何不同? 答:不一致,后者显示了所有进程的完全可用信息,多了很多。 分析当前终端窗口中的输出结果,记录下来用于写实验报告。 a. 显示了多少个进程?答:59 b. 进程ID的PID是什么? c. 启动进程的命令(CMD) 是什么?答:sched d. 请观察,什么命令的PID号是1?答:init[5] e. 执行ps –ef >aaa命令,将ps命令的输出送到文本文件aaa。再次运行cat aaa | wc命令,计算进程的数目。其中,cat是显示文本文件命令。“|”是管道命令,就是将前一个命令的输出作为后一个命令的输入。wc 命令用来计算文本的行数,第一个数字显示的是行的数目,可以用来计算进程的数目。计算出进程数目并做记录。 执行man ps命令,可以打开Linux用户命令手册。了解ps命令的用法。输入wq命令可退出用户手册的阅读。man命令可以执行吗?结果如何? 答:Man ps时出现

linux操作系统实验指导书第2周

第3周Linux文件与目录管理 一、实验内容 1.练习Linux文件和目录操作命令。 2.实验目的练习Linux文件权限和文件查找命令。 二、实验目的 1.掌握文件与目录管理命令 2.掌握文件内容查阅命令 3.了解文件与目录的默认权限与隐藏权限 4.掌握如何改变文件属性与权限 5.掌握命令与文件的查询方法 三、实验题目 1. 文件与目录管理 (1) 查看Ubuntu根目录下有哪些内容? (2) 进入/tmp目录,以自己的学号建一个目录,并进入该目录。 (3) 显示目前所在的目录。 (4) 在当前目录下,建立权限为741的目录test1,查看是否创建成功。 (5) 在目录test1下建立目录test2/teat3/test4。 (6) 进入test2,删除目录test3/test4。 (7) 将root用户家目录下的.bashrc复制到/tmp下,并更名为bashrc (8) 重复步骤6,要求在覆盖前询问是否覆盖。 (9) 复制目录/etc/下的内容到/tmp下。 (10) 在当前目录下建立文件aaa。 (11)查看该文件的权限、大小及时间 (12) 强制删除该文件。 (13) 将/tmp下的bashrc移到/tmp/test1/test2中。 (14) 将/test1目录及其下面包含的所有文件删除。 2. 文件内容查阅、权限与文件查找 (1) 使用cat命令加行号显示文件/etc/issue的内容。 (2) 反向显示/etc/issue中的内容。 (3) 用nl列出/etc/issue中的内容。

(4) 使用more命令查看文件/etc/man.config (5) 使用less命令前后翻看文件/etc/man.config中的内容 (6) 使用head命令查看文件/etc/man.config前20行 (7) 使用less命令查看文件/etc/man.config后5行 (8) 查看文件/etc/man.config前20行中后5行的内容 (9) 将/usr/bin/passwd中的内容使用ASCII方式输出 (10) 进入/tmp目录,将/root/.bashrc复制成bashrc,复制完全的属性,检查其日期 (11) 修改文件bashrc的时间为当前时间 3. 文件权限 (1) 执行echo pwd >> pwd.sh,然后使用ls -al查询一下,发生了什么事? (2) 以两种方式查看系统中新建文件或目录的默认权限 (3) 新建文件test1和目录test2,查看它们的权限是否与(2)中的默认权限相符 (4) 修改pwd.sh文件权限为r-xr--r--。 (5) 执行pwd.sh。(提示:执行本路径下文件的命令是./文件名)。 (6) 添加用户stu,修改密码为123。 (7) 修改文件test1的属主为stu,test1所属的组为stu。 (8)增加test1的属主具有可执行的权限。 4. 文件查找 (1) 查看文件/root/.bashrc的类型 (2) 查询ifconfig和cd命令的完整文件名 (3) 只找出跟passwd有关的“说明文件”文件名 (4) 找出系统中所有与passwd相关的文件名 (5) 将过去系统上面3天前的24小时内有改动(mtime)的文件列出 (6) 使用find查找当前目录下比man.config新的文件,并存储到man.config.new文件。 (7) 列出/etc下比/etc/man.config新的文件 (8) 查找系统中所有属于root的文件及不属于任何人的文件 (9) 使用find查找/下面所有名称为man.config的文件。 (10) 找出文件名为man.config的文件 (11) 使用locate查找所有名称为man.config的文件。 (12) 11步和12步的结果一样么?为什么? (13) 找出/etc下文件类型为f的文件 (14) 找出系统中大于1M的文件

操作系统实验一

攀枝花学院实验报告 实验课程:操作系统实验项目:模拟实现进程调度算法实验日期:2010.05.07 系:计算机班级:07级计本2班姓名:朱江学号:200710801086 指导教师:赖国勇成绩: 实验目的: 1、进程调度是处理机管理的核心内容。观察、体会操作系统的进程调度方法,并通过一个简单的进程调度模拟程序的实现,加深对进程控制块、进程队列、进程调度算法,进程切换的理解,并体会和了解各种调度算法的具体实施办法。 2、提高实际动手编程能力,为日后从事软件开发工作打下坚实基础。 实验设备: 1.装有windows2000/xp以上的操作系统。 2.装有LGY_VC++ 6.0集成开发环境。 实验要求: 1、使用模块化设计思想来设计。 2、给出主函数和各个算法函数的流程图。 3、学生可按照自身条件,随意选择采用的算法,(例如:采用冒泡法编写程序,实现短进程优先调度的算法)。 4、进程调度程序模拟程序只对PCB进行相应的调度模拟操作,不需要实际程序。 实验内容及步骤: 一、实验内容 1、设计进程控制块PCB表结构,模拟实现进程调度算法:FIFO,静态优先级调度,时间片轮转调度,短进程优先调度算法,多级反馈队列调度。(实现其中之一个以上)。 2、编写一个进程调度程序模拟程序。模拟程序只对PCB进行相应的调度模拟操作,不需要实际程序。 3、程序经visual c++ 6.0编译后运行,通过文件1.txt和2.txt读入进程名、进程状态、进程运行时间和进程优先级等数据。然后分别选择先进先出调度,静态优先级调度,时间片轮转调度,短进程优先调度算法对进程进行调度,并输出进程的调度模拟操作排序结果。

Linux操作系统实验实验报告

实验1:安装L i n u x系统 【实验目的和要求】:安装Linux系统,掌握操作系统的系统配置,建立应用环境的过程。 【实验内容】: 1、首先在windows系统中安装虚拟机。在网上找到VMwareWorksttionPro版本, 确定安装目录。一直下一步,不需要太多的说明。 2、 图为安装完成后的界面。 3、然后在阿里巴巴开源镜像网站下载centos系统镜像,然后虚拟机创建新的虚 拟机, 进行一些简单的虚拟机设置,设置了网络链接nat模式等等。 安装完成后的界面 实验2:Linux下c语言开发 【实验目的】:学会和掌握用c语言开发一个应用程序的全过程,包括,编译,调试等等。

【实验步骤】:首先在系统中查看是否已经安装有gcc,输入查看命令发现没有,于是需要安装gcc。在centos系统中可以使用比较简便的yum命令。在之前已经配置好了yum源。直接输入yuminstallgcc。回车自动安装程序和需要的依赖包。 因为虚拟机中和电脑很多地方切换使用不方便,所以安装了xshell软件。图为xshell中的截图。

安装完毕。然后使用vi或者vim编写 运行,在屏幕上打印出hello,world。 实验3:进程创建 【实验目的和要求】1.了解进程的概念及意义;2.了解子进程和父进程 3.掌握创建进程的方法。 【实验内容】1.子进程和父进程的创建; 2.编写附件中的程序实例 【实验步骤】一1、打开终端,输入命令,在文件中输入中的代码; 2、输入命令,回车后显示无错误; 3、输入命令:./1_fork运行程序。 二、1、打开终端,输入命令,在文件中输入中的代码; 2、输入命令,回车后显示无错误: 3、输入命令:./2_vfork运行程序。 从上面可以看到两次的运行结果不一样。我们知道write函数是不带缓存的。因为在fork之前调用write,所以其数据写到标准输出一次。但是,标准I/O库是带缓存的。如果标准输出连到终端设备,则它是行缓存的,否则它是全缓存的。当以交互方式运行该程序时,只得到printf输出的行一次,其原因是标准输出缓存由新行符刷新。但是当将标准输出重新定向到一个文件时,却得到printf输出行两次。其原因是,在fork之前调用了printf一次,当调用fork时,该行数据仍在缓存中,然后在父进程数据空间复制到子进程中时,该缓存数据 也被复制到子进程中。于是那时父、子进程各自有了带该行内容的缓存。在exit 之前的第二个printf将其数据添加到现存的缓存中。当每个进程终止时,缓存中的内容被写到相应文件中。

实验一Linux操作系统基础

实验一 1 实验名称:Linux操作系统基础 2 实验目标 2.1 掌握安装Linux操作系统的方法。 2.2 掌握Linux操作系统的基本配置。 2.3 了解GNOME桌面环境。 2.4灵活掌握基本shell命令的使用。 3 实验准备 3.1 下载VMware Workstation虚拟机软件(版本不限)。 3.2 准备Linux操作系统的安装源(内核版本和发行版本均不限)。 注:实验准备、实验内容4.1和4.2作为回家作业布置,同学们利用课余时间完成。 4 实验要求、步骤及结果 4.1 安装虚拟机软件。 【操作要求】安装VMware Workstation虚拟机软件,版本不限,并填写以下内容。 4.1.1安装VMware Workstation虚拟机软件的环境(操作系统) 4.1.2VMware Workstation虚拟机版本号

4.2 安装Linux操作系统。 【操作要求】在VMware虚拟机下安装Linux操作系统,版本不限,并填写以下内容。 4.2.1 Linux发行版本: 4.2.2 Linux内核版本: 4.2.3Linux操作系统的主要配置参数

4.3 了解Linux操作系统的桌面环境之一GNOME。 【操作要求1】打开图形化用户界面、查看桌面图标,查看主菜单,查看个人用户主目录等使用环境。 【操作要求2】启动字符终端2,了解命令提示行含义。 Alt+F2+Ctrl

[用户名@主机名目录名]提示符 【操作要求3】注销字符终端2 【操作要求4】关闭图形化用户界面,关闭Linux操作系统。 4.4 掌握基本shell命令的使用。 注:以下需要截取shell命令与结果,没有结果截到下一命令提示行。 【操作要求1】用超级用户登陆;将主机名改为具有个人学号后3位特征的名称,退出虚拟终端后重新登录;查看当前目录的绝对路径。 【操作步骤-登陆】 【操作步骤-修改主机名】 【操作步骤-查看结果】 【操作要求2】查看ls命令的手册页帮助信息;了解其中-d选项的作用,并举例说明。 【操作步骤】 【主要显示结果1-ls命令-d选项】

操作系统实验报告.实验一 WINDOWS进程初识

操作系统教程 实验指导书

实验一WINDOWS进程初识 1、实验目的 (1)学会使用VC编写基本的Win32 Consol Application(控制台应用程序)。 (2)掌握WINDOWS API的使用方法。 (3)编写测试程序,理解用户态运行和核心态运行。 2、实验内容和步骤 (1)编写基本的Win32 Consol Application 步骤1:登录进入Windows,启动VC++ 6.0。 步骤2:在“FILE”菜单中单击“NEW”子菜单,在“projects”选项卡中选择“Win32 Consol Application”,然后在“Project name”处输入工程名,在“Location”处输入工程目录。创建一个新的控制台应用程序工程。 步骤3:在“FILE”菜单中单击“NEW”子菜单,在“Files”选项卡中选择“C++ Source File”, 然后在“File”处输入C/C++源程序的文件名。 步骤4:将清单1-1所示的程序清单复制到新创建的C/C++源程序中。编译成可执行文件。 步骤5:在“开始”菜单中单击“程序”-“附件”-“命令提示符”命令,进入Windows “命令提示符”窗口,然后进入工程目录中的debug子目录,执行编译好的可执行程序:E:\课程\os课\os实验\程序\os11\debug>hello.exe 运行结果 (如果运行不成功,则可能的原因是什么?) : 答:运行成功,结果: (2)计算进程在核心态运行和用户态运行的时间 步骤1:按照(1)中的步骤创建一个新的“Win32 Consol Application”工程,然后将清单1-2中的程序拷贝过来,编译成可执行文件。 步骤2:在创建一个新的“Win32 Consol Application”工程,程序的参考程序如清单1-3所示,编译成可执行文件并执行。 步骤3:在“命令提示符”窗口中运行步骤1中生成的可执行文件,测试步骤2中可执行文件在核心态运行和用户态运行的时间。 E:\课程\os课\os实验\程序\os12\debug>time TEST.exe 步骤4:运行结果 (如果运行不成功,则可能的原因是什么?) 因为此程序是个死循环,所以运行时间为无穷大。_______________________________________________________________________________ _______________________________________________________________________________ _______________________________________________________________________________ _______________________________________________________________________________ __________________________________________________________________________

大学计算机基础实验1-操作系统实验

操作系统实验 (一)Windows系统基本操作 【实验目的】 1.掌握Windows的启动与关闭。 2.了解Windows桌面的组成。 3.掌握鼠标器的操作方法。 4.掌握汉字输入法的选用。 5.了解使用帮助系统的基本方法。 6.掌握任务栏和开始菜单的设置与使用。 7.使用“我的电脑”与“资源管理器”浏览计算机。 8.掌握桌面对象、快捷方式的建立、删除。 9.掌握回收站的使用。 【实验内容】 1.Windows的启动与关闭。 (1)根据上机的实验环境登录进入Windows系统(登录名和密码由任课教师指定),观察Windows 系统桌面的组成。 (2)关闭Windows。 2.鼠标的基本操作练习,要求如下; (1)用鼠标的“拖曳”操作在桌面上移动“我的电脑”的图标。 (2)用鼠标的“单击”、“双击”和“右键单击”打开“我的电脑”窗。 (3)用鼠标的“拖曳”操作改变“我的电脑”窗口的大小和在桌面上的位置。 3.对话框的基本操作练习,要求如下: 双击 图1.1 任务栏 用鼠标“双击”图1.1所示任务栏右端的时间区域,打开“日期/时间属性”对话框,修改计算机的日期和时间。 4.使用Windows帮助系统。 (1)通过“开始∣帮助”命令或“我的电脑”、“网上邻居”等窗口中的“帮助”菜单命令打开Windows帮助窗口。

(2)单击“目录”标签,单击“文件和文件夹”书籍图标,在展示的主题项和下级书目中,查找某主题项,例如“文件和文件夹概述”主题项。 (3)单击“索引”标签,通过在文本框内键入关键字获取帮助信息。本题要求输入关键字:“窗口”,查找有关“Windows 资源管理器”的帮助信息。 (4)单击“搜索”标签,通过在文本框内键入关键字列出与其相关的帮助主题。本题要求输入关键字“快捷键”,然后单击“列出主题”,Windows 帮助窗口的左下方将列出相应主题。选择“Windows 快捷键”主题。 5.使用“我的电脑”浏览计算机,说明以下各个图标代表的对象。 6.使用任务栏上的“开始”按钮和工具栏浏览计算机。 (1)通过“开始∣文档∣我的文档”打开“我的文档”文件夹,任务栏上显示“我的文档”文件夹的图标,并将其最小化,观察任务栏上图标的变化。 (2)通过“开始∣程序∣附件∣记事本”打开记事本应用程序窗口,当前窗口为记事本,此时对应图标内凹,如图1.2所示。 (3)通过单击任务栏上的图标,在记事本窗口和我的文档窗口间切换。 (4)通过单击任务栏上的 按钮,快速最小化已打开的窗口和在桌面之间切换。 单击可以最小化 单击可以在打开的窗口和程序之间进行切换 以便查看桌面 图1.2 任务栏上的按钮显示了已打开的窗口和程序 7.用资源管理器查看C 盘上的内容。 执行“开始∣程序∣附件∣Windows “资源管理器”命令,打开资源管理器窗口,如图 1.3所示。单击左窗格中项目名旁边的加减号可扩展或收缩所包含的子项目。说明你所使用 的计算机上C 盘总空间为 ,已使用空间为 、根目录上的对象总数为 个。 注意 如果你使用的是Windows 9x 版本,执行“开始∣程序∣资源管理器”命令,打开 资源管理器窗口。 单击可以打开Internet Explorer

相关文档
最新文档