上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 14 下一页
摘要: 内核空间与用户空间的通信方式 下面总结了7种方式,主要对以前不是很熟悉的方式做了编程实现,以便加深印象。 1.使用API:这是最常使用的一种方式了A.get_user(x,ptr):在内核中被调用,获取用户空间指定地址的数值并保存到内核变量x中。B.put_user(x,ptr):在内核中被调用,将内核空间的变量x的数值保存到到用户空间指定地址处。C.Copy_from_user()/copy_... 阅读全文
posted @ 2015-12-13 21:15 DChipNau 阅读(18766) 评论(0) 推荐(5) 编辑
摘要: 函数调用的细节实现这个问题当时感觉答得还可以,不过很多细节记不清晰了。所以下面反汇编一段小程序,进行分析,因为我比较熟悉的是arm汇编,所以我选择了一台安装了交叉工具链的ubuntu,而没有使用之前的centos。所以可能画风会有些不同。下图是我写了一个简单的程序和makefile。程序中是由main函数调用fun()函数。 编译程序,生成可执行文件,并对其进行反汇编,将反汇编之后的信息写入dum... 阅读全文
posted @ 2015-12-13 21:10 DChipNau 阅读(442) 评论(0) 推荐(0) 编辑
摘要: Kmalloc申请的最大内存 以前虽然读过源码,但是对于它的申请上限确实没注意过。下面分析下,下面是kmalloc的源码。 可以看出,如果想知道kmalloc能申请的范围,需要跳转到文件中观察。下图便是包含的文件 可以看出,kmalloc一般情况下的上限是128K,但是如果打开了KMALLOC_MAX_SIZE这个宏,可以申请的内存会更大,如果想要知道上限的话,需要知道KMALLOC_MAX_S... 阅读全文
posted @ 2015-12-13 21:08 DChipNau 阅读(6019) 评论(0) 推荐(0) 编辑
摘要: 如何在不重新编译内核,不rmmod内核模块的情况下修改系统调用为了解决这个问题,最终实现了两种解决方式:1.Linux系统调用劫持2.Kprobes内核调试技术(并非真正的修改)下面分别说下:Linux系统调用劫持:其实就是修改内核符号表,来达到一个劫持的作用。因为系统调用实际上是触发了一个0x80... 阅读全文
posted @ 2015-12-13 21:07 DChipNau 阅读(2531) 评论(1) 推荐(2) 编辑
摘要: 一直想自己做一个最小系统,这次终于把想法付诸实现。 原理图如下: PCB图如下: 过了多日,板子终于邮到了,就是下面这个熊样。 焊接了稳压电路,发现稳压电路原理图部分画错,没有接地,然后飞了根线,稳压电路才稳稳的好用。 焊接stm32芯片的时候,其中VCC和GND引脚挂了锡,结果烧了一块稳压芯片,最 阅读全文
posted @ 2015-12-13 20:52 DChipNau 阅读(22703) 评论(1) 推荐(0) 编辑
摘要: 使用下面这个命令取消回显stty -echo使用下面这个命令打开回显stty echo 阅读全文
posted @ 2015-12-07 19:40 DChipNau 阅读(627) 评论(0) 推荐(0) 编辑
摘要: 格式: echo -e "\033[字背景颜色;字体颜色m字符串\033[0m"例如:echo -e "\033[41;36m something here \033[0m"其中41的位置代表底色, 36的位置是代表字的颜色那些ascii code 是对颜色调用的始末.\033[ ; m …… \... 阅读全文
posted @ 2015-12-06 13:35 DChipNau 阅读(483) 评论(0) 推荐(0) 编辑
摘要: 被朋友圈中的atom的activate-power-mode 震撼到了,于是想试试。步骤如下首先安装atom:sudo add-apt-repository ppa:webupd8team/atomsudo apt-get updatesudo apt-get install atom然后安装act... 阅读全文
posted @ 2015-12-02 22:45 DChipNau 阅读(449) 评论(0) 推荐(0) 编辑
摘要: Input system (输入子系统) 以前写一些输入设备(键盘,鼠标等)的驱动都是字符设备,混杂设备处理的,linux开源社区的大神门看到了这大量的输入设备如此分散不堪,就想有木有一种机制,可以对分散的,不同类别的输入设备进行统一的驱动,所以才出现了输入子系统。 输入子系统引入的好处:1) 统一了物理形态各异的相似输入设备的处理功能。例如:各种鼠标,不论PS/2,usb,还是蓝牙,都被同样... 阅读全文
posted @ 2015-12-01 14:56 DChipNau 阅读(632) 评论(0) 推荐(0) 编辑
摘要: 总线设备驱动模型一个总线设备驱动包含三个元素:总线,驱动,设备。总线是处理器和设备之间的同道,在设备模型中,所有的设备都通过总线相连,甚至是内部的虚拟“platform”总线。 总线:描述总线的数据结构如下: 总线注册和删除使用: 下面介绍几个比较重要的总线方法: 。总线属性Buf_attribute的结构定义如下: 而总线设备和总线属性的结合和解除如下: 设备:Linux系统中的每一个总线... 阅读全文
posted @ 2015-12-01 14:51 DChipNau 阅读(386) 评论(0) 推荐(0) 编辑
上一页 1 ··· 4 5 6 7 8 9 10 11 12 ··· 14 下一页