摘要:
第三章介绍了一个简单的字符设备驱动程序,它是一块内存当做设备的。当时的scull还很简单(只是介绍了openreleasereadwrite四个函数),这一章将进入讲述字符设备驱动程序的一些高级操作。ioctl函数,从函数名来看的话,iocontrol,看上去是用来操作IO的。更通俗的讲,对于硬件控制的代码应该置于此处。对于当前的scull来说,最常用的对硬件的操作也就是修改当前的量子大小(quantun)和当前的数组大小(qset)了。在用户空间调用的ioctl函数原型如下:1 int ioctl(int fd, unsigned long cmd, ...); 三个点的参数看上去有点新奇. 阅读全文