内存映射:1. 打开被映射文件;2. 调用mmap;作用: 将一个给定文件映射到一个存储区域中。#include void * mmap(void* addr, size_t len, int prot, int flag, int fields, off_t off);返回值:若成功则返回映射区的...
分类:
其他好文 时间:
2015-04-14 00:29:22
阅读次数:
124
背景知识基本交代清楚了,下面我们实际写一个小例子看一下。代码的功能很简单,显示一行文本,然后退出。我们使用了syscall中的write和exit调用,查一下前面的调用号和参数,我们初步总结如下:write(即sys_write)调用号为1,需传递3个参数unsigned int fd
const char *buf
size_t countexit(sys_exit)调用号为60,只需传递一个错误...
分类:
系统相关 时间:
2015-04-12 10:41:21
阅读次数:
395
经过上一篇的铺垫貌似可以很轻松的用汇编写出mmap的代码来,可仔细一看,还是有不少问题需要解决:1.系统调用mmap如果出错并不直接返回MAP_FAILED(-1),而是一个“类似”值;C库中的mmap函数对其做了包装,使其最终返回-1;如果我们直接调用mmap syscall,则这些事必须自己来做。2.C库函数如果出错会设置errno的值,而在汇编中没法直接用:extern errno的方法使用外...
分类:
系统相关 时间:
2015-04-12 10:40:03
阅读次数:
328
看到这里大家都基本知道了如何进行linux下的汇编系统调用;不过有些童鞋可能会问:那些C库中函数里为我们解决的额外汇编代码你是怎么知道的?
好吧,我承认:我是通过逆向知道的,这貌似有点犯规的嫌疑…
比如举个例子,那上一篇里的mmap C库函数来说,首先写一个C代码:#include
#include
#include
#inclu...
分类:
系统相关 时间:
2015-04-12 10:37:45
阅读次数:
226
1.错误日志报告如下:.....120223 23:36:06 InnoDB: Compressed tables use zlib 1.2.3120223 23:36:06 InnoDB: Initializing buffer pool,size = 24.0GInnoDB: mmap(2647...
分类:
数据库 时间:
2015-04-11 19:26:20
阅读次数:
135
线程间通信,fork(),waitpid(),signal,捕捉信号,用c执行shell命令,共享内存,mmap实验要求:1.简单shell: 通过c实现基本的命令行shell操作,实现两个函数,main()和setup().setup读取用户的下一条指令(最多80个字符),然后分解为独立的标记,并...
分类:
编程语言 时间:
2015-04-01 09:25:58
阅读次数:
648
note:epoll使用mmap加速内核与用户空间的消息传递。 这点实际上涉及到epoll的具体实现了。无论是select,poll还是epoll都需要内核把FD消息通知给用户空间,如何避免不必要的内存拷贝就 很重要,在这点上,epoll是通过内核于用户空间mmap同一块内存实现的。
分类:
其他好文 时间:
2015-03-31 21:58:40
阅读次数:
104
MMAP函数#include void *mmap(void *start, size_t length, int prot, int flags, int fd, off_t offsize);mmap()用来将某个文件内容映射到内存中,对该内存区域的存取即是直接对该文件内容的读写。addr参数来...
分类:
其他好文 时间:
2015-03-30 22:58:39
阅读次数:
208
#作用:建立内存映射文件而不是直接读取内容文本信息内容:如下(名称是text.txt)Loremipsumdolorsitamet,consectetueradipiscingelit.Donecegestas,enimetconsectetuerullamcorper,lectusligularu...
分类:
编程语言 时间:
2015-03-18 13:51:46
阅读次数:
7201
1.memcmp可否用来比较结构体?strcmp和memcpy的区别?
2.软中断和硬中断的区别?
3.进程间通信的几种方式?
4.kmalloc和vmalloc差别?
5.应用层的mmap和内核态的vmalloc对内存访问的差别?
6.用户态是否可以直接访问内核态内存?
7.PCIe中MSI中断如何触发?
8.怎么知道一个文件的大小?
9.spin_lock在单核和多核模式下的区...
分类:
系统相关 时间:
2015-03-17 00:53:02
阅读次数:
190