- 博客(14)
- 资源 (1)
- 收藏
- 关注
转载 详解coredump
一,什么是coredump 我们经常听到大家说到程序core掉了,需要定位解决,这里说的大部分是指对应程序由于各种异常或者bug导致在运行过程中异常退出或者中止,并且在满足一定条件下(这里为什么说需要满足一定的条件呢?下面会分析)会产生一个叫做core的文件。 通常情况下,core文件会包含了程序运行时的内存,寄存器状态,堆栈指针,内存管理信息还有各种函
2014-08-19 20:27:33 883
转载 WifiP2pService的启动以及P2P的连接
这一章主要总结从WifiP2pService的启动到用户通过四种连接方式连接P2P的过程,四种方式包括:主动连接、被动连接、主动invite和被动invite。首先来看WifiP2pService的启动。WifiP2pService的启动WifiP2pService的创建以及启动是在SystemServer中,主要代码如下:[java] view
2014-08-16 11:16:28 6981 2
转载 Android WiFi系统
一、wpa_supplicant是什么? wpa_supplicant本是开源项目源码,被谷歌修改后加入android移动平台,它主要是用来支持WEP,WPA/WPA2和WAPI无线协议和加密认证的,而实际上的工作内容是通过socket(不管是wpa_supplicant与上层还是wpa_supplicant与驱动都采用socket通讯)与驱动交互上报数据给用户,而用户可以通过s
2014-08-16 11:05:46 756
转载 Android WiFi--系统架构
1. 系统架构 Android WiFi系统引入了wpa_supplicant,它的整个WiFi系统以wpa_supplicant为核心来定义上层用户接口和下层驱动接口。整个WiFi系统架构如下图所示: 一切尽在上图中,下面将对每部分进行详细分析。1.1 WifiService 由SystemServer启动的时候生成的Con
2014-08-16 11:04:23 1041
转载 Android中基于NuPlayer的RTSP框架学习
一、整体框架图Android中基于NuPlayer的RTSP框架如下图所示(该图来自网上)。整个图主要分为两个部分,一部分是NuPlayer的架构,另一部分则是实现了基于RTSP的流媒体播放功能,即RTSPSource。当然还有一些其他的Source,如图中的HTTPLiveSource,还有图中没有画出的GenericSource、StreamingSou
2014-08-12 12:19:35 8541
转载 Android系统启动过程
一、开机加电bootloader(汇编语言)进行底层初始化,并加载内核代码,最终跳转到内核的boot程序。二、Linux内核引导 1)kernel核心初始化(内存初始化,打开中断,初始化进程表等等); 2)驱动初始化; 3)启动内核后台(daemons)线程 4)安装根(root)文件系统 5) 启动第一个用户级进程init
2014-08-08 19:45:26 830
转载 select、poll、epoll的比较
http://my.chinaunix.net/space.php?uid=20196318&do=blog&id=366042http://blog.endlesscode.com/2010/03/27/select-poll-epoll-intro/ linux提供了select、poll、epoll接口来实现IO复用,三者的原型如下所示,本文从参数、
2014-08-06 21:00:20 652
转载 用管道(pipe)使消息队列通知(mq_notify)可以在Select和poll中使用
这是在Unix网络编程第二卷进程间通信中看到的一个技巧。它使得posix消息队列的mq_notify可以在select中使用。具体方法为:1、建立管道;2、在主线程中用select监听管道的读事件;3、在mq_notify的时间处理程序中往管道里写数据,通知主线程只是不知道这样做,效率怎么样。UNP-IPC有一段实例代码,如下:[cpp] view
2014-08-06 20:57:08 2840
转载 非阻塞式socket编程
select在Socket编程中还是比较重要的,可是对于初学Socket的人来说都不太爱用Select写程序,他们只是习惯写诸如connect、accept、recv或recvfrom这样的阻塞程序(所谓阻塞方式block,顾名思义,就是进程或是线程执行到这些函数时必须等待某个事件的发生,如果事件没有发生,进程或线程就被阻塞,函数不能立即返回)。可是使用Select就可以完成非阻塞(所谓非阻塞方式
2014-08-06 20:48:18 607
转载 socket编程 及select poll epoll示例
1、关于字节排序 网际协议采用大端字节序,来传输多字节整数。 系统提供了转换的宏定义,如果主机与网际协议相同,则宏定义为空。2、客户端 socket -> connect(阻塞,三次握手)-> rcv3、服务器端 socket -> bind -> listen -> accept(阻塞,三次握手)-> send4、函数介绍 a..s
2014-08-06 20:35:01 1037
转载 select, poll和epoll (ZZ)
select()系统调用提供一个机制来实现同步多元I/O:#include sys/time.h>#include sys/types.h>#include unistd.h>int select (int n,fd_set *readfds,fd_set *writefds,fd_set *exceptfds,struct timeva
2014-08-06 20:30:49 571
转载 详述socket编程之select()和poll()函数
elect()函数和poll()函数均是主要用来处理多路I/O复用的情况。比如一个服务器既想等待输入终端到来,又想等待若干个套接字有客户请求到达,这时候就需要借助select或者poll函数了。(一)select()函数原型如下:1 int select(int fdsp1, fd_set *readfds, fd_set *writefds, fd_set *er
2014-08-06 20:29:46 660
转载 Linux pipe函数
1. 函数说明pipe(建立管道):1) 头文件 #include2) 定义函数: int pipe(int filedes[2]);3) 函数说明: pipe()会建立管道,并将文件描述词由参数filedes数组返回。 filedes[0]为管道里的读取端 filedes[1]则为管道的写入端。4) 返回值:
2014-08-06 20:17:28 1061
转载 Linux Socket编程(不限Linux)
“一切皆Socket!”话虽些许夸张,但是事实也是,现在的网络编程几乎都是用的socket。——有感于实际编程和开源项目研究。我们深谙信息交流的价值,那网络中进程之间如何通信,如我们每天打开浏览器浏览网页时,浏览器的进程怎么与web服务器通信的?当你用QQ聊天时,QQ进程怎么与服务器或你好友所在的QQ进程通信?这些都得靠socket?那什么是socket?socket的类型有哪些?还有
2014-08-06 20:16:44 451
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人