自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 图解高端内存[zz]

高端内存是指物理地址大于 896M 的内存。对于这样的内存,无法在“内核直接映射空间”进行映射。为什么?因为“内核直接映射空间”最多只能从 3G 到 4G,只能直接映射 1G 物理内存,对于大于 1G 的物理内存,无能为力。实际上,“内核直接映射空间”也达不到 1G, 还得留点线性空间给“内核动态映射空间” 呢。因此,Linux 规定“内核直接映射空间” 最多映射 896M 物理内存。对于高端内存

2009-09-09 22:52:00 1006

转载 HIGH MEM

 原先一直都对Linux高端内存的管理认识模模糊糊的,可能主要是初次接触Linux kernel 是0.11版吧,当初的内存设计是16M,Linus对拥有32M的内存都是觊觎万分,1G内存恐怕是天方夜谭了。16M内存哪里还顾得上高端内存,脑子就一直没有这种概念。先我们还是来看看为什么要有高端内存?80386的线性寻址空间是4G,内核空间从3G开始,如果全部采用"线性映射"(物理地址和逻

2009-09-09 22:21:00 3314

转载 Linux内核用到的GCC扩展

GNC CC是一个功能非常强大的跨平台C编译器,它对C 语言提供了很多扩展,这些扩展对优化、目标代码布局、更安全的检查等方面提供了很强的支持。本文把支持GNU 扩展的C 语言称为GNU C。    Linux 内核代码使用了大量的 GNU C 扩展,以至于能够编译 Linux 内核的唯一编译器是 GNU CC,以前甚至出现过编译 Linux 内核要使用特殊的 GNU CC 版本的情况。本文是对 L

2009-09-09 22:21:00 1927

转载 内存屏障(memory barrier)

内存屏障(memory barrier)[zz]  首先看看__set_current_state()和set_current_state()函数的区别#define __set_current_state(state_value) /do { current->state = (state_value); } w

2009-08-19 15:50:00 1354

转载 系统V共享内存

  系统V共享内存指的是把所有共享数据放在共享内存区域(IPC shared memory region),任何想要访问该数据的进程都必须在本进程的地址空间新增一块内存区域,用来映射存放共享数据的物理内存页面。系统调用mmap()通过映射一个普通文件实现共享内存。系统V则是通过映射特殊文件系统shm中的文件实现进程间的共享内存通信。也就是说,每个共享内存区域对应特殊文件系统shm中的一个文件(

2009-07-28 14:53:00 671

转载 vim & cscope[zz]

 版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明http://bigwhite.blogbus.com/logs/35619026.html拥有了某种工具,往往不等于就能使用好这种工具。拥有工具简单,用好工具、发挥出最大作用则较难。CSCOPE让VIM的使用者有了与SourceInsight"平起平坐“的机会,但是能否将CSCOPE的功能发挥出来还要看你是如何使用它了。自

2009-07-28 14:23:00 1699

原创 grep验证ip地址是否合法的正则表达式

^([0-9]{1,2}|1[0-9][0-9]|2[0-4][0-9]|25[0-5])/.([0-9]{1,2}|1[0-9][0-9]|2[0-4][0-9]|25[0-5])/.([0-9]{1,2}|1[0-9][0-9]|2[0-4][0-9]|25[0-5])/.([0-9]{1,2}|1[0-9][0-9]|2[0-4]/d|25[0-5])$

2008-06-27 16:27:00 1144

原创 高质量的子程序

1.什么是子程序?子程序是为实现一个特定的目的而编写的一个可被调用的方法或过程。2.创建子程序的理由:a.降低复杂度:这里的降低复杂度并不是指降低程序的时间复杂度,而是指降低代码的复杂度。比如当内部循环或者条件判断的嵌套层次很深时,把嵌套部分提取出来形成一个独立的子程序,可以降低外围子程序的复杂度。b.引入中间,易懂的抽象:把一段代码放入一个命名恰当的子程序内,可以很好的说明代码的意图c.避免代码

2008-06-02 21:10:00 622

原创 逆序数算法

在网上看了很多用mergesort求逆序数的代码,发觉很多都不太对,主要是在merge时求本次merge是前后两部分的逆序数过程,其实merge时由于前后两部分都是已经排好序的, 假设merge的两个数组分别为a[n1],b[n2],合并时的逆序数就应该=b中所有小于a[1]的个数,小于a[2]的个数,小于a[3]的个数...小于a[n1]的个数之和=a中所有大于b[1]的个数,大于b[2]的个数

2008-04-21 09:30:00 8131

空空如也

空空如也

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

TA关注的人

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