Linux设备驱动程序(二) 0.01

来源:互联网 发布:网络域名是什么 编辑:程序博客网 时间:2024/05/22 02:24

    Scull是一个操作内存区域的字符设备驱动程序,这片区域被当作一个设备。

scull0-scull3

    分别由一个全局持久的内存区域组成。“全局”:如果设备被多次打开,则打开它的所有文件描述符可共享该设备所包含的数据。 “持久”:如果设备关闭后再打开,则其中的数据不会丢失。可以使用命令:cpcatshellI/O重定向等来访问和测试这个设备。

scullpipe0-scullpipe3

    与管道类似。一个进程读取另一个进程写入的数据。Scullpipe的内部实现将说明如何实现阻塞型和非阻塞型读写,而无需借助于中断

 

Scullsingle(一次只允许一个进程使用该驱动)

Scullpriv(每个虚拟控制台是私有的,每个控制台获取一块与其它控制台不同的内存区)

Sculluid & Scullwuid(每次由一个用户打开,可多次打开。如果一个用户所定了,则sculluid返回”Device Busy”的错误,而scullwuid则实现了阻塞型的open

    这些设备与scull0相似,但允许open操作方面有一些限制,他们增加了“策略”而不是“机制”

原创粉丝点击