- 1、本文档被系统程序自动判定探测到侵权嫌疑,本站暂时做下架处理。
- 2、如果您确认为侵权,可联系本站左侧在线QQ客服请求删除。我们会保证在24小时内做出处理,应急电话:400-050-0827。
- 3、此文档由网友上传,因疑似侵权的原因,本站不提供该文档下载,只提供部分内容试读。如果您是出版社/作者,看到后可认领文档,您也可以联系本站进行批量认领。
查看更多
第1章 U N I X基础知识
1.1 引言
所有操作系统都向它们运行的程序提供服务。典型的服务有执行新程序、打开文件、读文
件、分配存储区、获得当前时间等等,本书集中阐述了 U N I X操作系统各种版本所提供的服务。
以严格的步进方式、不超前引用尚未说明过的术语的方式来说明 U N I X几乎是不可能的(可
能也会是令人厌烦的) 。本章从程序设计人员的角度快速浏览U N I X ,并对书中引用的一些术语
和概念进行简要的说明并给出实例。在以后各章中,将对这些概念作更详细的说明。本章也对
不熟悉U N I X 的程序设计人员简要介绍了U N I X提供的各种服务。
1.2 登录
1.2.1 登录名
登录 U N I X 系统时,先键入登录名,然后键入口令。系统在其口令文件,通常是
/ e t c / p a s s w d 文件中查看登录名。口令文件中的登录项由 7个以冒号分隔的字段组成:登录名,
加密口令,数字用户 I D ( 2 2 4 ) ,数字组I D ( 2 0 ) ,注释字段,起始目录( / h o m e / s t e v e n s ) ,以及s h e l l
程序( / b i n / k s h ) 。
很多比较新的系统已将加密口令移到另一个文件中。第 6章将说明这种文件以及存取它们
的函数。
1.2.2 shell
登录后,系统先显示一些典型的系统信息,然后就可以向 s h e l l程序键入命令。s h e l l是一个
命令行解释器,它读取用户输入,然后执行命令,用户通常用终端,有时则通过文件 (称为
s h e l l脚本) 向s h e l l进行输入。常用的 s h e l l有:
• Bourne shell, /bin/sh
• C shell, /bin/csh
• KornShell, /bin/ksh
系统从口令文件中登录项的最后一个字段中了解到应该执行哪一个 s h e l l 。
自V 7 以来,Bourne shell得到了广泛应用,几乎每一个现有的U N I X系统都提供Bourne shell 。
C shell是在伯克利开发的,所有 B S D版本都提供这种 s h e l l 。另外,AT T 的系统V/386 R3.2 和
S V R 4也提供C shell (下一章将对这些不同的U N I X版本作更多说明)。K o r n S h e l l是Bourne shell
的后继者,它由S V R 4提供。K o r n S h e l l在大多数U N I X系统上运行,但在S V R 4之前,通常它需
要另行购买,所以没有其他两种 s h e l l流行。
本书将使用很多 s h e l l实例,以执行已开发的程序,其中将应用 Bourne shell 和K o r n S h e l l都
具有的功能。
2 U N I X环境高级编程
Bourne shell 是Steve Bourne在贝尔实验室中开发的,其控制流结构使人想起
Algol 68 。C shell是在伯克利由Bill Joy完成的,其基础是第6版s h e l l (不是B o u r n e
s h e l l )。其控制结构很像C语言,它支持一些Bourne shell 没有提供的功能,如作业
控制,历史机制和命令行编辑。 K o r n S h e l l 是David Korn 在贝尔实验室中开发的,
它兼容Bourne shell ,并且也包含了使C shell非常流行的一些功能,如作业控制、
命令行编译等。
本书将使用这种形式的注释来描述历史,并对不同的 U N I X 实现进行比较。当
我们了解了历史缘由后,采用某种特定实现技术的原因将变得清晰起来。
1.3 文件和目录
1.3.1 文件系统
U N I X 文件系统是目录和文件的一种层次安排,目录的起点称为根 ( r o o t ) ,其名字是一个
字符/ 。
目录(d i r e c t o r y )是一个包含目录项的文件,在逻辑上,可以认为每个目录项都包含一个
文件名,同时还包含说明该文件属性的信息。文件属性是:文件类型,文件长度,文件所有者,
文件的许可权(例如,其他用户能否能访问该文件),文件最后
文档评论(0)