linux学习
yanziguilai
这个作者很懒,什么都没留下…
展开
-
nginx学习十三 初始fork和nginx守护进程ngx_daemon
学习nginx已经有一个多月了,觉得越来越吃力了,主要原因自己总结了一下:1平台是基于linux的,以前几乎没有接触过linux,而nginx使用了很多linux的函数;2就是进程,这个东西接触的也很少,linux的多进程更不用说,而现在正好看到这里,觉得异常的吃力,这不看到nginx守护进程的建立,就找资料好好学习一下,所以本文已学习fork为主要内容。好了,先看一下nginx的守护进程的建原创 2014-10-11 20:45:17 · 5155 阅读 · 1 评论 -
进程通信之共享内存
共享内存共享内存就是允许两个不相关的进程访问同一个逻辑内存。共享内存是在两个正在运行的进程之间共享和传递数据的一种非常有效的方式。不同进程之间共享的内存通常安排为同一段物理内存。进程可以将同一段共享内存连接到它们自己的地址空间中,所有进程都可以访问共享内存中的地址,就好像它们是由用C语言函数malloc分配的内存一样。而如果某个进程向共享内存写入数据,所做的改动将立即影响到可以访问同一段共享内原创 2014-10-12 22:47:18 · 1511 阅读 · 0 评论 -
进程通信之无名管道
本节学习进程通信的另一种方式:管道。管道是一个进程连接数据流到另一个进程的通道,它通常把一个进程的输出通过管道连接到另一个进程的输入。在shell命令中经常会看到管道的应用,比如我们要列出当前文件下所有命名中有"test"的文件:ls -l | grep test。其中"|"就代表我们在使用管道,它会把"ls -l"的查询结果通过管道,发送给grep,然后执行"grep test"命令后把结构输出原创 2014-10-15 17:20:05 · 7708 阅读 · 0 评论 -
linux进程通信之命名管道
前一节学习了无名管道,这节学习命名管道。二命名管道无名管道只能用来在父子进程或兄弟进程之间进行通信,这就给没有亲缘关系的进程之间数据的交换带来了麻烦,解决这个问题就是本节要学习的另一种管道通信:命名管道。命名管道也被称为FIFO文件,FIFO不同于管道之处在于它提供一个路径名与之关联,以FIFO的文件形式存在于文件系统中。这样,即使与FIFO的创建进程不存在亲缘关系的进程,只要原创 2014-10-15 22:50:34 · 1298 阅读 · 0 评论 -
linux进程通信之信号
本节主要学习信号和与信号相关的处理函数,后续还会更新。一 信号信号是UNIX和Linux系统响应某些条件而产生的一个事件,接收到该信号的进程会相应地采取一些行动。通常信号是由一个错误产生的。但它们还可以作为进程间通信或修改行为的一种方式,明确地由一个进程发送给另一个进程。一个信号的产生叫生成,接收到一个信号叫捕获。二 信号的种类Signal Description原创 2014-10-19 17:28:48 · 1640 阅读 · 0 评论 -
linux fcntl函数
fcntl功能描述:根据文件描述来操作文件的特性。#include #include int fcntl(int fd, int cmd);int fcntl(int fd, int cmd, long arg);int fcntl(int fd, int cmd, struct flock *lock);描述fctl针对(文件)描述提供控制。fd是被参数cmd操作原创 2014-10-20 17:16:54 · 5298 阅读 · 0 评论 -
同一进程的线程共享的资源和独有的资源
线程共享的环境包括:进程代码段、进程的公有数据(利用这些共享的数据,线程很容易的实现相互之间的通讯)、进程打开的文件描述符、信号的处理器、进程的当前目录和进程用户ID与进程组ID。 进程拥有这许多共性的同时,还拥有自己的个性。有了这些个性,线程才能实现并发性。这些个性包括: 1.线程ID 每个线程都有自己的线程ID,这个ID在本进程中是唯一的。进程用此来原创 2015-03-28 16:50:51 · 1237 阅读 · 0 评论