摘要:
linux系统调用fork, vfork, clone:fork()、 vfork()、 clone()的区别 Linux下的进程与线程比较相近:它们都需要相同的数据结构来表示,即task_struct。区别在于一个有独立的用户空间,一个是共享的用户空间(如果完全没有用户空间则是内核线程,不需要)。Linux的用户进程不能直接被创建出来,因为不存在这样的API。它只能从某个进程中复制出来,再通过exec这样的API来切换到实际想要运行的程序文件。复制的API包括三种:fork、clone、vfork。这三个API的内部实际都是调用一个内核内部函数do_fork,只是填写的参数不同而已。而for 阅读全文
posted @ 2013-05-02 19:34
tangr206
阅读(616)
评论(0)
推荐(0)
摘要:
LinuxThread(内核2.0到内核2.4期间) Linux内核只提供了轻量进程的支持,限制了更高效的线程模型的实现,但Linux着重优化了进程的调度开销,一定程度上也弥补了这一缺陷。目前最流行 的线程机制LinuxThreads所采用的就是线程-进程"一对一"模型,调度交给核心,而在用户级实现一个包括信号处理在内的线程管理机制。 Linux-LinuxThreads的运行机制正是本文的描述重点 最初的进程定义都包含程序、资源及其执行三部分,其中:1.程序通常指代码,2.资源通常包括内存资源、IO资源、信号处理等部分,3.程序的执行通常理解为执行上下文,包括对cpu的占 阅读全文
posted @ 2013-05-02 19:02
tangr206
阅读(543)
评论(0)
推荐(0)
摘要:
字符串分割1 #!/bin/bash 2 pwd=$(dirname $0) && cd ${pwd} 3 4 echo ================ [ $(date "+%F %T") BEGIN ] ======================= 5 6 sms_list="18610489065,13581697175,18600276158,18600574510,18600883672" 8 content="fuck" 9 10 if [[ -n "${content}" ]]; 阅读全文
posted @ 2013-05-02 18:09
tangr206
阅读(234)
评论(0)
推荐(0)

浙公网安备 33010602011771号