显示make编译信息

2012年4月18日 没有评论 9,580 次浏览

有时候我们想看每一个文件的编译选项,但是make时显示的却是这样的超简洁情况: # make CC arch_init.o CC cpus.o GEN hmp-commands.h GEN qmp-commands-old.h CC monitor.o CC machine.o CC ... [阅读更多]

分类: *nix技术, Shell命令 标签:

kvm初体验

2012年4月13日 没有评论 11,431 次浏览

硬件环境如下:一台host主机,上面安装的是CentOS 5.4,ip地址为200.200.77.163,内核已被我升级为支持kvm的2.6.30: # cat /etc/issue CentOS release 5.4 (Final) Kernel \r on an \m # uname -a Linux... [阅读更多]

Triple Fault的捕获与处理

2012年4月11日 没有评论 6,875 次浏览

前面有文章说Triple Fault无法捕获,经过几天资料搜寻,对于这个问题还是有办法的。如果可以,对于捕获Triple Fault,最简便的方法就是使用虚拟机来进行操作,这样在发生Triple... [阅读更多]

《兽王星》

2012年4月9日 没有评论 16,398 次浏览

对于动漫,我总是有一种矛盾的心理,动漫太长让我受不了,觉得没完没了的,比如《死神》、《火影》、《海贼王》、《柯南》,太短却又觉得意犹未尽,埋怨故事情节虎头蛇尾,《兽王星》就太短,总共才11集,昨天周日里一天不到的时间就看完了,再长一点点就好了,比如《CLANNAD》,两季,每季24/25集、《Kanon》也有20多集,11集的《兽王星》实在是太短了一点,不过觉得《兽王星》的设定非常的好,但这只是就我个人而言的。正是“春有百花秋有月,夏有凉风冬有雪”,有山有水有物有景,实应珍惜。如果有一天,这些都没了,会怎么样呢?《兽王星》的设定即在如此:若干年后,地球已毁灭,人类居住在另外的人工殖民星球,在那里,如果不借助保命手术,人的寿命不会超过30岁,即便进行手术也不到50/60岁。由于各种因缘,主角被流放到一个名为兽王星的星球,那里环境更加恶劣,故事围绕主角的生存战斗而展开……,故事结尾出人意料。 ... [阅读更多]

如何解决技术难题

2012年4月8日 1 条评论 10,939 次浏览

在解决一个技术难题时,难免要去借助他人智慧,如果身边就有大牛,那么很好,当面询问,当面搞定;但如果身边没有可寻求帮助的大牛,那么又该怎么办呢?好吧,我总结了如下几点: 首先,作为一个中国人,我们一般会进行baidu搜索,当然,也许你会使用其它中文搜索引擎,但不管怎样,这是最矬的方法,特别是对于计算机方面的技术难题,这些搜索引擎基本上是找不到什么好资料,如果找到了,那么说明你要询问的难题还不够难。不过也正因为如此,在找一些基本问题时,我们倒可以用这些中文搜索引擎,因为来得更快,比如不记得怎么配置vmware的网卡为e1000类型了,那么直接百度“vmware... [阅读更多]

Double Fault & Triple Fault

2012年4月7日 没有评论 13,597 次浏览

之前我曾提到过intel x86... [阅读更多]

UML/User-mode Linux

2012年4月6日 没有评论 7,298 次浏览

之前提到过KML,这里描述一下UML,但关于UML的编译和使用不想做过多的介绍,因为官网等都有很多这方面的资料,不过我乐意提供另外一些汇总信息,也是我在编译使用UML过程中遇到的问题,当然限于环境关系,这些问题在另外的环境里不一定就出现,另外的环境里出现的问题我这里可能没有遇到。 一,不错的相关站点:http://user-mode-linux.sourceforge.net/、http://uml.devloop.org.uk/index.html 二,文件系统:http://fs.devloop.org.uk/ 三,邮件列表:http://dir.gmane.org/gmane.linux.uml.devel、http://dir.gmane.org/gmane.linux.uml.user 四,UML项目并没有废弃,一直在更新维护,这从邮件列表的活动情况可以看出来,Linux... [阅读更多]

塘朗山

2012年4月4日 没有评论 15,294 次浏览

假期三天,第一天在公司,第二天在南山图书馆,第三天终于决定出去晒下太阳了,8点半出发,逛了塘朗山两个山头后再下到山脚时已经1点钟了,吃了些东西后回来,结果在公交车上睡着了,不过运气还算不错,没坐过站,O(∩_∩)O~,Mark。 ... [阅读更多]

应用程序与物理内存之间的关系

2012年4月3日 没有评论 10,079 次浏览

应用程序与物理内存本没有直接关系,因为应用程序看到的都是虚拟内存,至于这块虚拟内存到底映射哪块物理内存,应用程序并不关心,也没有能力关心。不过既然文章标题叫做“应用程序与物理内存之间的关系”就说明应用程序与物理内存之间虽然没有直接关系,但有间接关系;我们知道应用程序能够在运行时主动申请、释放的内存主要有Heap(malloc/free/…)、Mapping(mmap/munmap/…),这里就以Heap为例(因为前面曾详细分析过应用程序里的堆内存管理),看它们之间有如何微妙的间接关系。 当应用程序malloc一块内存时,如果应用程序自己管理的堆内存还有缓冲(这个不难理解,对于应用程序的内存申请,内核都比较大方,即使应用程序只申请4字节的内存,内核也会给它4KB,假设内存页大小为4KB),那么就直接使用了,无需再向内核讨要;否则的话,只有调用sbrk()或mmap()向内核讨要新的内存了,dlmalloc解析连载完整word文档里已经描述过,应用程序优先调用sbrk()以扩展当前Heap的连续空间,如果无法扩展(比如此时,前面待延伸的内存地址空间恰好被某个文件映射占用了),那就只有mmap()申请另外的一段地址空间。 以sbrk()为例,syscall到内核里对应的是do_brk()函数,带有两个参数,第一个为内存地址addr,第二个为增减的长度len,可正(比如:malloc)可负(比如:free),这个函数所做的工作只有一个,那就是根据进程请求情况进行判断并调整进程的vma(或增大或减小或拆分或合并等)并返回给进程对应的地址空间,当然这是成功的情况,如果vma判断调整失败,那就直接返回ENOMEM或其它错误码。 既然应用程序进行内存申请时没和物理内存扯上关系,那么当应用程序实际进行内存访问时,总该和物理内存扯上关系了吧?的确也是如此。当应用程序访问(读写)一个并没有对应物理地址的逻辑地址时,CPU就会产生一个中断号为14的中断,该中断将被内核捕获。查看源码的话,在这里: /*... [阅读更多]

Linux X86-64 进程内存空间布局(续)

2012年4月3日 没有评论 8,105 次浏览

在很久很久以前,我曾详细的分析过应用程序里的内存管理,也就是应用程序里的内存分配与释放过程,具体可以参考:dlmalloc解析连载完整word文档,这是站在应用程序角度来看的内存管理视图,更具体点说只是应用程序对自己所用到的堆空间内存的管理视图。 在不久之前,我又提到过Linux... [阅读更多]