摘要:
1.安装遵照不般的安装步骤:$./configure$make$su -c "make install"注意执行make install只有root权限才能把SQLite编译得到的文件安装到默认的目录/usr/local下。如果想更改安装路径可以用$./configure --prefix=/opt/SQLite其他的安装选项可以输入$./configure --help进行查看。2.检查一下所安装的头文件、库、可执行程序orisun@zcypc:~$ ll /usr/local/include/*sqlite*#Linux默认从/usr/local/include下去寻找 阅读全文
摘要:
Linux内核模块是一种可被动态加载和卸载的可执行程序。通过内核模块可以扩展内核功能,内核模块通常用于设备驱动、文件系统等。如果没有内核模块,需要向内核添加功能就需要自发代码、重新编译内核、安装新内核等步骤。内核空间中不止一个程序试图访问驱动程序模块,导致一个内核块在没有被调用完毕之前又被其他程序调用,这称之炒代码的重入。因此在设计驱动模块的数据结构时要考虑数据结构在多线程环境下不被其他线程破坏,对于共享的数据应该采取加锁的方法保护。应用程序使用虚拟内存,有一个巨大的地址空间。而内核模块可以使用的内在非常小,所以编码时要注意内存的分配和使用。Printk是内核提供的打印函数,向终端输出打印信息 阅读全文