博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2010年6月11日

摘要: 中断分为同步中断和异步中断。在Intel微处理手册中,同步中断称为异常(exception),异步中断称为中断(interrupt)。 同步中断(异常)是当指令执行时由CPU控制单元产生的,它只有在一条指令终止执行后CPU才会发出中断。 异步中断(中断)是由间隔定时器和I/O设备产生的。 中断分为... 阅读全文

posted @ 2010-06-11 09:47 xuczhang 阅读(545) 评论(0) 推荐(0) 编辑

摘要: ARP是通过广播的方式来获取MAC地址的。IP –> MAC arp –a 查看arp高速缓存 proxy arp:当ARP请求是从一个网络的主机发往另一个网络的主机,连接这两个网络的路由器会回答该请求。 tcpdump RARP(MAC —> IP) 用于无盘机,有本地磁盘的系统引导时,是从磁盘上的配置文件中读取IP地址的。 当无盘系统从RARP应答中收到它的IP地址后,它将发送T... 阅读全文

posted @ 2010-06-11 09:47 xuczhang 阅读(118) 评论(0) 推荐(0) 编辑

摘要: 1. typename template class MyClass { typename T::SubType * ptr; … }; 如果不使用typename,SubType会被认为是一个静态成员,T::SubType就会被解释成... 阅读全文

posted @ 2010-06-11 09:46 xuczhang 阅读(1183) 评论(0) 推荐(1) 编辑

2010年6月7日

摘要: We will start from an example to illustrate the c++ exception. Two classes is in the example: Person and Student. class Student is the child class of... 阅读全文

posted @ 2010-06-07 19:39 xuczhang 阅读(1415) 评论(0) 推荐(1) 编辑

2010年5月10日

摘要: 1. 在类模板中使用类型时要加上模板类型,如:Stack。而表示类时就只用类名,如:Stack。 2. 一个绝对异常安全并且返回被删除元素的pop()是不可能的。参考[CargillExceptionSafty] 3. 对于类模板,成员函数只有在被使用的时候才会被实例化。如果类模板中含有静态成员,... 阅读全文

posted @ 2010-05-10 21:10 xuczhang 阅读(1164) 评论(0) 推荐(0) 编辑

2010年4月9日

摘要: block && sector block是块设备驱动程序中一次单独操作中所传送的一大块相邻字节,是硬件设备请求一次I/O操作所涉及的一组相邻字节。块的大小是2的幂,是扇区的倍数,但不能超过一个页框。 sector是硬件设备传送数据的基本单位,也就是不能传送少于一个扇区的数据。 扇区的大小在内核的... 阅读全文

posted @ 2010-04-09 18:16 xuczhang 阅读(523) 评论(0) 推荐(0) 编辑

2010年4月2日

摘要: 进程的静态特征 1. task_struct 2. task state进程状态 3. PID 与tgid tgid是线程组的id,pid是当前进程id,而需要注意的是getpid()得到的是tgid。线程组就是轻量级进程的集合。tgid就是组中第一个轻量级进程的pid 4. current宏... 阅读全文

posted @ 2010-04-02 18:05 xuczhang 阅读(651) 评论(0) 推荐(0) 编辑

摘要: 本文将介绍Linux的slab层,首先我们要解决一个问题就是什么是slab,slab是做什么用的。 在linux内核中会有许多小对象,这些对象构造销毁十分频繁,比如i-node,dentry。这么这些对象如果每次构建的时候就向内存要一个页,而其实际大小可能只有几个字节,这样就非常浪费,为了解决这个问... 阅读全文

posted @ 2010-04-02 18:02 xuczhang 阅读(2563) 评论(0) 推荐(0) 编辑

摘要: memory 1. what happens in malloc() 2. what’s kalloc, vmalloc and their difference. brk()?? 3. kernel stack?? 4. copy on write 3. Linux segmentation... 阅读全文

posted @ 2010-04-02 18:01 xuczhang 阅读(212) 评论(0) 推荐(0) 编辑

摘要: memory descriptor(内存描述符) 与进程地址空间相关的全部信息都包含在内存描述符中。其类型是mm_struct,记录在task_struct的mm成员中。 1. 有一个mmlist的链表链接所有的mm_struct。表头是init_mm(进程0的mm)。 2. mm_users和m... 阅读全文

posted @ 2010-04-02 17:58 xuczhang 阅读(724) 评论(0) 推荐(0) 编辑