vfork( ): 上节学习了fork( )时的写时复制机制,实际上在早期并没有实现写时复制,在实现COW之前,Unix的设计者们就一直很关注在...
进程是Unix系统中仅次于文件的基本抽象概念。当目标代码执行的时候,进程不仅仅包括汇编代码,它由数据、资源、状态和一个虚拟的计算机组成。 进程I...
I/O多路复用 应用程序常常需要在多于一个文件描述符上阻塞。在不使用线程,尤其是独立处理每一个文件的情况下,进程无法在多个文件描述符上同时阻塞。...
用lseek( )查找 lseek( )系统调用能够对给定文件描述符引用的文件位置设定指定值。除了更新文件位置,没有其它的行为,并无论如何不初始...
Linux遵循一切皆文件的理念,任何你能读写的东西都可以用文件描述符来访问。 内核为每个进程维护一个打开文件的列表,该表被称为文件表(file ...
内存锁定 linux实现了请求页面调度(在需要时将页面从硬盘交换进来,当不再需要时再交换出去),这使得系统中进程的虚拟地址空间与实际的物理内存大...
本节包含了对合适的内存分配机制的选择,以及常见的存储器操作 选择一个合适的内存分配机制 前面学习了很多内存分配的方式,可能会使我们不知道在一个具...
总结了8.6~8.7的内容 调试内存分配 程序可以设置MALLOC_CHECK_环境变量来开启存储系统额外的调试功能。 这个额外的调试检查是以降...
本节总结了8.3~8.5的内容 数据段的管理 在老版本的Unix系统中,堆和栈还在同一个段中。 堆中动态存储器的分配由数据段的底部向上生长;栈从...
文集作者