Linux系统文件类型 特殊文件 和 进程间通信机制

Linux主要文件类型:
1:普通文件(第一个属性用“-”表示)
普通文件就是我们通常访问的文件,由ll命令显示出来的属性中,第一个属性为“-”,例如【-rwxr-----】。我们根据文件的内容,又可以将普通文件分为以下几种。
纯文本文件(ASCII):Linux系统中最多的一种文件类型,它的内容我们可以直接读取。文件的内容一般都是字母、数字以及一些符号等。配置文件基本都属于这种文件类型。可以使用cat命令查看文件内容。
二进制文件(Binary):系统其实只认识并且可以执行二进制文件。Linux中的可执行文件就是这种格式,当然脚本、文本方式的批处理文件虽然可执行,但不是二进制文件。例如命令cat就是二进制文件。
数据格式的文件(Data):有些程序在运行过程中会读取某些特定格式的文件,这些特定格式的文件可以称为数据文件。比如,Linux用户在登陆系统时,会将登陆数据记录在/var/log/wtmp文件内,这个文件就是一个数据文件。
2:目录文件(directory)(第一个属性用“d”表示)
目录文件就是目录,相当于windows中的文件夹。
3:符号链接文件(link)(第一个属性用“l”表示)
符号链接相当于windows中的快捷方式。在Linux中有两种链接方式,软链接(符号链接)和硬链接。
4:设备文件(设备文件分为块设备文件和字符设备文件)或称为 虚拟设备文件,用来访问硬件设备,包括硬盘、键盘、光驱、打印机等设备。
块设备文件(block)(第一个属性用“b”表示):块设备是用来存储数据以供系统访问的接口设备,比如硬盘等。
字符设备文件(character)(第一个属性用“c”表示):字符设备就是拥有串行端口的接口设备,比如键盘、鼠标等。
每一硬件至少和一个设备文件相关联。命令或应用程序通过访问设备文件来访问相应硬件设备。 
这个种类的文件,是用mknode来创建,用rm来删除,目前在最新的Linux发行版本中,我们一般不用自己来创建设备文件。因为这些文件是和内核相关联的。
特殊文件一般放在/dev下面。这个目录包含所有的设备文件。应用程序和命令读写设备文件的方式和普通文件相同。 这样Linux做到了设备无关性。

--进程间通信机制 Linux有一些机制允许进程间进行通信,叫进程间通信机制,简称IPC。
3种常用的IPC:管道,命令管道(FIFOs),sockets 
****管道是一块内核态内存,允许两个进程进行相互通信。这两个进程运行在同一台计算机上,并且相互关联。
5:管道文件(FIFO,pipe)(第一个属性用“p”表示)

****FIFO是一个文件。允许同一台计算机上的两个进程进行通信,这两个进程不必相互关联
管道文件主要用来解决多个程序同时访问一个文件所造成的错误。
6:套接字文件(sockets)(第一个属性用“s”表示)
****socket是内核态内存上的一个数据结构,运行在不同计算机上的进程可以使用socket进行通信
套接字文件通常用户网络数据连接。我们可以启动一个程序来监听客户端的请求,客户端就可以通过套接字来进行数据通信。通常可以在/var/run/目录中看到这类文件。

 


 

 

posted on 2014-03-18 00:37  灵异八哥  阅读(281)  评论(0编辑  收藏  举报