嵌入式linux,加载驱动程序后,运行程序导致系统奔溃

2019-07-12 17:01发布


设备的写缓冲存只有100字节,但应用程序要写入4096字节,如果考虑不周全,很可能在写驱动缓存时越界,导致系统奔溃。
test.c(应用程序,用户)
demo1.c(驱动程序,内核)
★★★如果把copy_from_user(info,buf,count)改写为copy_from_user(info,buf,size),会导致系统奔溃。

重启虚拟机后:


★★★系统奔溃,重启虚拟机后,在/dev目录下所建立的节点被清除,而且在/proc/devices文件中所申请的设备号被清除
自己创建的设备文件,通常在重启之后删除,需要重新创建节点