进程/线程控制: 创建 退出 等待 多进程 fork() exit() wait()
多线程pthread_createpthread_exit()pthread_join()线程的同步与互斥:线程的互斥...
分类:
编程语言 时间:
2014-05-26 23:46:42
阅读次数:
318
1
SystemServer分析SystemServer的进程名就是前面所说的“system_server”,是zygote进程“app_process”fork出来的第一个子嗣,其重要性不言而喻。下面我们简称其为SS。1.1
SS的诞生先回顾一下SS是如何创建的:/*在zygoteinit.jav...
分类:
其他好文 时间:
2014-05-26 13:37:58
阅读次数:
375
上一篇博文可以实现基本的网络通信,但是只能服务给一个人,我们可以通过给每个客户端fork()一个子进程,来实现一对多的服务。
方法:
客户端连到服务器以后,服务器启动一个新创建的套接字对话,也就是说父进程可以继续连接下一个客户端,而子进程来需要处理
accept()创建的副套接字,实现通信功能。父进程克隆子进程后可以关闭副套接字close(connect_d),而子进程可以关闭主监听套...
分类:
其他好文 时间:
2014-05-26 05:02:14
阅读次数:
228
信号机制
管道
有名管道
文件锁
消息队列
信号量
共享内存...
分类:
编程语言 时间:
2014-05-25 16:47:07
阅读次数:
307
(1)在虚拟机中执行应用程序
(2)程序调用libc里的封装例程 , 封装例程syscall调用,向内核发送系统调用号。具体分析发现。syscall会通过调用__kernel_vsyscall函数发送系统调用号。
(3)__kernel_vsyscall函数执行sysenter快速系统调用,由用户态进入内核态。
(4)sysenter进入内核态时,会先找到执行系统调用的入口函数ia32_sysenter_target。
(5)执行到sysenter_do_call函数处,通过call *sys_call_...
分类:
其他好文 时间:
2014-05-25 13:03:55
阅读次数:
396
socket模型:
1、阻塞模型
一个单进程accept阻塞,接收到客户端请求后,read消息,处理write返回,然后循环继续accept。
这种模型最最简单,不实际,没什么实际用途,对于新手教学还行。
2、多进程(线程)模型
主进程循环accept阻塞,接收到客户端请求后,fork子进程处理,子进程read阻塞,接收客户端消息并响应。
这种模型是我使用到...
分类:
其他好文 时间:
2014-05-24 19:50:08
阅读次数:
274
CGI
CGI全称是“公共网关接口”(Common Gateway Interface),HTTP服务器与你的或其它机器上的程序进行“交谈”的一种工具,其程序须运行在网络服务器上。
CGI可以用任何一种语言编写,只要这种语言具有标准输入、输出和环境变量。如php,perl,tcl等。
FastCGI
FastCGI像是一个常驻(long-live)型的CGI,它可以一直执行着,只要激活后,不会每次都要花费时间去fork一次(这是CGI最为人诟病的fork-and-execute 模式)。它还支持分布...
分类:
Web程序 时间:
2014-05-22 09:31:44
阅读次数:
340
void DaemonInit(void){ //LOG::INF("[ServerMeeting]
服务初始化.\n"); int pid; //如果是父进程,结束父进程,子进程继续 if(pid=fork()) { exit(0); } /*else
if(pid<0) // 不可能进入...
分类:
其他好文 时间:
2014-05-21 23:01:49
阅读次数:
294
僵尸进程:一个子进程死亡了,但是它的父进程并没有调用wait或waitpid进行状态收集,关于这个进程的描述符还存在系统中,这个子进程就死不瞑目,就成了僵尸进程。孤儿进程:顾名思义,就是没有父进程的进程。在OS中,一个父进程死亡,它的那些还在运行的子进程就成为孤儿进程。孤儿进程会被init进程(pi...
分类:
其他好文 时间:
2014-05-21 19:24:54
阅读次数:
229
从多任务OS开始,线程主要用来表示IO异步;而今随着4G和多核等的到来,计算密集型又热门起来了。
硬件价格和性能从低到高:
PC/Laptop multi core, memory shared
PC clusters
SuperComputers
假设一个理想并行计算机:每个处理器计算能力相同,忽略调度,
static thread 是对一个虚拟处理器的软件层面的抽象;
s...
分类:
其他好文 时间:
2014-05-21 08:17:39
阅读次数:
326