关于fork函数返回值的问题
摘要:2009-09-24 12:17:34|分类:linux应用|字号订阅对于刚刚接触Unix/Linux操作系统,在Linux下编写多进程的人来说,fork是最难理解的概念之一:它执行一次却返回两个值。首先我们来看下fork函数的原型:#include <sys/types.h>#include <unistd.h> pid_t fork(void);返回值:负数:如果出错,则fork()返回-1,此时没有创建新的进程。最初的进程仍然运行。零:在子进程中,fork()返回0正数:在负进程中,fork()返回正的子进程的PID其次我们来看下如何利用fork创建子进程。创建子
阅读全文
linux-Tcp IP协议栈源码阅读笔记
摘要:一.linux内核网络栈代码的准备知识1.linux内核ipv4网络部分分层结构:BSD socket层:这一部分处理BSD socket相关操作,每个socket在内核中以struct socket结构体现。这一部分的文件主要有:/net/socket.c /net/protocols.c etcINET socket层:BSD socket是个可以用于各种网络协议的接口,而当用于tcp/ip,即建立了AF_INET形式的socket时,还需要保留些额外的参数,于是就有了struct sock结构。文件主要有:/net/ipv4/protocol.c /net/ipv4/af_inet.c
阅读全文
linux学习
摘要:这篇文章来源于Quroa的一个问答《What are some time-saving tips that every Linux user should know?》—— Linux用户有哪些应该知道的提高效率的技巧。我觉得挺好的,总结得比较好,把其转过来,并加了一些自己的理解。首先,我想告诉大家,在Unix/Linux下,最有效率技巧的不是操作图形界面,而是命令行操作,因为命令行意味着自动化。如果你看过《你可能不知道的Shell》以及《28个Unix/Linux的命令行神器》你就会知道Linux有多强大,这个强大完全来自于命令行,于是,就算你不知道怎么去做一个环保主义的程序员,至少他们可以
阅读全文