网站大量收购独家精品文档,联系QQ:2885784924

UnixLinux操作系统培训资料.ppt

  1. 1、本文档共300页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
教学课件课件PPT医学培训课件教育资源教材讲义

特殊文件 特殊文件是表示物理设备的伪文件。Unix将所有的特殊文件存放在/dev目录中。 特殊文件是用来表示设备的伪文件。主要由系统程序使用。 * SCSI硬盘 * SCSI硬盘是采用SCSI接口的硬盘,SCSI是Small Computer System Interface(小型计算机系统接口)的缩写,使用50针接口,外观和普通硬盘接口有些相似。SCSI硬盘和普通IDE硬盘相比有很多优点:接口速度快,并且由于主要用于服务器,因此硬盘本身的性能也比较高,硬盘转速快,缓存容量大,CPU占用率低,扩展性远优于IDE硬盘,并且支持热插拔。 硬件特殊文件 所有连接到计算机上的设备都可以通过特殊文件访问。 例如,文件/dev/fd0表示一个软盘驱动器。设备名称后面的数字指的是一个具体的设备。在这个例子中,/dev/fd0指的是第一个软盘驱动器。如果存在第二个软盘驱动器,那么它将是/dev/fd1。同理,/dev/lp0对应于第一台打印机。 第一块IDE硬盘称为/dev/hda,第二块称为/dev/hdb,依此类推。硬盘还被划分成一个或多个分区,分区可以作为单独的设备。第一块硬盘的第一个分区称为/dev/hda1。如果有第二个分区,则称为/dev/hda2。SCSI和SATA硬盘驱动器都拥有自己的名称。第一块SCSI或SATA硬盘驱动器是/dev/sda,第二块是/dev/sdb,等等。同样,分区也进行编号。 SCSI表示法有时候也用于其他类型设备。一个常见例子就是USB闪存,它被视为一个可移除的SCSI硬盘。基于这一原因,闪存的特殊文件也被命名为/dev/sda1或者相似的名称。 * 终端特殊文件:tty 终端是连接到主机计算机的独立物理设备。 命令tty cp /etc/passwd /dev/tty * 伪设备特殊文件 伪设备是一个充当输入源或输出目标的文件,但是并不对应于实际设备。两个最有用的伪设备是null文件和zero文件。 null文件是/dev/null;zero文件是/dev/zero。写入到这两种设备的任何输出都会被抛弃。有时候这些文件也称为位桶(bit bucket)。 cat /etc/passwd /dev/null cat /etc/passwd /dev/zero 当处理输出时,两个位桶的作用相同。两者唯一的区别发生在输入上。当程序从/dev/null中读取数据时,不管请求输入多少字节,结果总是eof信号,也就是说读取/dev/null不返回任何东西。 当程序从/dev/zero中读取数据时,文件生成和请求一样多的字符。但是,它们都是值0。在Unix中,认为这个值是null字符。 例如,出于安全考虑,经常需要清楚文件或整个磁盘的内容。在这些情况下,可以使用null字符覆盖已有的数据,即从/dev/zero中向输出目标复制足够多的字节。 * 命名管道: mkfifo 命名管道是一种用来创建特殊类型的管道设施的伪文件。在示范命名管道的工作机制之前,我们先快速了解一下常规管道。下述命令提取系统口令文件中所有包含‘bash’的行。然后数据被传送给wc程序,以统计这些行的数量: grep bash /etc/passwd | wc –l 当以这种方式使用管道时,管道并没有具体的名称。管道将自动创建,且仅当两个进程正在运行时它才存在。基于这一原因,我们称之为匿名管道。 命名管道与匿名管道相似,它们都将一个进程的输出连接到另一个进程的输入。但是命名管道和匿名管道有两个重要区别。 必须显示创建命名管道。 当两个进程结束时,命名管道并不会消失。除非删除命名管道,否则它会一直存在。因此,一旦创建了命名管道,就可以反复地使用它。 通常将命名管道称为FIFO * 命名管道 在创建命名管道时,需要使用mkfifo程序。该程序的语法为: mkfifo [-m mode] pipe 其中mode是chmod程序使用的一种文件模式类型,pipe是希望创建的管道名称。 大多数时候,程序员使用命名管道来促进两个进程之间数据的交换,这种操作称为进程间通信(Interprocess communication,IPC)。在这些情况中,程序将在需要时创建、使用然后删除命名管道。通过使用mkfifo程序,可以从命令行上手动创建命名管道。 为了进行体验,打开两个终端端口。 第一个端口 mkfifo fifotest grep bash /etc/passwd fifotest 第二个wc –l fifotest rm fifotest * 命名管道对程序员的重要性 如果需要进程间通信,程序员要做的就是让程序创建一个命名管道,然后在需要时用它来从一个进程向另一个进程传送数据。一旦工作完成,程序就可以移除管道。这种方法简单、

文档评论(0)

yuzongxu123 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档