会员
周边
新闻
博问
闪存
众包
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
tsecer
上一页
1
···
28
29
30
31
32
33
34
35
36
37
下一页
2019年3月6日
内存管理(2)---块设备的页面缓冲
摘要: 一、块设备这里从文件和页面管理的角度来看块设备。在Linux系统下,根据“一切皆文件”的思想,可以把一个磁盘当做一个文件来读取。为了看一个磁盘,例如第一块硬盘,可以通过hexdump这种通用的工具来显示一个硬盘的原始数据(没有验证是否需要root权限),例如对于一个文件系统来说[root@Harry
阅读全文
posted @ 2019-03-06 21:07 tsecer
阅读(412)
评论(0)
推荐(0)
文件写入前的读取
摘要: 一、写入前可能需要读取在前一篇博客中看ramfs文件的时候想到一个问题:内存缓冲是以page为单位的,而许多磁盘设备是以block(sector)为单位的,当然这都不是重点。重点是现在假设有一个文件,它大概有两个页面,现在我只在文件的开始写入(修改)一点点数据,比方说10个字节,然后再seek到文件
阅读全文
posted @ 2019-03-06 21:05 tsecer
阅读(339)
评论(0)
推荐(0)
网络协议栈(11)NAT转换
摘要: 一、NAT 为了让一个外部IP供多个内部主机使用,经常需要将一个主机配置为NAT服务器,从而对外部来看只有一个IP。或者说对于一些网站,可能开辟了多个服务,这些服务使用不同的服务器端口,此时单个服务器无法有效的完成对用户请求的响应,例如http服务器的80端口,或者说为了进行负荷分担,可以将同一个I
阅读全文
posted @ 2019-03-06 21:04 tsecer
阅读(536)
评论(0)
推荐(0)
线程退出时如何通知等待者
摘要: 一、线程退出在之前的一篇博客(http://tsecer.blog.163.com/blog/static/150181720120175027358/)中说明了一个进程描述符的回收过程,其中可以看到,只有主线程有权利通知父进程整个线程组已经退出,也就宣告整个任务的结束,其它的线程(一般通过pthr
阅读全文
posted @ 2019-03-06 21:04 tsecer
阅读(550)
评论(0)
推荐(0)
网络协议栈(10)netfilter
摘要: 一、机制该工具相当于内核中的车匪路霸,它们在内核网络栈中各处安装关卡,对内核中报文的流动进行监控管理,它是Linux系统下实现防火墙的基础,利用用户态的iptables的实现就是netfilter机制的一个典型应用。该机制直接嵌入内核,在内核生成的时候这些监测点就已经被编译入内核,所以是顽固而可靠的
阅读全文
posted @ 2019-03-06 21:03 tsecer
阅读(685)
评论(0)
推荐(0)
进程描述符回收
摘要: 一、进程消亡一个进程消亡之后,它在内核中的户口task_struct结构需要被回收,这个回收必须是主动的通过系统调用来回收,也就是waitpid或者wait4之类的系统调用。但是很多时候,我们并没有关心这个子进程的退出,比如我写的一些测试程序,如果这些进程没有被wait,那么它们是否真的像僵尸一样在
阅读全文
posted @ 2019-03-06 21:02 tsecer
阅读(285)
评论(0)
推荐(0)
网络协议栈(8)Bridge设备
摘要: 一、应用在很多tap虚拟网卡的使用中,bridge也都是被使用的。至少是在qemu的网络模拟和vpn的bridge实现也依赖于bridge这种虚拟设备,所以在看了tap的使用之后,bridge的使用和原理也不可避免的要弱弱的围观一下。这里的bridge并不是一个物理的网桥,而是一个虚拟的网络设备。它
阅读全文
posted @ 2019-03-06 21:01 tsecer
阅读(593)
评论(0)
推荐(0)
网络协议栈(9)netlink机制
摘要: 一、为什么需要这种通讯机制设想用户态和内核交互数据,主要是通过系统调用read,ioctl,或者是proc文件系统。但是read有一个明显的缺点,它是一个字符流机制,不能定制,也就是无论谁从里面读,读到的内容都是相同的。这种无格式的结构对于网络这种非常繁琐的交互方法来说是不够的。例如,要枚举系统中所
阅读全文
posted @ 2019-03-06 21:01 tsecer
阅读(1469)
评论(0)
推荐(0)
网络协议栈(7)tun/tap设备
摘要: 一、网络设备一般一个系统中如果可以连接外网的话,会有一个物理设备,也就是我们通常意义上所说的网卡。但是除了物理上的网卡,系统中还存在这个其他类型的网络设备,这些设备在网络中有着不同的应用场景。例如最为常见的loopback网卡,还有一些不那么常见的网络设备,例如tun/tap网络设备,bridge网
阅读全文
posted @ 2019-03-06 21:00 tsecer
阅读(1323)
评论(0)
推荐(0)
C库文件缓存对proc读取的影响
摘要: 一、问题有时候,一个用户态的监控任务可能要定期的获得系统的某个状态,例如CPU利用率,进程切换次数、甚至maps的布局等信息,这些信息一般都是通过内核的proc文件系统来获得。由于是周期性的获得这些信息,为了避免临时抱佛脚,可以在模块初始化的时候打开这个文件,然后下次就不同通过open系统调用,进而
阅读全文
posted @ 2019-03-06 20:59 tsecer
阅读(514)
评论(0)
推荐(0)
上一页
1
···
28
29
30
31
32
33
34
35
36
37
下一页
导航
博客园
首页
新随笔
联系
订阅
管理
公告