《操作系统原理》实验报告.docx

上传人:b****1 文档编号:1412716 上传时间:2022-10-22 格式:DOCX 页数:26 大小:337.83KB
下载 相关 举报
《操作系统原理》实验报告.docx_第1页
第1页 / 共26页
《操作系统原理》实验报告.docx_第2页
第2页 / 共26页
《操作系统原理》实验报告.docx_第3页
第3页 / 共26页
《操作系统原理》实验报告.docx_第4页
第4页 / 共26页
《操作系统原理》实验报告.docx_第5页
第5页 / 共26页
点击查看更多>>
下载资源
资源描述

《操作系统原理》实验报告.docx

《《操作系统原理》实验报告.docx》由会员分享,可在线阅读,更多相关《《操作系统原理》实验报告.docx(26页珍藏版)》请在冰豆网上搜索。

《操作系统原理》实验报告.docx

《操作系统原理》实验报告

《操作系统原理》实验报告

 

 

————————————————————————————————作者:

———————————————————————————————— 日期:

 

 

    《操作系统原理》

实 验报告书

 

 

班级:

   

学号:

  

姓名:

   

指导教师:

 

 

2013-2014学年第二 学期

实验名称:

 LINUX 用户界面    

实验时间:

 2014年 4月 2日第7周星期三

一、实验目的

1,熟悉Linux字符操作界面,熟练掌握常用Shell命令。

2,熟悉Linux文本编辑方法,学会编辑软件VI的使用。

3,了解Linux编译器gcc的功能,掌握基于Linux平台的C程序的开发

二、实验预习(预备知识的问题及回答)

1.为什么在Linux系统中,诸如光盘、U盘等要先挂载而后才能使用?

如何获得U盘的设备名?

装载点在文件系统中的位置是什么?

由于文件系统的差异,Linux在默认情况下并不支持软盘,光盘,U盘,所以需要通过装在相应盘片才可以访问其中的数据

装载点是挂载文件系统的目录位置

 

2.从虚拟机界面退出进入WindowsOS界面的操作是Ctrl+Alt ,从WindowsOS界面进入虚拟机界面的方法是鼠标点击虚拟机界面     。

3.权限的含义是什么?

如何使用数字法设定文件的权限?

Linux系统中的每个文件和目录都有相应的访问许可权限,访问权限分为只读(r),可写(w)和可执行三种,有三种不同类型的用户可以对文件或者目录进行访问,分别是文件所有者(u),同组用户(g)和其它用户(o)。

所有的文件和目录都被创建他们的人所拥有。

只要你是这个文件的所有者或者你登陆为用户,你就拥有了改变所有者,群组和其他人权限的权利。

使用数字法改变权限:

命令格式chmod权限数值文件名

说明给指定文件赋予数值所规定的权限

ﻩ在数字设定法中,每种权限设置均可以用数值来代表,其中0表示没有权限,1表示可执行权限,2表示可写权限,4表示可读权限,这些值之和便可以用来设定特定权限。

4.什么过滤操作?

在Linux中如何实现?

ﻩﻩ过滤操作:

将一个命令的输出作为一个命令的输入Linux实现的命令格式:

命令|命令

 

5.在Linux中挂载u盘并能显示其文档的中文信息,所使用的挂载命令是:

Mount/dev/sdal/mnt/usb             。

6.什么是vi?

 其三种操作模式的含义是什么?

给出三种工作模式间的转换图。

命令模式:

vi启动后的默认模式,控制光标的移动,复制删除文字,进入输入模式和末行模式

输入模式:

进行文字输入

末行模式:

保存文件,退出VI

三、实验内容(包含实验所用命令或相关程序源代码)

1.shell操作命令(给出每题所用的Shell命令或命令结果)

(1)创建名为stu1、stu2的2个用户,设置密码分别为student1和student2,并将它们设为组group1中的成员。

#groupaddgroup1

#useraddstu1–ggroup1

#sustu1

Spasswdstu1回车后敲入密码student1

$exit

#useradd stud2 –ggroup1

#sustu2

$passwdstu2

$exit

 

(2)在每个用户的主目录下建立2个目录,分别命名为dir1和dir2。

#sustu1

$cd~

$mkdir dir1

$exit

#sustu2

$cd~

$mkdirdir2

$exit

(3)查找stu1用户主目录、下属各子目录的默认存取权限,并给出结论。

#sustu1

$cd..

$ls-1

用户主目录权限为:

drwx--------,即目录的用户可读,写,执行,同组和其它的用户无任何权限

#sustu`

$cd~

ﻩ$ls-1

Dir1目录权限为:

drwxr-xr-x,即目录的用户可读,写,执行

 

(4)调试pwd和cd命令,回答下列关于Linux文件系统中目录的有关问题。

用户主目录的绝对路径如何表示?

 /home/stu1/home/stu2           

