- 博客(6)
- 收藏
- 关注
原创 child的宿命
previous on process: linux进程创建可以使用fork和vfork 进程在创建后有三种命运: destiny one:正常情况 此时子进程先于父进程死亡,父进程调用wait或者wait_pid为其收尸。 #include #include #include #include #include extern int errno; int main()
2012-02-23 13:25:08 218
原创 linux创建线程之vfork
相对于fork,vfork在创建线程时不会将父进程的地址空间完全拷贝过来,相反是在父进程的地址空间里运行的,因此对父进程变量的修改会在父进程体现出来。 另外vfork可以保证子进程先于父进程执行,此时如果子进程依赖父进程的某些条件可能会产生死锁。 函数原型 #include #include pid_t vfork(void) 返回值: 子进程返回0,父进程返回子进程pid
2012-02-22 19:41:55 957
原创 linux 创建进程
虽然现在说的都是线程,和进程相比线程的确有不可比拟的优势,但是有些时候使用进程也是很有必要的,具体情况具体分析。 linux下线程的创建使用fork系统调用 函数原型: pid_t fork(void)函数返回值: 父进程返回子进程pid,子进程中返回0,出错返回-1 使用fork创建子进程时会拷贝父进程的资源,包括堆、栈和数据空间,现代系统都使用写时拷贝技术,也就是copy-o
2012-02-22 16:37:53 244
转载 vim 快捷键
vim undo 可以使用下面的命令: u 撤销最后执行的命令 U 修正之前对该行的操作 Ctrl+R redo vim 大小写切换,针对单个字符: ~ 查找和替换: /pattern 从光标开始处向文件尾搜索pattern ?pattern
2012-02-18 21:40:05 254
原创 socket常用地址定义
ipv4 /* Address to accept any incoming messages. */ #define INADDR_ANY ((unsigned long int) 0x00000000) /* Address to send to all hosts. */ #define INADDR_BROADCAST ((unsigned
2012-02-13 14:56:43 425
原创 socket 地址结构体定义
IPV4 struct sockaddr_in { __kernel_sa_family_t sin_family; /* Address family */ __be16 sin_port; /* Port number */ struct in_addr sin_addr; /* Interne
2012-02-13 14:16:49 600
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人