# Linux-driver **Repository Path**: andrew-zhou/linux-driver ## Basic Information - **Project Name**: Linux-driver - **Description**: Ubuntu 18.04系统上,编写一个内核字符驱动设备和相应的测试程序 - **Primary Language**: C - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-05-24 - **Last Updated**: 2021-08-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Linux_driver test #### 介绍 Ubuntu 18.04系统上,编写一个内核字符驱动设备和相应的测试程序 #### 题目 test1实现读写接口, 写进去的内容,可以读回来, 采用字节流格式 test2. 两个进程, 分别打开设备,一个读,一个写 test3. 没有数据读,block住 test4. 数据缓冲满,block住 5. 可以通过sysfs节点设置读取buffer大小(/sys/module/) test6. 父进程打开写,子进程读,用同一个fd test7. 实现一个ioctl接口,可以切换成多进程模式 test8. 多进程模式: 多个父子进程对,每一对父子进程读写内容和其它进程互不干扰 test9. 创建100对父子进程,进行读写压力测试 10. 实现一个ioctl接口,可以切换成packet模式, 每次写进去一个packet,读出来还是大小一样的packet。 11. packet单进程模式:所有打开设备往里写的进程,packet都挂在一个链上,一个进程打开设备读,读到的packet顺序和写入保持一致。 12. 如有多个进程打开设备读,采用round-robin方式,packet依次分发到各个进程。