SystemTap探测用户空间程序需要utrace的支持,3.5以上的内核版本默认支持。
对于3.5以下的内核版本,需要自己打相关补丁。
SystemTap还有一些高级功能,比如自建脚本库、探测点重命名、嵌入C代码等。
最后本文简单介绍下SystemTap的实现原理。...
分类:
其他好文 时间:
2014-06-05 10:04:22
阅读次数:
407
可以通过操作/dev/mem设备文件,以及mmap函数,将寄存器的地址映射到用户空间,直接在应用层对寄存器进行操作,示例如下:...
分类:
系统相关 时间:
2014-05-24 22:10:07
阅读次数:
454
前面的一篇文章中简单的描述了一下内存映射的内容,http://blog.csdn.net/codectq/article/details/25658813,这篇文章作为用户把内存规划好之后,在用户空间使用IOCTL对设备进行控制时的常用函数的代码摘录。后续我会把这部分完善起来。
#ifdefCONFIG_MMU
externunsigned long __must_check __copy_f...
分类:
系统相关 时间:
2014-05-23 07:32:35
阅读次数:
424
http://www.cnblogs.com/jiejnan/archive/2012/05/18/2507476.html简介:
当需要对 Linux?文件系统进行高效率、细粒度、异步地监控时,可以采用
inotify。可利用它对用户空间进行安全、性能、以及其他方面的监控。至于inotify的基本...
分类:
系统相关 时间:
2014-05-22 02:46:44
阅读次数:
530
一、lvs组件介绍lvs的组件由两部分组成:工作在内核空间的ipvs模块和工作在用户空间ipvsadm工具。其中ipvsadm是规则生成工具,而ipvs是一个使规则生效的工具。二、ipvsadm详解
分类:
其他好文 时间:
2014-05-20 17:57:55
阅读次数:
276
异步IO
在操作系统中,程序运行的空间分为内核空间和用户空间。我们常常提起的异步I/O,其实质是用户空间中的程序不用依赖内核空间中的I/O操作实际完成,即可进行后续任务。同步IO的并行模式多线程单进程
多线程的设计之处就是为了在共享的程序空间中,实现并行处理任务,从而达到充分利用CPU的效果。多.....
分类:
Web程序 时间:
2014-05-19 12:46:00
阅读次数:
529
背景
在 Linux-3.8 以后,Android 的内核分支,便去掉了 f_adb,改使用 USB function FS,在用户空间实现 USB adb 功能。这篇文章根据原作者的 Google+ 文章,在 Atmel sama5 开发板上做了测试,将步骤记录如下,供需要使用的读者参考,你也可以查看作者原文:https://plus.google.com/111524780435806926...
分类:
移动开发 时间:
2014-05-15 23:30:11
阅读次数:
538
为什么需要系统调用?主要有以下两方面原因。(1)系统调用可以为用户空间提供访问硬件资源的统一接口,以至于应用程序不必去关注具体的硬件访问操作。比如,读写文件时,应用程序不用去管磁盘类型,甚至于不用关心是哪种文件系统。(2)系统调用可以对系统进行保护,保证系统的稳定和安全。系统调用的存在规定了用户进程...
linux的基本体系结构由下面两张图可以简单的概括(两张图是一样的,只是侧重点有点不同)
从上图得知,Linux由用户空间和内核空间两部分组成。内核空间与用户空间是程序执行的两种不同状态,通过系统调用和硬件中断能够完成从用户空间到内核空...
分类:
系统相关 时间:
2014-05-15 19:19:36
阅读次数:
455
1关于greenletgreelet指的是使用一个任务调度器和一些生成器或者协程实现协作式用户空间多线程的一种伪并发机制,即所谓的微线程。greelet机制的主要思想是:生成器函数或者协程函数中的yield语句挂起函数的执行,直到稍后使用next()或send()操作进行恢复为止。可以使用一个调..
分类:
其他好文 时间:
2014-05-14 19:09:00
阅读次数:
427