自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 收藏
  • 关注

原创 进程间通信——共享内存

共享内存 共享内存区是最快的IPC形式,一旦这样的内存映射到共享它的进程地址空间,这些进程间数据传递不再涉及内核,也就是说进程不再通过执行进入内核的系统调用来传递彼此的数据。 共享内存的优点: 共享内存是进程间通信最快的,可以减少拷贝次数。共享内存不提供任何互斥和同步机制,必须由用户自己完成。 注意: 共享内存的创建是以页为单位的 systemV IPC(共享内存)资源的生命周期随内核 共享内存函...

2019-01-26 22:17:05 148

原创 进程间通信——管道

进程间通信的本质:就是让两个进程看到同一份公共资源。 ps:这份公共资源间接或直接由操作系统提供,由于提供的资源不同,通信方式也不同。 进程间通信的目的: 数据传输:一个进程需要将它的数据发给另一个进程 资源共享:多个进程之间共享同样的资源。 通知事件:一个进程需要向另一个或一组进程发送消息,通知它发生了某种事情(比如子进程向父进程发送子进程的终止信息) 进程控制:有些进程希望完全控制另一个进程...

2019-01-23 16:59:50 186

原创 文件系统与inode

文件系统 FILE 因为IO相关的函数都与系统调用接口对应,并且库函数封装系统调用,所以访问文件实质上都是通过fd访问的。 所以C库函数中的FILE结构体内部必定封装的fd。 缓冲方式分三种: 无缓冲 全缓冲 行缓冲 #include <stdio.h> #include <string.h> int main() { const char *msg0="h...

2019-01-20 20:57:58 713

原创 关于Linux权限管理

Linux下有两种用户: 超级用户(root):可以在Linux下做任何事,不受限制 普通用户:在Linux下做有限的事。 超级用户的命令提示符是“#”,普通用户的命令提示符是“$”。 命令:su【用户名】 功能:切换用户 例如:要从root用户切换到普通用户user,则使用su user。要从普通用户user切换到root用户则使用su root(root可以省略),此时系统会提示输入r...

2019-01-19 15:03:13 226

原创 关于shell

Linux是一个操作系统,我们称之为“核心/内核(kernel)”,但我们一般的用户,不能直接的使用kernel,而是通过kernel的外壳程序,也就是“shell”来与kernel沟通。 Shell最简单的定义:命令行解释器 主要包含: 将使用者的命令翻译给kernel处理 将核心的处理结果翻译给使用者 对比Windows GUI,操作Windows时我们不直接操作Windows的内核,而...

2019-01-18 17:20:51 117

原创 基础IO 文件描述符

stdin & stdout & stderr C 会默认打开三个标准输入输出流,分别是stdin,stdout,stderr;对应的文件描述符是0,1,2;且分别对应的设备是键盘,显示器,显示器。 这三个流的数据类型是FILE*,fopen是返回值类型,文件指针。 open函数 #include <sys/types.h> #include <sys/...

2019-01-11 19:15:13 437

原创 进程程序替换

替换原理 用fork创建子进程后执行的是和父进程相同的程序,但有可能在执行不同的代码分支,(但是在实际情况中,我们通常希望子进程和父进程执行不同的程序,来提高效率,所以才有程序替换),子进程往往要调用一种exec函数用来执行另一个程序,将代码和数据替换为可执行文件的代码和数据,环境变量并不改变。当进程的用户空间代码和数据完全被新程序替换,从新程序开始执行。调用exec并不创建新进程,所以调用exe...

2019-01-11 19:04:46 142

空空如也

空空如也

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

TA关注的人

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