Kernel Mode, User Mode】的更多相关文章

Linux 内核学习笔记整理. Unix unix 已有40历史,但计算机科学家仍认为其是现存操作系统中最大和最优秀的系统,它已成为一种传奇的存在,历经时间的考验却依然声名不坠. 1973 年,在用 C 语言重写了 Unix 系统后,大量的Unix衍生版本开始出现,许多公司把 unix 移植到新的机型上,开发者们都按照自己的方式不断增强系统的功能.Unix 系统设计简洁并在发布时提供源代码,所以许多团体都对其进行了进一步的开发.加州大学伯克利分校便是其中影响最大的一个.在BSD基础上,很多厂商也…
1.安装ubuntu时使用的virt-install的配置: virt-install \ --name test4 \ --ram 1024 \ --disk path=/data/01_ubuntu/ubuntu4.img,size=6 \ --vcpus 1 \ --hvm \ --os-type linux \ --network network=default \ --os-variant ubuntuquantal \ --graphics none \ --console pty,…
code battery_log(BAT_LOG_CRTI, "y t: %d \n", (int)my_timer_timeout); battery_log(BAT_LOG_CRTI, "my_timer_timeout=%d\r\n", my_timer_timeout); log - :: E [ )[:pmic_thread][name:battery_common_fg_20&]: - :: E [ )[:pmic_thread][name:ba…
对于线性不可分的数据集,可以利用核函数(kernel)将数据转换成易于分类器理解的形式. 如下图,如果在x轴和y轴构成的坐标系中插入直线进行分类的话, 不能得到理想的结果,或许我们可以对圆中的数据进行某种形式的转换,从而得到某些新的变量来表示数据.在这种表示情况下,我们就更容易得到大于0或者小于0的测试结果.在这个例子中,我们将数据从一个特征空间转换到另一个特征空间,在新的空间下,我们可以很容易利用已有的工具对数据进行处理,将这个过程称之为从一个特征空间到另一个特征空间的映射.在通常情况下,这种…
学习 Linux 时,经常可以看到两个词:User space(用户空间)和 Kernel space(内核空间). 简单说,Kernel space 是 Linux 内核的运行空间,User space 是用户程序的运行空间.为了安全,它们是隔离的,即使用户的程序崩溃了,内核也不受影响. Kernel space 可以执行任意命令,调用系统的一切资源:User space 只能执行简单的运算,不能直接调用系统资源,必须通过系统接口(又称 system call),才能向内核发出指令. str…
kernel 4.4.12 最简单module的编译 上一篇博客上面有一个最简单的模块源代码,今天就上一个Makefile,运行make 就可以编译一个外部的模块. vim Makefile 这个是我写好的Makefile CHEN_KERNEL 指向的是我kernel4.4.12的目录. obj-m += chen_test.o export ARCH=arm export CROSS_COMPILE=arm-linux-gnueabihf- all : make -C $(CHEN_KERN…
kernel 4.4.12 EETI eGTouch 电容屏驱动移植: 在make menuconfig 里面添加如下选项: 添加通过事件上报接口节点: Device Drivers ---> Input device support ---> <*> Event interface Device Drivers ---> Input device support ---> [*] Miscellaneous devices ---> <*> User…
kernel 4.4.12 i2c eeprom AT24c02驱动移植 在kernel make menuconfig ARCH=ARM 中打开: Device Drivers ---> Misc devices ---> EEPROM support ---> <*> I2C EEPROMs / RAMs / ROMs from most vendors 开启上面的选项.如果不能勾取的话 /at24查看相关的依赖. 第二步,在设备树内添加: CHEN_DTS/am335x…
Linux kernel 编译方法大全记录 一.这是一个我自己写的自动make脚本: #!/bin/sh export ARCH=arm export CROSS_COMPILE=arm-linux-gnueabihf- export CHEN_DTB="chenfl.dtb" if [ 1 -eq $# ]; then if [ $1 = "dtb" ]; then make -j2 $CHEN_DTB O=out cp ~/am335x/kernel4.4.12…
Linux 内核代码的目录结构 arch: 包含和硬件体系相关的的代码,每种硬件平台占一个相应的目录,如i386,arm, arm64, powerpc,mips等. block: 块设备驱动程序I/O调度. crypto: 常用的加密和散列算法,还有一些压缩和CRC校验算法. documentation:内核各部分的通用解释和注释. drivers:设备驱动程序,各个不同的驱动占用一个子目录. fs: 所支持的各种文件系统. include:头文件,与系统相关的头文件位置放在include/l…