【版权声明:尊重原创,转载请保留出处:blog.csdn.net/shallnet。文章仅供学习交流,请勿用于商业用途】 一个进程的内存映象由以下几部分组成:代码段、数据段、BSS段和堆栈段。以及内存映射的区域等部分,内存映射函数mmap(), 负责把文件内容映射到进程的虚拟内存空间, 通过对这段内 ...
分类:
系统相关 时间:
2017-06-10 14:09:08
阅读次数:
325
一、线程模型: 线程是程序中完成一个独立任务的完整执行序列,即一个可调度的实体。根据运行环境和调度者的身份,线程可分为内核线程和用户线程。 内核线程:运行在内核空间,由内核来调度; 用户线程:运行在用户空间,由线程库来调用。 当进程的一个内核线程获得CPU的使用权时,它就加载并运行一个用户线程。可见 ...
分类:
编程语言 时间:
2017-06-09 11:15:29
阅读次数:
220
如对Linux用户态驱动程序开发有兴趣,请阅读本文,否则请飘过。 User-Space Device Drivers in Linux: A First Look | 初识Linux用户态设备驱动程序 Linux设备驱动通常运行在内核空间,但是也可以运行在用户空间。本文将介绍运行在用户空间中的设备驱 ...
分类:
系统相关 时间:
2017-06-03 22:33:06
阅读次数:
469
###############################iptables###############################iptables基础
规则(rules)其实就是网络管理员预定义的条件,规则一般的定义为“如果数据包头符合这样的条件,就这样处理这个数据包”。规则存储在内核空间的信息
包过滤表中,这些规则分别指定了源..
分类:
其他好文 时间:
2017-06-01 00:33:36
阅读次数:
187
用户需要记住:Linux和Windows在设计上就存在哲学性的区别。Windows操作系统 倾向于将更多的功能集成到操作系统内部,并将程序与内核相结合;而Linux不同 于Windows,它的内核空间与用户空间有明显的界限。根据设计架构的不同,两者 都可以使操作系统更加安全。更多可以参考博客 htt ...
一、前言 CentOS7之前系统提供给用户的是bonding driver来实现链路聚合,实际上bonding适用于大多数应用。Bonding driver的架构是由内核空间完全控制、管理。 Team driver又是什么呢?它是被设计用一整套不同的设计和不同的方法来实现bonding能做到的事,它 ...
分类:
其他好文 时间:
2017-05-26 23:34:40
阅读次数:
433
用户空间调用recvfrom命令 直到数据包到达且被复制到应用进程的缓冲区或发生错误时才返回,这个过程中 进程亦或线程一直处于等待阻塞状态。 2.非阻塞IO模型 用户空间调用内核指令recvfrom后 如果内核空间缓冲区没有数据话EWOULDBLOCK 进程反复(轮询)调用recvfrom命令调用 ...
分类:
系统相关 时间:
2017-05-25 01:24:39
阅读次数:
195
1. 当用户向负载均衡调度器(Director Server)发起请求,调度器将请求发往至内核空间2. PREROUTING链首先会接收到用户请求,判断目标IP确定是本机IP,将数据包发往INPUT链3. IPVS是工作在INPUT链上的,当用户请求到达INPUT时,IPVS会将用户请求和自己已定义 ...
分类:
其他好文 时间:
2017-05-12 13:14:36
阅读次数:
163
fork()函数功能——创建新进程 1、父子进程有独立的数据段、堆、栈,共享代码段 Linux中每个进程都有4G的虚拟地址空间(独立的3G用户空间和共享的1G内核空间),fork()创建的子进程也不例外。子进程资源的由来: 1、1G内核空间既然是所有进程共享,因此fork()创建的子进程自然也将拥有 ...
分类:
系统相关 时间:
2017-05-12 01:33:12
阅读次数:
334
从開始了解内核開始就一直在疑惑 unsigned long copy_to_user(void __user *to, const void *from, unsigned long n); 这里面的from指针是什么?从用户空间的read到内核空间fops中的read函数过来后,这个值是否经过了转 ...
分类:
其他好文 时间:
2017-05-10 21:19:13
阅读次数:
135