ULK一周总结(2008-7-3)

上一篇 / 下一篇  2008-07-03 22:08:40

这一周工作挺忙,ULK学的少了点。
1. 32位系统中用户进程不能寻址1G以上,PAE(物理地址扩展)下用户进程不能寻址4G以上。

2. machine_specific_memory_setup: 建立物理映射;setup_memory: 分析物理内存区域表,并初始化一些表示物理内存布局的变量。

3. 用户线性空间地址和内核线性地址以PAGE_OFFSET(0xc0000000,3G)分界

4. 三级模式下:页全局目录项中1项=4k * 2的10次方 = 4M,全局页表1024项,可寻址4G,前768项表示768*4M=3G,因此第768项开始表示3G以上的内核地址。

5. 建立内核页表:(1)创建128K地址空间;(2)初始化临时内核表;(3)建立最终内核表

6. 因为内核初始化在8M以内,临时内核表需要将物理内存前8M映射到用户空间和内核空间,8M需要2个页全局目录项,所以临时页全局目录中第0、1(用户空间前8M)、768、769项(内核空间前8M)需要有内容。

7. 用Linux线程组实现POSIX多线程应用程序。

8. 内核通过进程描述符指针来引用进程,进程标识符是访问进程的另一种方式。

9. tgid:线程组ID,getpid系统调用返回的是tgid而不是pid。

10. 内核分配thread_union时,让这8K空间的第一个页框起始地址是2的13次方的倍数,这样可以直接高效取得进程描述符。

11. 因为有140个优先级,所以每个CPU都有140个不同的队列。


TAG: Linux kernel

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

我的栏目

日历

« 2008-10-12  
   1234
567891011
12131415161718
19202122232425
262728293031 

数据统计

  • 访问量: 327
  • 日志数: 10
  • 建立时间: 2008-06-14
  • 更新时间: 2008-07-21

RSS订阅

Open Toolbar