自定义博客皮肤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)
  • 收藏
  • 关注

原创 linux下文件

系统调用read()将阻塞调用进程,直到数据被拷贝进用户态地址空间。但系统调用write不同,它在数据被拷贝到页高速缓存(延迟写)后马上结束。O_SYNC标志只影响写操作,它将阻塞调用进程,直到数据被有效地写入磁盘。对磁盘文件来说,read,write方法能够确定正被访问的数据所在物理块的位置,并激活块设备驱动程序开始传送。对于大部分文件系统来说,从文件中读取一个数据页就等于在磁盘上查

2016-04-26 08:54:51 597

原创 linux同步

如果进程正执行内核函数时,即它在内核态运行时,允许发生内核切换(被替换的进程是正在执行内核函数的进程),这个内核就是可抢占的。所有进程切换都是由宏switch_to()来完成的。使内核可抢占的目的是减少用户态进程的分派延迟,即从进程变为可执行状态到它实际开始运行之间的时间间隔。只有当内核正在执行异常处理程序(或系统调用),而且内核抢占没有被显式禁用,才可能抢占内核。内核抢占会引起不

2016-04-19 22:17:45 573

原创 linux下进程通信

管道被看作是打开的文件,但在已安装的文件系统中没有相应的映像。POSIX只定义了半双工的管道,因此即使pipe()系统调用返回了两个描述符,每个进程在使用一个文件描述符之前仍得把另外一个文件描述符关闭。在linux中,popen()和pclose()都包含在C函数库里面。对每个管道来说,内核都要创建一个索引节点和两个文件对象,一个文件对象用于读,一个文件对象用于写。

2016-04-17 15:37:02 497

原创 linux下信号

信号是很短的信息,可以被发送到一个进程或一组进程。发送给进程的唯一信息通常是一个数,依次来标识信号。POSIX标准引入了一类新的信号叫做实时信号,在linux中他们的编码范围是32-64.他们与常规信号有很大的不同,因为他们必须排队以便发送的多个信号能被接收到。如果一个常规信号被连续发送多次,那么,只有其中的一个发送到接收进程。发送给非运行进程的信号必须由内核保存,知道进程恢复执行。

2016-04-03 15:59:41 671

原创 linux系统调用

Unix通过系统向内核发出系统调用实现了用户态进程和硬件设备之间的大部分接口。系统调用通过软中断向内核发出一个明确的请求。lib的标准C库所定义的一些API引用了封装例程(其唯一目的就是发布系统调用)。通常情况下,每个系统调用对应一个封装例程,而封装例程定义了应用程序使用的API。一个API没必要对应一个特定的系统调用,API可能直接提供用户态的服务或者一个单独的API函数可能调用几个

2016-04-03 13:54:50 485

原创 linux下进程

从内核的观点来看,进程的目的就是担当分配系统资源(CPU时间,内存等)的实体。尽管父子进程共享含有程序代码的页,但是他们各自有独立的数据拷贝(堆和栈),因此子进程对一个内存单元的修改对父进程是不可见的。多线程应用程序多个执行流的创建,处理,调度整个都是在用户态进行的(通常使用POSIX兼容的pthread库)。两个轻量级进程基本上可以共享一些资源,诸如地址空间,打开的文件等等,只要其中

2016-04-01 22:09:30 1056

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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