自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(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关注的人

提示
确定要删除当前文章?
取消 删除