②根目录如何表示?

   /root            

③.和..分别表示什么目录?

    子目录,父目录       

~表示什么目录?

    用户主目录      

⑤当前目录如何表示?

 Cd~          

(5)新建用户stu3,设置其密码为student3,并将其设置为group2中成员。

尔后,以stu3登录,在其主目录下建立名为text的目录,在text目录下再建立名为dir1的子目录,并使其成为当前目录。

#groupaddgroup2

#useradd stu3–ggroup2

#sustu3

$passwd回车后敲入密码student3

$cd~

$mkdirtext

$mkdirdir1

$cdtext/dir1

 

(6)使用cat>sneakers.txt命令,分析命令行catsneakers.txt的显示结果。

$cat>sneakers.txt

buysomesneakers

then gotothe coffeeshop

then buysome coff

^D

$catsneakers.txt

从键盘中创建一个名为sncakers.txt文件,文件内容为:

buysomesncakers

Thengotothecoffeeshop

Thenbuysomecoff

 

(7)使用上题的方法,在dir1目录中建立home.txt文件,其内容为:

  bringthecoffee home

 takeoffshoes

putonsneakers

   makesome coffee

  relax!

$cd/home/stu1/dir1

$cat>home.txt

Bringthecoffeehome

Takeoffshoes

Putonsneakers

Makesomecoffee

Relax!

[ctrl+d]

(8)试写出实现下列功能的shell命令:

① 将home.txt文件移至其上级目录中(即text目录下)。

$mv/home.txt

   

将home.txt添加到sneakers.txt尾部形成新的文件saturday.txt。

$cat cneakers.txt>asturday.txt

$cat home.txt>>Saturday.txt

 

 

将text目录树从stu3用户主目录下移至stu2主目录下。

【使用特权用户方法】

su

mv/home/stu3/text/home/stu2

 

【修改目录权限方法】

#cp/home/stu3/text/home/stu2

 

(9) 试画出上述命令后,用户stu1、stu2和stu3主目录中的目录树(3棵子树)。

 

2.LinuxC程序开发

(1)编写LinuxC程序,把一个文件的内容复制到另一个文件中,即实现简单的copy功能。

要求:

程序输入的第一个参数是源文件,第二个参数是目标文件。

【源程序】

#include

#include

#include<stdio.h>

#include

Intmain(intargc,char*argv[])

{

FILE*in,*out;

Charch;

If(argc!

=3)

ﻩPrintf(“you forgot toentera \n”);

Exit(0);

}

If(in=fopen(argv[1],”r”))==NULL

{

Printf(“cannitopenoutfile\n”);

Exit(0);

}

If(out=fopen(argv[2],”w”))==NULL

{

Prntf(“cannotopenoutfile”);

Exit(0);

}

While(!

feof(in))fputc(in),out);

Fclose(in);

Fclose(out);

 

【运行命令】

#gcc–o test copy.c

#./test 

 

(2)编写LinuxC程序,列出stu2主目录中的文件信息,并将其中saturday.txt文件的权限设置为文件所有者可读可写、同组用户只读、其他用户无权限。

【源程序】

#include

#include

#include

#include<crrno.h>

Int main(intargc,char*argv[])

{

DIR*dp;

ﻩStructdirent*dirp;

ﻩIntn=0;

ﻩIf(arge!

=2)

{

ﻩPrintf(“asignleargementis required”);

Exit(0);

}

If(dp=opendir(argv[1])==NULL)

{

ﻩPrintf(“can notopen%s”,args[1]);

Exit(0);

}

While(((dirp=readdir(dp))!

=NULL)&&(n<=50))

{

If(n%1==0)printf(“”);

N++;

ﻩPrintf(“%10s\n”,dirp->d_name);

}

System(“chmod640/home/stu2/text/dir1/Saturday.txt”)

}

 

【运行命令】

 

#gcc–o testlist.c

#./test.home/stu2

 

ﻬ实验名称:

 SHELL程序设计   

实验时间:

2014 年4月 16  日第 9周星期三

一、实验目的

熟悉SHELL脚本编程的步骤,掌握基于Bash的Shell脚本开发。

 

二、实验预习(预备知识的问题及回答)

1.Linux系统默认的shell语言是什么?

欲查看该shell的版本,应使用什么命令?

Bashshell

$echo $BASH_VERSION

 

2.预习shell有关变量和参数的相关知识,回答下列问题。

(1)假设用户进行了如下的赋值操作:

$person=jenny

试给出下面命令的输出结果。

1)echoperson   person          

2)echo$person jenny         

3)echo‘$person’  $person         

4)echo“$person” jenny      

(2)填充下列与环境变量、位置变量和预定义变量相关的表格。

Shell变量

定义

HOME

保存用户注册目录的绝对路径

PATH

保存用冒号分割的目录路径

PWD

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 幼儿教育 > 幼儿读物

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1