上一页 1 ··· 40 41 42 43 44 45 46 47 48 ··· 100 下一页

2013年5月12日

linux内存屏障浅析

摘要: 内存屏障是一个很神奇的东西,之前翻译了linux内核文档memory-barriers.txt,对内存屏障有了一定有理解。现在用自己的方式来整理一下。 在我看来,内存屏障主要解决了两个问题:单处理器下的乱序问题和多处理器下的内存同步问题。 为什么会乱序 现在的CPU一般采用流水线来执行指令。... 阅读全文

posted @ 2013-05-12 01:24 胡永光 阅读(264) 评论(0) 推荐(0) 编辑

记一个linux内核内存提权问题

摘要: 前些天,linux内核曝出了一个内存提权漏洞。通过骇客的精心构造,suid程序将print的输出信息写到了自己的/proc/$pid/mem文件里面,从而修改了自己的可执行代码,为普通用户开启了一个带root权限的shell。这个过程还是挺有意思的,不得不佩服骇客们的聪明才智,故在此分享一下,... 阅读全文

posted @ 2013-05-12 01:23 胡永光 阅读(195) 评论(0) 推荐(0) 编辑

linux会话浅析

摘要: 说起会话,我们经常登录到linux系统,执行各种各样的程序,这都牵涉到会话。但是,一般情况下我们又很少会去关注到会话的存在,很少会去了解它的来龙去脉。本文就对linux会话相关的信息做一些整理,看看隐藏在我们日常使用的背后,都有些什么样的逻辑。 【会话的维系】 维系一个会话,最常见的有两种方... 阅读全文

posted @ 2013-05-12 01:22 胡永光 阅读(335) 评论(0) 推荐(0) 编辑

linux内核mem_cgroup浅析

摘要: memory cgroup mem_cgroup是cgroup体系中提供的用于memory隔离的功能。 admin可以创建若干个mem_cgroup,形成一个树型结构。可以将进程加入到这些mem_cgroup中。(类似这样的管理功能都是由cgroup框架自带的。) 为了实现memory隔离,... 阅读全文

posted @ 2013-05-12 01:20 胡永光 阅读(303) 评论(0) 推荐(0) 编辑

linux内核cfs浅析

摘要: linux调度器的一般原理请参阅《linux进程调度浅析》。 之前的调度器 cfs之前的linux调度器一般使用用户设定的静态优先级,加上对于进程交互性的判断来生成动态优先级,再根据动态优先级决定进程被调度的顺序,以及调度后可以运行的时间片。 反过来,随着进程的... 阅读全文

posted @ 2013-05-12 01:19 胡永光 阅读(177) 评论(0) 推荐(0) 编辑

浅谈动态库符号的私有化与全局化

摘要: 之前一篇《记一个链接库导出函数被覆盖的问题》中,描述了这样一个问题:动态库若想使用自己的符号,不受可执行程序(或其他动态库的影响),可以使用-Wl,-Bsymbolic链接参数或version_script来让动态库的符号自我解决,而不必通过全局符号表来动态解决。 之前的文章也提到,使用-Wl,... 阅读全文

posted @ 2013-05-12 01:13 胡永光 阅读(280) 评论(0) 推荐(0) 编辑

linux内核tmpfs/shmem浅析

摘要: 说起共享内存,一般来说会让人想起下面一些方法: 1、多线程。线程之间的内存都是共享的。更确切的说,属于同一进程的线程使用的是同一个地址空间,而不是在不同地址空间之间进行内存共享; 2、父子进程间的内存共享。父进程以MAP_SHARED|MAP_ANONYMOUS选项mmap一块匿名内存,for... 阅读全文

posted @ 2013-05-12 01:12 胡永光 阅读(380) 评论(0) 推荐(1) 编辑

linux IPv4报文处理浅析

摘要: 在《linux网络报文接收发送浅析》一文中介绍了数据链路层关于网络报文的处理。 对于接收到的报文,如果不被丢弃、不被网桥转发,会调用netif_receive_skb()提交给IP层; 而对于IP层向外发送的报文,则通过调用dev_queue_xmit()提交给数据链路层。 本文就以neti... 阅读全文

posted @ 2013-05-12 01:10 胡永光 阅读(896) 评论(0) 推荐(0) 编辑

linux memory lock浅析

摘要: linux内核提供了用于锁定内存的系统调用,如: mlock:lock一段地址范围内已map的内存 mlockall:lock进程虚拟地址空间内已map的内存,还可以选择对于此后新map的空间是否自动lock mmap+MAP_LOCKED选项:在mmap的同时,对相应地址范围进行mlo... 阅读全文

posted @ 2013-05-12 01:06 胡永光 阅读(688) 评论(0) 推荐(0) 编辑

由mmap引发的SIGBUS

摘要: 一直以来都觉得使用mmap读文件是非常高效、非常优雅的做法(参见《从"read"看系统调用的耗时》)。mmap之后,就可以通过内存访问的方式访问到文件里的内容,省去了read这样的系统调用。 却不曾想过,mmap以后,如果读文件出错会发生什么…… 今晚看到一篇介绍apache bug的文章,里... 阅读全文

posted @ 2013-05-12 00:32 胡永光 阅读(269) 评论(0) 推荐(0) 编辑

上一页 1 ··· 40 41 42 43 44 45 46 47 48 ··· 100 下一页

导航