2015年10月2日

Modern Operating System --- Chap 5.5 Clocks

摘要: Clock also called timers are essential to the operation of any multiprogrammed system fora variety of reasons. They maintain the time of day and preve... 阅读全文

posted @ 2015-10-02 22:54 Persistence 阅读(95) 评论(0) 推荐(0)

Operating System: Three Easy Pieces --- Paging: TLB (Note)

摘要: Using paging as the core mechanism to support virtual memeory can lead to high performanceoverheads. By chopping the address space into small, fixed-s... 阅读全文

posted @ 2015-10-02 00:41 Persistence 阅读(170) 评论(0) 推荐(0)

2015年10月1日

Operating System: Three Easy Pieces --- Process (Note)

摘要: 1. How can the operating system provide the illusion of a nearly-endless supply of said CPUs?The OS creates this illusion by virtualizing the CPU. The... 阅读全文

posted @ 2015-10-01 11:27 Persistence 阅读(377) 评论(0) 推荐(0)

2014年10月13日

Some Interesting Websites and Blogs

摘要: 1.How To Measure The Performancehttps://ramcloud.atlassian.net/wiki/display/RAM/How+To+Measure+Performance2. Technology Bloghttp://duartes.org/gustavo... 阅读全文

posted @ 2014-10-13 03:09 Persistence 阅读(183) 评论(0) 推荐(0)

2014年10月10日

Implement a System Call in Kernel 3.10.56 (X86_64)

摘要: Implementing a system call in Kernel 2.6.32 is somehow different fromthe method in Kernel 3.10.56.In kernel 2.6.32, we should register the system call... 阅读全文

posted @ 2014-10-10 05:21 Persistence 阅读(253) 评论(0) 推荐(0)

Install a new Linux Kernel (3.10.56) in Guest OS (Dom U)

摘要: These days I want to install a new Linux kernel in Guest Operating System.The original version of Guest OS is 2.6.32, but I need a kernel version 3.10... 阅读全文

posted @ 2014-10-10 05:05 Persistence 阅读(263) 评论(0) 推荐(0)

Implement a New Process Scheduler in Linux Kernel

摘要: 1. The Kernel Data Structure we should understand: 阅读全文

posted @ 2014-10-10 04:34 Persistence 阅读(116) 评论(0) 推荐(0)

2014年10月4日

Static IP Configuration for CentOS 6.5

摘要: 1.First, we should modify the /etc/sysconfig/network-scripts/ifcfg-eth0 as the following:DEVICE=eth0HWADDR=00:16:3E:53:01:01ONBOOT=yesNM_CONTROLLD=yes... 阅读全文

posted @ 2014-10-04 04:49 Persistence 阅读(253) 评论(0) 推荐(0)

2014年10月2日

xen 4.3.0 创建Guest OS遇到的一些问题

摘要: 1.physical machine: Centos 6.5 Xen Version: xen 4.3.0 Guest OS Version: Centos 6.52. After finishing the configuration file for Guest OS, we should us... 阅读全文

posted @ 2014-10-02 23:18 Persistence 阅读(290) 评论(0) 推荐(0)

2014年2月26日

Linux下使用tmux

摘要: 1.tmux介绍tmux是terminal multiplexer的缩写,这里multiplexer怎么翻译才好呢?下面是英文介绍:tmux is a terminal multiplexer:it enables a number of terminals to be created, accessed, andcontrolled by from a single session。tmux may be detached from a screen and continue runningin the background, then later reattached.when tmux 阅读全文

posted @ 2014-02-26 02:59 Persistence 阅读(257) 评论(0) 推荐(0)

2014年1月31日

Linux下查看CPU Cache信息

摘要: 1.查看Linux环境下Cache的级数,用如下命令:ls /sys/devices/system/cpu/cpu0/cache如下图所示:index0是一级Data Cache,大小是32k,如下图所示:index1是一级Instruction Cache,大小是32k,如下图所示:index2是共享cache,大小是2048k,如下图所示: 阅读全文

posted @ 2014-01-31 04:54 Persistence 阅读(1503) 评论(0) 推荐(0)

2014年1月28日

Flex简介

摘要: 1.IntroductionFlex是Fast Lexical Analyzer的简称,是词法分析器生成器。以下是摘自sourceforge的英文介绍:Flex is a tool for generating scanners. A scanner is a program which recognizes lexical patterns in text.The flex program reads the given input files, or its standard input if no input file names are given, for adescription 阅读全文

posted @ 2014-01-28 05:04 Persistence 阅读(409) 评论(0) 推荐(0)

2014年1月15日

chap-7 7.5 动态链接相关结构

摘要: 7.5 动态链接相关结构7.5.1 “.interp”段动态链接器的位置既不是由系统配置指定,也不是由环境参数决定,而是由ELF可执行文件决定。在动态链接的ELF可执行文件中,有一个专门的段叫做".interp"段(interp是interpreter的缩写),我们可以用objdump -s program1来查看该段的内容,如下图所示:***图7.5.1***该段的内容很简单,里面保存的就是一个字符串,这个字符串就是可执行文件所需要的动态链接器的路径。在Linux下,可执行文件所需要的动态链接器路径几乎都是/lib/ld-linux.so.2。但是这个文件是一个软链接,在 阅读全文

posted @ 2014-01-15 23:22 Persistence 阅读(234) 评论(0) 推荐(0)

chap-7 7.4 延迟绑定

摘要: 7.3.4 共享模块的全局变量问题当一个模块引用了一个定义在共享对象的全部变量的时候,比如一个共享对象定义了一个全部变量global,而模块module.c中是这么引用的:extern int global;int foo() { global = 1;}当编译器编译module.c时,它无法根据这个上下文判断global是定义在同一个模块的其他目标文件中,还是定义在另外一个共享对象中,即无法判断是否为跨模块间的调用。7.3.5 数据段地址无关性例如有如下代码段:static int a;static int* p = &a;如果共享对象里面有这样一段代码的话,那么指针p的地址就是一个 阅读全文

posted @ 2014-01-15 23:21 Persistence 阅读(362) 评论(0) 推荐(0)

2014年1月14日

chap-7 7.3 地址无关代码

摘要: 7.3 地址无关代码7.3.3 地址无关代码装载时重定位是解决动态模块中有绝对地址引用的办法之一,但是它有一个很大的缺点就是指令部分无法在多个进程之间共享,这就失去了动态链接节省内存的一大优势,我们的目标就是程序模块中共享的指令部分在装载时不需要因为装载地址的改变而改变,因此基本想法就是把指令中需要被修改的地方分离出来,跟数据部分放在一起,这样指令部分就可以保持不变,而数据部分在每个进程中拥有一个副本,这种方案被称为地址无关代码(PIC, Position-Independent Code)。我们先来分析模块中各种类型的地址引用方式。这里我们把共享对象模块中的地址引用按照是否为跨模块分为两类: 阅读全文

posted @ 2014-01-14 00:40 Persistence 阅读(376) 评论(0) 推荐(0)

导航