UNIX操作系统实验1
UNIX操作系统实验首都师范大学信息工程学院系统分析与管理实验室目录1、UNIX安装及基本操作………………………………………2、UNIX编程基础……………………………………….3、UNIX进程实验……………………………………….4、UNIX进程间通信……………………………………..5、UNIX文件系统实验………………………………………..6、UNIX综合实验………………………………………..实验一 UNIX安装及基本操作一、背景知识UNIX操作系统是一种精良的OS,可完成系统赋予OS的所有任务,与用户有良好的交互界面,在资源管理中有独到的算法和策略,开源软件使其技术有了长足发展。
UNIX核心部分设计简单且功能全面,支持多用户、多任务,文件系统可装卸,有良好的开放性及可移植性,具有强大的命令功能,具有完善的安全机制,具有网络特性等。
Linux 不同于WindowsNT、UNIX等系统,它的源代码是公开的,具有类UNIX的特点,安装和使用与UNIX相似,它实现了虚拟存贮管理,进程管理,多处理器,多文件系统,可以运行在PC平台,是一个先进的,具有生命力的操作系统,因此,课程将主要以Linux操作系统作为安装和实验的平台,UNIX操作系统的安装和使用可以参照Linux实验来完成。
二、实验目的1) 通过安装Linux,掌握Linux安装的一般程序,了解Linux安装的发展。
2) 通过学习和练习基本命令操作,掌握Linux下命令的特点,掌握基本命令的使用。
三、工具/准备工作在开始本实验之前,请回顾教科书的相关内容。
需要做以下准备:1) 一台个人计算机。
2) Linux介质(光盘,网络镜像或下载网址及网络通信联接)四、实验内容与步骤1. Linux简介Linux是一种能运行于多种平台(PC机、ALPHA工作站、SUN Sparc 工作站)的功能强大、与UNIX兼容的操作系统。
Linux的内核及应用软件的源代码是公开的,也是免费的。
它具有众多的自由组织和商业公司的支持和参与。
学习和使用Linux要遵守GPL规则。
GPL即General Public License通用公共许可协议的缩写。
GNU是GNU’s Not Unix 的缩写。
FSF是自由软件基金会(Free Software Foundation)的缩写。
Linux具有丰富的功能,它支持多种系统语言:C,C++,Java等;支持多种脚本语言:Perl,Tcl/Tk等;支持多种自然语言:中文,英文等;支持多种排版软件:Tex/Latex,OpenOffice等;支持X-Windows:Khoros,GRASS等;支持免费数据库:Postgres,MySQL等;支持网络应用:WWW等。
Linux最初是由Linus Torvalds在芬兰的Helsinki大学做毕业研究时所首创的。
Linus是将Linux作为一个小型的基于PC机的UNIX实现来写的,他的前身是Tanenbaum的Minix。
1991年夏天,Linus将Linux在Internet上公布,1991年9月,发布了0.01版,1991年10月,发布了0.02版,1991年11月初,发布了0.03版,1991年12月,Linux的版本号增加到0.10,1991年12月底,增加了虚拟内存。
Linus使Linux的源代码免费可用,并且鼓励其他的程序员来进一步地发展它。
直到今天,在由Linus所领导的、由全世界的程序员组成的开发组在整个Internet上继续开发Linux。
Linux共享了许多与UNIX相同的性质和特征:Linux是用C语言写的,而且很轻便;源代码是可以获得的;并且设计良好。
一般地,可以从Linux内核版本号来区分系统是否是Linux 稳定版还是测试版。
以版本2.4.0为例,2代表主版本号,4代表次版本号,0代表改动较小的末版本号。
在版本号中,序号的第二位为偶数的版本表明这是一个可以使用的稳定版本,如2.2.5,而序号的第二位为奇数的版本一般有一些新的东西加入,是个不一定很稳定的测试版本,如2.3.1。
这样稳定版本来源于上一个测试版升级版本号,而一个稳定版本发展到完全成熟后就不再发展。
目前的Linux稳定的版本是2.6.38-2。
Linux在持续地演变和提高,新的内核版本在几周内就可以出现,甚至在发展的集中时期在几天内就可以出现。
大部分的用户使用最新的Linux稳定版。
有特殊需要和拥有特殊硬件的用户会试试内核的测试版。
Linux没有使用任何来自A T&T或任何其他专有者的代码。
Linux的软件来自不同的来源。
许多软件包是由Free Software Foundation的GNU项目开发的,其他的来自Berkeley Software Distribution (BSD UNIX),还有XFreee86 Project公司,和全世界的职业的和业余的程序员。
因为其许可方式,Linux和Linux的发布版是非常便宜的;实际上,大部分是免费的。
Linux的种类很多,主流的Linux发行版有Ubuntu,Debian GNU/Linux,Fedora,Gentoo,MandrivaLinux,PCLinuxOS,Slackware Linux,openSUSE,ArchLinux,Puppylinux,Mint,CentOS,Red Hat等;中国大陆的Linux发行版有中标麒麟Linux(原中标普华Linux),红旗Linux (Red-flag Linux),Qomo Linux(原Everest),冲浪Linux(Xteam Linux),蓝点Linux,新华Linux,共创Linux,百资Linux,veket,lucky8k-veket.Open Desktop,Hiweed GNU/Linux,Magic Linux,Engineering Computing GNU/Linux,kylin,中软Linux,新华华镭Linux(RaysLX),CD Linux,MC Linux,即时Linux(Thizlinux),b2d linux,IBOX,MCLOS,FANX,酷博linux,新氧Linux,Hiweed,Deepin Linux,雨林木风YLMF OS等。
2002年8月,九家厂商联合发布了“Linux标准基础(LSB,Linux Standard Base),从而避免遭遇像UNIX那样分裂的命运。
2. Linux安装安装之前首先要了解计算机的硬件情况:1、CPU:对Linux来说,要求是386或更高的CPU2、Memory:至少8M,多多益善3、Harddisk:硬盘数量,硬盘类型,硬盘大小,主盘位置4、CDROM Driver:驱动器型号、厂商,接口类型5、SCSI Adapter:有无SCSI卡,厂商、型号6、Display Adapter:厂商、型号,水平、垂直的扫描频率范围7、Mouse:鼠标类型,按钮数量,串口、总线、PS2,串口号8、Net:主机的IP地址、子网掩码、网关地址,域名服务器的IP地址、主机所处域的名称、主机的名称、网络的类型等参数如何收集硬件资料:收集有关硬件的各种手册;在MSDOS下,可用MSD程序来收集;在Windows下,通过“控制面板”收集。
或参阅硬件的产品说明书。
请填写Linux安装硬件准备表,这将使你的安装变得简易。
表1 计算机硬件设备参数表现代操作系统几乎无一例外地使用硬盘分区。
在作硬盘分区时,通常有如下几种情况。
1、硬盘上还有尚未分区的空间,则为Linux新建一个分区。
2、硬盘上有一个未使用的分区,则首先删除现已不用的分区,再为Linux新建一个分区。
3、所使用的分区上尚有未使用的空间,方法一是做好数据备份并做好验证,删除原有大分区,再新建二个分区;方法二是压缩现有数据,改变分区大小,再创建新分区。
如何压缩数据/改变分区/创建新区:采用RedHat光盘中,位于目录dosutils下的fips 工具来做,或采用第三方软件来做。
Linux提供了多种类型的安装:客户机类型安装:Linux首先删除原来Linux的分区,再创建新分区并安装Linux,如果硬盘上有其他操作系统,可以通过安装LILO(LInuxLOad)或GRUB做成双启动。
所需空间约600MB左右。
服务器安装:如果需要一台Linux服务器,则可以采用服务器安装。
它首先删除所有的分区(不管是否是Linux),再创建几个Linux分区,并安装Linux。
所需空间约1600MB左右。
(只有需要服务器时才采用)自定义安装:可以选择安装何种软件包,是否采用LILO双启动等。
安装方式:从光盘安装:通过引导盘从软盘启动或在DOS下将目录转到光驱的DOSutils下运行autonboot启动/修改BIOS直接光盘启动。
从硬盘安装:将所有的Linux软件包存入硬盘另一个分区的子目录下,制作引导盘,由引导盘启动。
从NFS安装:将Linux软件包通过NFS方式传到自己的计算机上,服务器上要有Linux 的安装文件,了解主机名或IP地址,设置好共享文件夹,通过网络引导盘启动。
从FTP安装:通过FTP方式将所需的软件包下载到自己的计算机上,设置好服务器的地址,做好网络启动盘,通过网络引导盘启动。
从HTTP安装:通过HTTP方式与通过FTP方式很相似,将所需的软件包下载到自己的计算机上,设置好服务器的地址,做好网络启动盘,通过网络引导盘启动。
HTTP方式只是下载方式的不同。
一般安装过程:Linux的安装过程非常简单,只要按照提示选择安装即可。
1、引导安装系统:在纯DOS下运行autoboot.bat或自启动。
2、选择语言:3、选择键盘:4、选择安装方法:光盘、硬盘等5、选择安装还是升级:6、选择安装类型:Workstation/Server/Custom7、创建Linux分区:可以用DiskDruid/Fdisk来创建8、设置安装点:最好分为二个,一个为“/”,另一个大于64M9、初始化交换区:初始化内存2倍的分区作为交换区10、格式化Linux分区:格式化时检查坏块11、选择和安装软件包:12、配置鼠标:13、配置网络:14、配置时区:15、选择启动服务:自动/缺省/数据库16、配置打印机:17、设置root口令并创建用户:超级用户口令至少输入6个以上字符码18、配置验证方案:NIS/Shadow/MD519、创建专用引导盘:20、安装LILO或GRUB:21、配置X-Window系统:显示卡/显示器/显示内存/显示时钟22、完成安装不同的Linux安装方式不尽相同,但是,大体不出左右。
3. Linux使用基础登录:Linux是一个多用户,多任务的操作系统,可以有多个用户同时使用一台计算机,各用户都有自己独立的用户帐号。
UNIX操作系统
UNIX操作系统目录第一篇基础篇第一章UNIX操作系统概述 (1)1.1 UNIX操作系统简介 (1)一、UNIX特点 (1)二、UNIX流派及标准 (2)1.2 UNIX系统组成 (3)1.3 与UNIX有关的几个名词 (4)第二章UNIX常用操作 (5)2.1 启动终端 (5)2.2 登录 (5)2.3 UNIX命令 (5)一、UNIX命令格式 (5)二、特殊按键 (7)三、UNIX常用简单命令 (7)四、UNIX用户间简单通讯命令 (8)2.4 注销(退出UNIX系统) (10)第三章UNIX文件系统 (10)3.1 UNIX文件系统分类 (10)3.2 UNIX文件类型 (10)3.3 UNIX树型目录结构 (11)3.4 UNIX文件名称 (12)3.5 UNIX文件存取权限 (12)3.6 UNIX重定向与管道 (15)3.7 UNIX文件系统常用命令 (15)第四章UNIX文件系统常用工具和实用程序 (17)4.1 vi编辑器的最基本用法 (17)4.2 利用find命令查找文件 (18)4.3 grep命令基本用法 (19)4.4 利用cmp命令比较文件 (20)4.5 文件的备份和恢复实用程序 (20)一、tar命令 (20)二、cpio命令 (21)4.6 文件压缩和解压程序 (22)一、compress 压缩命令 (22)二、pack 压缩文件 (22)三、gzip 压缩文件 (23)四、pkzip压缩文件 (23)第五章UNIX简单维护与管理 (23)5.1 选择init状态 (23)5.2 UNIX关机 (25)5.3 修改系统时间 (25)5.5 如何查看磁盘使用情况 (26)5.6 掉电故障及处理 (26)第六章网络通信 (26)6.1 TCP/IP协议 (26)6.2 查看网上用户信息 (27)6.3 使用mail 发送和接收电子邮件 (27)一、发送电子邮件 (27)二、阅读电子邮件 (27)6.4 在网络上登录和拷贝 (28)一、telnet (28)二、ftp (29)第一章UNIX启动和定时管理 (32)1.1 UNIX启动过程 (32)1.2 UNIX用户的登录过程 (32)1.3 daemon进程 (33)1.4 UNIX系统的定时器 (33)第二章UNIX用户管理 (34)2.1用户管理 (35)一、增加新用户 (35)二、删除用户 (35)一、增加新用户组 (35)二、删除用户组 (36)2.2 采用另外一种方法增加和删除用户 (36)一、增加用户 (36)二、删除用户 (37)第三章存储设备的使用 (38)3.1磁带的使用 (38)3.4 mount和umount命令 (41)一、mount命令 (41)二、umount命令 (42)3.5 CD-ROM的使用 (42)一、CD-ROM设备的创建 (42)二、CD-ROM的挂接 (43)第四章网络、主机和路由参数设置 (43)4.1 /etc/networks文件 (43)4.2 /etc/hosts文件 (43)4.3 /etc/gateways文件 (44)4.4 设置步骤 (45)4.5 测试 (45)第一部分上机环境 (45)1.1 UNIX主机环境 (45)1.2 工作站环境 (46)第二部分在工作站上登录UNIX (46)2.2 NetTerm的使用 (46)第三部分UNIX常用命令的使用 (47)3.1 常用命令之一 (47)3.2 常用命令之二(选做) (51)3.3 常用命令之三 (51)第四部分ftp的使用 (53)4.1 ftp的安装 (53)4.2 使用ftp拷贝文件 (53)附录A UNIX命令速查表 (54)第一篇基础篇第一章UNIX操作系统概述1.1 UNIX操作系统简介Unix操作系统自1969年问世以来,至今已有20年的历史,它的第一版于1969年在Bell实验室产生,1975年对外公布,1976年以后在Bell实验室外广泛使用。
Unix实验报告
Unix实验报告计算机科学与技术系实验报告专业名称网络工程课程名称《网络操作系统》项目名称UNIX的Shell班级学号姓名同组人员无实验日期2016.6实验5 UNIX的Shell一、实验目的与要求:(简述本次实验要求达到的目的,涉及到的相关知识点,实验的具体要求。
)掌握UNIX B-shell的主要功能和shell脚本的编写、运行。
二、实验内容(请根据电子版实验指导书撰写如下内容:实验环境、实验子项目名称、实验步骤、实验运行结果)1、验证UNIX B-shell的主要功能2、编写一shell脚本并赋执行权限运行【实验步骤】1、验证shell的主要功能例1:$ ls -l >file1把ls命令的输出放到文件file1中,屏幕上不产生任何输出。
如果文件不存在则shell 建立它;否则文件的最初内容被来自ls的输出所替代(即覆盖原有数据)。
可以使用下面的记号把输出添加到一个文件原有内容的后面(称追加)$ ls -l >>file1在这种情况下如果file1 不存在则也建立它。
例2:将标准错误输出重定向到指定文件。
$ ls -l jin 2 >errfile由于名为jin的文件不存在,原来在屏幕上看到的错误信息重定向到errfile文件中;标准错误输出可重定向到指定文件中;其形式可用program 2>filename 。
2、编写一shell脚本,并赋执行权限运行:(1)$ vi aaa.sh // 输入可执行的内容,保存退出(2)$ chmod a +x aaa.sh // 赋可执行权限(3)$ aaa.sh // 运行三、实验分析与小结(实验过程中的问题分析、产生的原因以及解决方法;实验结果分析;有待优化思路)总结分析:1、shell是用户与作业系统之间的交互层,用户修改其环境,设置或取消shell的环境变量,shell的主要任务是:提示用户打入指令,读指令,转换指令为核心所能理解的语言。
操作系统实验报告(进程间的共享存贮区和信号量通信)
case -1:perror("fork()");exit(0);case 0:do_child_loop(sem_set_id,FILE_NAME);exit(0);default:break;}}for(i = 0;i<10;i++){int child_status;wait(&child_status);}printf("main is done");fflush(stdout);return 0;}运行结果:二、共享主存段机制共享主存段为进程提供了直接通过主存进行通信的有效手段,不像消息缓存机制那样需要系统提供缓存,也不像pipe机制那样需要事先建立一个特殊文件,而是有通信双方直接访问某些共享虚拟存储器空间。
在系统V中,系统管理一组共享主存段控制块。
通信进程在使用共享主存段以前,首先提出申请,系统为止分配存储空间并返回共享主存段标识号。
一个共享段建立后,进程把它被附加到自己的虚拟存储空间中。
一个进程可以附加多个共享主存段。
一个主存段一旦被附加到进程的虚拟机空间后,对它的访问以其他虚拟机的访问完全相同。
但为了保证共享主存段数据完整性,通信的进程之间要互斥的进行访问。
当通信进程不再需要该共享主存段时,可使用命令将其与进程分离,从而使其进程的虚空间删除。
为了理解进程通过共享主存段的通信过程,下面举例,一个是进程向共享段写信息的例子:一个是进行从共享段读信息的例子。
代码如下:四、实验过程与分析一、信号量机制在第一个例子的程序中创建了5个并发子进程,互斥地对文件进行写操作,将自己的进程号写到文件中去,信号量的初值为1,当地一个进程执行update_file函数时首先将信号量值-1,(相当于P操作)致使其它进程等待无法操作文件,直到其结束后,将其值变为1后(相当于V操作),其它进程并发竞争对文件的写操作,并将自己的pid 写入文件中。
在linux中信号量机制的执行既步骤如下所示:(1)信号量的定义:struct semaphore {spinlock_t lock;unsigned int count;struct list_head wait_list;};在linux中,信号量用上述结构体表示,我们可以通过该结构体定义一个信号量。
unix 实验报告
unix 实验报告UNIX 实验报告一、引言UNIX 是一种操作系统,广泛应用于计算机科学领域。
本实验报告旨在介绍UNIX 操作系统的基本概念、特点和使用方法,并通过实验验证其功能和性能。
二、UNIX 操作系统的基本概念1. UNIX 的起源UNIX 是由贝尔实验室的 Ken Thompson 和 Dennis Ritchie 在 1969 年开发的操作系统。
它最初是为了支持多用户、多任务和分时操作而设计的。
2. UNIX 的特点UNIX 具有以下几个特点:- 可移植性:UNIX 可以在不同的硬件平台上运行,使得软件开发更加灵活。
- 多用户和多任务:UNIX 支持多用户同时使用,并且可以同时运行多个程序。
- 分时操作:UNIX 采用分时操作方式,使得多个用户可以共享计算机资源。
- 强大的命令行界面:UNIX 提供了丰富的命令行工具,使用户可以通过命令完成各种操作。
3. UNIX 的文件系统UNIX 使用层次化的文件系统来组织文件和目录。
文件系统的根目录为 "/",所有的文件和目录都从根目录开始构建。
UNIX 的文件系统采用了一种统一的文件访问方式,用户可以通过文件路径来访问文件。
三、UNIX 操作系统的使用方法1. 登录和注销用户可以通过用户名和密码登录到 UNIX 操作系统。
登录后,可以执行各种命令和操作。
注销时,用户可以使用 "logout" 命令退出系统。
2. 文件和目录操作UNIX 提供了一系列命令来管理文件和目录,如:- "ls" 命令用于列出当前目录下的文件和目录;- "cd" 命令用于切换当前目录;- "mkdir" 命令用于创建新的目录;- "rm" 命令用于删除文件或目录。
3. 进程管理UNIX 允许同时运行多个进程,并提供了一些命令来管理进程,如:- "ps" 命令用于查看当前正在运行的进程;- "kill" 命令用于终止指定的进程。
unix实验报告
unix实验报告Unix实验报告引言Unix操作系统是一种广泛应用于计算机领域的操作系统,具有稳定性、可靠性和灵活性等优势。
本实验旨在探索Unix操作系统的基本特性和功能,以及如何在Unix环境下进行常见的操作和任务。
一、Unix操作系统的概述Unix操作系统诞生于20世纪70年代,由贝尔实验室的Ken Thompson和Dennis Ritchie等人开发。
它采用了分时操作系统的设计理念,支持多用户、多任务和多进程的运行环境。
Unix操作系统以其开放源代码和良好的可移植性,成为了众多计算机系统的首选操作系统。
二、Unix系统的基本命令和操作在Unix系统中,用户可以通过命令行界面或图形界面来操作系统。
本节将介绍一些常见的Unix命令和操作。
1. 文件和目录管理Unix系统以文件和目录的形式来组织和管理数据。
用户可以使用命令如ls、cd、mkdir等来查看、切换目录以及创建新的目录。
2. 文件编辑和查看Unix系统提供了强大的文本编辑工具,如vi和nano。
用户可以使用这些工具来编辑和查看文本文件,进行代码编写和修改。
3. 进程管理Unix系统支持多进程的运行环境,用户可以使用命令如ps、kill等来查看和管理系统中的进程。
这些命令可以帮助用户了解系统的运行情况,并进行必要的进程控制和管理。
4. 网络和通信Unix系统具有强大的网络和通信功能。
用户可以使用命令如ping、ssh等来测试网络连接和进行远程登录。
此外,Unix系统还支持各种网络协议和服务,如FTP、HTTP等。
三、Unix环境下的编程和开发Unix操作系统以其开放的设计理念,成为了许多程序员和开发者的首选平台。
本节将介绍Unix环境下的编程和开发工具。
1. C语言开发Unix操作系统的内核和许多系统工具都是使用C语言编写的。
因此,C语言成为了Unix环境下最常用的编程语言之一。
开发者可以使用Unix系统提供的gcc 编译器来编译和调试C语言程序。
unix操作系统实验汇总
实验1 进程控制一、实验目的1.加深对进程概念的理解,明确进程和程序的区别;2.进一步理解并发的概念,明确并发与并行的异同;3.分析进程竞争资源现象,学习解决进程互斥的方法;4.了解Linux系统中进程通信的基本原理。
二、实验内容1.进程的创建:编写一段源程序,使用系统调用fork()创建一个子进程,当此程序运行时,在系统中有一个父进程和一个子进程活动。
让每一个进程在屏幕上显示一个字符串:父进程显示字符“I am the parent”并显示其进程id和子进程的id;子进程显示字符串“I am the child”,并显示其进程id。
2.进程的控制,进程并发如图所示。
设有七个进程,其执行次序如图所示。
在Linux下使用C语言利用系统调用命令fork()、execl()、exit()、wait()描述,调用execl()函数的时候,模拟调用/bin/echo下的echo命令,向控制台输出一句可鉴别是哪个进程的字符串即可。
三、实验代码四、遇到问题及解决办法参考代码:实验2 进程同步与死锁一、实验目的1.理解进程同步的原理和机制;2.通过读者----写者问题的设计与实现进一步掌握进程同步在实际中的应用;3.理解死锁的产生原因,掌握预防和避免死锁的方法,以及死锁的检测方法;4.通过车辆行驶死锁问题的设计与实现掌握解决死锁的方法。
二、实验内容1.编写读者----写者问题的程序,要求如下:(1)在Linux下用C编程,利用信号量操作实现进程同步;(2)读写请求随机产生(比如敲击键盘上的r和w),并动态显示当前的状态(读的时候有多少读者,有多少个写者在等待;写的时候是谁在写,还有多少写者和读者在等待),每个读者和写者用的时间可以预先设定。
本例中,有一个初始化的数组,读者和写者均是对此数组进行操作。
写者是随机对数组中的数字进行修改,修改的值也是随机的,这样更直观、更有助于理解。
2.车辆行驶死锁问题,在Linux下用C语言完成下面模型:设有一个T型路口,其中A、B、C、D处各可容纳一辆车,车行方向如图所示,试找出死锁并用有序分配法消除之。
操作系统实验1-Linux系统操作使用
第1章Linux系统操作使用一、Linux操作系统简介Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux 版本,但它们都使用了Linux内核。
Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。
Linux是一个领先的操作系统,世界上运算最快的10台超级计算机运行的都是Linux操作系统。
严格来讲,Linux这个词本身只表示Linux内核,但实际上人们已经习惯了用Linux来形容整个基于Linux内核、并且使用GNU 工程各种工具和数据库的操作系统。
Linux得名于天才程序员林纳斯·托瓦兹。
Linux 操作系统的诞生、发展和成长过程始终依赖着五个重要支柱:UNIX 操作系统、MINIX 操作系统、GNU 计划、POSIX 标准和Internet 网络。
1981 年IBM公司推出微型计算机IBM PC。
1991年,GNU计划已经开发出了许多工具软件,最受期盼的GNU C编译器已经出现,GNU的操作系统核心HURD一直处于实验阶段,没有任何可用性,实质上也没能开发出完整的GNU操作系统,但是GNU奠定了Linux用户基础和开发环境。
1991年初,林纳斯·托瓦兹开始在一台386SX兼容微机上学习minix操作系统。
1991年4月,林纳斯·托瓦兹开始酝酿并着手编制自己的操作系统。
1991 年4 月13 日在comp.os.minix 上发布说自己已经成功地将bash 移植到了minix 上,而且已经爱不释手、不能离开这个shell 软件了。
1991年7月3日,第一个与Linux有关的消息是在comp.os.minix上发布的(当然此时还不存在Linux这个名称,当时林纳斯·托瓦兹的脑子里想的可能是FREAX,FREAX的英文含义是怪诞的、怪物、异想天开等)。
1991年的10月5日,林纳斯·托瓦兹在comp.os.minix新闻组上发布消息,正式向外宣布Linux内核的诞生(Freeminix-like kernel sources for 386-AT)。
操作系统实验---进程通信——共享存储区和信号量
实验报告实验题目姓名:学号:课程名称:操作系统实验所在学院:信息科学与工程学院专业班级:计算机任课教师:实验项目名称进程通信——共享存储区和信号量一、实验目的与要求:1、了解和熟悉共享存储机制2、了解和熟悉信号量机制3、熟悉信号量机制中使用的数据结构和信号量机制的操作以及控制。
4、了解共享主存段机制,学会对共享主存段的系统调用。
二、实验设备及软件:1、PC机一台2、Linux操作系统三、实验方法(原理、流程图)一、共享存储区1、共享存储区机制的概念共享存储区(Share Memory)是 UNIX 系统中通信速度最高的一种通信机制。
该机制可使若干进程共享主存中的某一个区域,且使该区域出现(映射)在多个进程的虚地址空间中。
另一方面,一个进程的虚地址空间中又可连接多个共享存储区,每个共享存储区都有自己的名字。
当进程间欲利用共享存储区进行通信时,必须先在主存中建立一共享存储区,然后将它附接到自己的虚地址空间上。
此后,进程对该区的访问操作,与对其虚地址空间的其它部分的操作完全相同。
进程之间便可通过对共享存储区中数据的读、写来进行直接通信。
图示列出二个进程通过共享一个共享存储区来进行通信的例子。
其中,进程 A 将建立的共享存储区附接到自己的 AA’区域,进程 B 将它附接到自己的 BB’区域。
应当指出,共享存储区机制只为进程提供了用于实现通信的共享存储区和对共享存储区进行操作的手段,然而并未提供对该区进行互斥访问及进程同步的措施。
因而当用户需要使用该机制时,必须自己设置同步和互斥措施才能保证实现正确的通信。
二、涉及的系统调用1、shmget( )创建、获得一个共享存储区。
系统调用格式: shmid=shmget(key,size,flag)参数定义: int shmget(key,size,flag);key_t key;int size,flag;其中,key是共享存储区的名字;size是其大小(以字节计);flag是用户设置的标志,如IPC_CREAT。
操作系统实验指导1
操作系统实验指导书楚雄师范学院计算机科学系操作系统课程组2011-9-20第一部分操作系统上机指导Linux操作系统环境:RedHat Enterprise Linux ES release 3 (Taroon Update 1) (2.4.21-9.EL)Red Flag Linux release 4.0 (HOT) (2.4)登录到系统常用命令练习:用root账号(超级用户)注册,口令为jkxroot(注意大小写)。
注册成功出现#号(超级用户系统提示符,普通用户的系统提示符为$)。
注销(退出)系统:logout 或exit3.练习使用命令ls(注意Linux命令区分大小写。
)使用ls 查看当前目录内容;使用ls 查看指定目录内容,如/目录,/etc目录使用ls –all 查看当前目录内容;使用dir 查看当前目录内容4.使用cd改变当前目录cd .. 回到上层目录;cd / 回到根目录5.pwd 显示当前路径6.建立目录mkdirmkdir 目录名;mkdir /home/s2001/newdir7.删除目录:rmdir;8.复制文件cp:如cp 文件名1 文件名29.移动文件或目录: mv10.删除文件rm11. 显示文件内容:more (分页显示);12. 显示文件:cat 文件名建立文件:cat >文件名,ctrl+d结束输入使用编辑器vi 编辑文件进入linux的文本模式之后,在命令行键入vi filename.c 然后回车。
下面作一些简单的解释:首先vi命令是打开vi编辑器。
后面的filename.c是用户即将编辑的c文件名字,注意扩展名字是.c;当然,vi编辑器功能很强,可以用它来编辑其它格式的文件,比如汇编文件,其扩展名字是.s;也可以直接用vi打开一个新的未命名的文件,当保存的时候再给它命名,只是这样做不很方便。
最基本的命令I :当进入刚打开的文件时,不能写入信息,这时按一下键盘上的I键(insert),插入的意思,就可以进入编辑模式了。
电子科技大学14秋《unix操作系统》在线作业1答案
14秋《unix操作系统》在线作业1
一,单选题
1. UNIX系统中显示指定年份日历表的命令是()。
A. last
B. date
C. cat
D. cal
?
正确答案:D
2. UNIX系统对初学者和健忘者提供的帮助有()。
A. or
B. 使用电子手册,即manu命令
C. man/help/info/learn
D. 各种命令及其UNIX在线手册
?
正确答案:C
3. 在UNIX下,进程是一个程序或者任务的()。
A. 编号
B. 执行进度
C. 完成情况
D. 执行过程
?
正确答案:D
4. 当用户退出系统时,()程序终止执行,UNIX系统在终端上启动一个新的getty程序并等待新的用户登录。
A. shell
B. 内核
C. init
D. LILO or GRUB
?
正确答案:A
5. 在UNIX操作系统下,对命令的使用可以是()。
A. 不区分大小写字母
B. 只能识别小写字母
C. 要区分小写或大写字母
D. 只能是大写字母
?
正确答案:B。
