共享内存简介
共享内存允许两个或多个进程共享一给定的存储区。因为数据不需要在客户进程和服务器进程之间复制,所以这是最快的一种IPC。共享内存的方式有两种:mmap()系统调用和系统V共享内存。
mmap()系统调用
mmap()系统调用使得进程之间通过映射同一个普通文件实现共享内存。普通文件被映射到进程地址空间后,进程可以向访问普通内存一样对文件进行访问,不必再调用read(),write(...
分类:
系统相关 时间:
2014-08-14 16:45:08
阅读次数:
301
本文转自:http://blog.csdn.net/unbutun/article/details/6101354#ibm-pconRead 系统调用在用户空间中的处理过程Linux 系统调用(SCI,system call interface)的实现机制实际上是一个多路汇聚以及分解的过程,该汇聚点就是 0x80 中断这个入口点(X86 系统结构)。也就是说,所有系统调用都从用户空间中汇聚到 0x...
分类:
其他好文 时间:
2014-08-12 19:10:14
阅读次数:
348
翻译说明:这是一个日本人写的用户态下的函数tracer, 我们知道系统调用可以用strace, 库调用可以使用ltrace, 但是linux下竟然没有一个比较有名的用户程序的tracer, 这真是比较奇怪。目前这个工具只支持x86架构,arm之类的嵌入式环境不支持。以后有时候自己写一个tracer。
原文来自: http://binary.nahi.to/hogetrace/
trac...
分类:
其他好文 时间:
2014-08-12 00:45:23
阅读次数:
500
Activity中有一个名称叫onCreate的方法。该方法是在Activity创建时被系统调用,是一个Activity生命周期的开始。可是有一点容易被忽视,就是onCreate方法的参数saveInsanceState。一般的程序开发中,很少用到这个参数。 onCreate方法的完整定义如下: p...
分类:
其他好文 时间:
2014-08-11 17:19:02
阅读次数:
255
简介strace常用来跟踪进程执行时的系统调用和所接收的信号。 在Linux世界,进程不能直接访问硬件设备,当进程需要访问硬件设备(比如读取磁盘文件,接收网络数据等等)时,必须由用户态模式切换至内核态模式,通 过系统调用访问硬件设备。strace可以跟踪到一个进程产生的系统调用,包括参数,返回值,执...
分类:
系统相关 时间:
2014-08-10 21:11:10
阅读次数:
395
HTTP(HyperTextTransferProtocol,超文本传输协议)HTTP协议是应用层的一种协议,是一种C/S架构服务,基于TCP/IP协议来通信,监听在TCP的80端口上。下面就开始介绍HTTP协议的相关内容,在开始之前先简单的介绍一下端口类型、TCP协议的功能和状态、Socket通信时的系统调用。一、常..
分类:
其他好文 时间:
2014-08-10 18:52:41
阅读次数:
253
DESCRIPTION共享内存是最快的可用IPC形式。它允许多个不相关(无亲缘关系)的进程去访问同一部分逻辑内存。如果需要在两个进程之间传输数据,共享内存将是一种效率极高的解决方案。一旦这样的内存区映射到共享它的进程的地址空间,这些进程间数据的传输就不再涉及内核。这样就可以减少系统调用时间,提高程序...
分类:
其他好文 时间:
2014-08-10 12:38:30
阅读次数:
205
用户态对accept的标准使用方法:if ((client_fd = accept(sockfd, (struct sockaddr *)&remote_addr, &sin_size)) == -1) { //accept()函数让server接收客户的连接请求 perror("acce...
分类:
其他好文 时间:
2014-08-09 18:40:18
阅读次数:
323
下面我们来看看一个进程如何来启动另一个程序的执行。在Linux中要使用exec函数族。系统调用execve()对当前进程进行替换,替换者为一个指定的程序,其参数包括文件名(filename)、参数列表(argv)以及环境变量(envp)。exec函数族当然不止一个,但它们大致相同,在 Linux中,它们分别是:execl,execlp,execle,execv,execve和execvp,下面我只...
分类:
其他好文 时间:
2014-08-08 21:21:46
阅读次数:
328
当一个用户进入,退出,再次进入你的应用时,你的应用中的Activity 会在它的生命周期的各个状态下切换。例如,当你的activity第一次启动,它出现在系统的前方接受用户的焦点。在这个过程中,Android系统调用了一系列的生命周期方法来设置UI和其他组件。如果用户执行了一个操作,启动了另一个activity或者切换到其它应用中,你的activity会移动到后台(这时activity已经不可见,但是它的实力和状态都保持不变),系统会调用另外的一些生命周期方法。...
分类:
移动开发 时间:
2014-08-08 08:29:35
阅读次数:
181