1.1 Linux驱动程序的功能是什么?(1)对设备初始化和释放。(2)进行内核与硬件的数据交互。(3)检测和处理设备出现的错误。1.2内核程序中申请内存使用什么函数?答案:kmalloc()、kzalloc()、vmalloc()。解读:(1)void *kmalloc(size_t size, gfp_t flags);①申请连续的物理内存,这对于要进行DMA的设备十分重要,但大小不能超过128KB,其中有16B是被页描述符占用了。②较常用的flag有GFP_ATOMIC(分配内存的过程是一个原子过程)、GFP_KERNEL(正常分配内存)、GFP_DMA(给DMA控制器分配内存)。③对应...