曲径通幽论坛

 找回密码
 立即注册
搜索
查看: 4019|回复: 0
打印 上一主题 下一主题

MAKEDEV -- 创建设备

[复制链接]

4918

主题

5880

帖子

3万

积分

GROAD

曲径通幽,安觅芳踪。

Rank: 6Rank: 6

积分
34397
跳转到指定楼层
楼主
发表于 2010-12-13 20:43:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
用法
cd /dev; ./MAKEDEV [ -n ] [ -v ] [ update ]
cd  /dev; ./MAKEDEV [ -n ] [ -v ] [ generic ] [ local ] [ group-keyword ... device ... ]
cd /dev; ./MAKEDEV [ -n ] [ -v ] [ -d ] device ...

描述
MAKEDEV 是个脚本程序,它可以用来在 /dev 下创建设备文件,通过这些设备文件可以访问内核中的驱动程序。

注意,如果是应用程序返回 “ENOENT” ,那么表示“没有这个文件或目录(no such file or directory)”;而如果是 "ENODEV" ,那么表示“没有此设备(no such devices)",这意味着内核没有配置或者是加载这个设备驱动程序。

选项
-n 只是打印出执行执行的动作,实际上没有更新设备。

-d 删除设备

-v 详尽模式(verbose),打印出详细的执行信息,和 -n 选项一样。

基本选项

update
该选项仅在已经实现了 /proc/interrupts 了的内核 (实际上从 1.1.x 版本的内核开始已经实现此功能)上使用。MAKEDEV 会扫描这个文件,检查都有当前内核里都配置了哪些设备,然后会将当前的检查结果和上次的检查结果(存放在 DEVICES 文件中)相比较,如果有新设备或者是主设备号不同的设备那么这些设备就会被创建,而那些不再使用的旧设备就删除掉。

generic
创建通用设备的子集。包括标准设备,软驱,各种不同硬驱,以及CD-ROM等。

local
简单的运行  MAKEDEV.local 脚本,这个脚本能创建任一个本地设备。

标准设备
std
标准设备有:
mem -- 访问物理内存
kmem -- 访问内核虚拟内存
null -- 空设备(如/dev/null)
port -- 访问 I/O 端口
zero -- 空字节来源 (如/dev/zero)
kcore -- /proc/kcore 的符号链接(用于内核除错)
full -- 写的时候总是返回 ENOSPACE
random 和 urandom -- 产生真正的随机数,这可以用来产生 rand() 函数的种子,使用 time() 产生不了真正的随机种子。
tty -- 访问进程的控制终端
loop0到loop7 -- 回环(loopback)磁盘设备,这些设备允许你使用一个普通文件作为一个块设备。一个文件系统的镜像文件时可以被 mount 起来的,这样看起来就像是文件系统在一个磁盘或者是一个块设备上。关于此类设备举例参考:http://www.groad.net/bbs/read.php?tid-2956.html
ram -- 虚拟磁盘 (ramdisk)

控制台设备
console
此关键字用来创建虚拟终端,如 tty{0..63} 。每个虚拟终端有两个设备,vcsx 和 vcsa ,它们用来产生屏幕转储 (screen-dumps)。

更多的说明见 man 手册。

此命令现在用得不多。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|曲径通幽 ( 琼ICP备11001422号-1|公安备案:46900502000207 )

GMT+8, 2025-6-18 15:40 , Processed in 0.075993 second(s), 22 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表