易截截图软件、单文件、免安装、纯绿色、仅160KB

Linux 内核启动分析(转)

Linux 内核启动分析
1.       内核启动地址
1.1.   名词解释
ZTEXTADDR
解压代码运行的开始地址。没有物理地址和虚拟地址之分,因为此时MMU处于关闭状态。这个地址不一定时RAM的地址,可以是支持读写寻址的flash等存储中介。
Start address of decompressor. here's no point in talking about virtual or physical addresses here, since the MMU will be off at the time when you call the decompressor code. You normally call   the kernel at this address to start it booting. This doesn't have to be located in RAM, it can be in flash or other read-only or      read-write addressable medium.
      
ZRELADDR
       内核启动在RAM中的地址。压缩的内核映像被解压到这个地址,然后执行。
This is the address where the decompressed kernel will be written, and eventually executed. The following constraint must be valid:
              __virt_to_phys(TEXTADDR) == ZRELADDR
       The initial part of the kernel is carefully coded to be position independent.
TEXTADDR
       内核启动的虚拟地址,与ZRELADDR相对应。一般内核启动的虚拟地址为RAM的第一个bank地址加上0x8000。
       TEXTADDR = PAGE_OFFSET + TEXTOFFST
       Virtual start address of kernel, normally PAGE_OFFSET + 0x8000.This is where the kernel image ends up.  With the latest kernels, it must be located at 32768 bytes into a 128MB region.  Previous kernels placed a restriction of 256MB here.
TEXTOFFSET
       内核偏移地址。在arch/arm/makefile中设定。
PHYS_OFFSET
       RAM第一个bank的物理起始地址。
Physical start address of the first bank of RAM.
PAGE_OFFSET
RAM第一个bank的虚拟起始地址。
       Virtual start address of t


相关文档:

linux常用c函数 文件权限控制篇

access(判断是否具有存取文件的权限)
  相关函数  stat,open,chmod,chown,setuid,setgid
  表头文件  #include<unistd.h>
  定义函数  int access(const char * pathname,int mode);
  函数说明  access()会检查是否可以读/写某一已存在的文件。参数mode有几种情况组合,R_OK ......

LINUX系统操作

单用户模式进入:
进入启动画面之后,敲入“e”,光标移动到kernel ...那一行,再敲入“e”,在kernel 一行的最后加上空格single,回车
敲入“b”,启动系统,即进入单用户模式
查看命令启动路径:
vi .bashrc
查看环境变量:
env 
改变目录权限:
chmod -R +777 目录
查看自 ......

关于linux内核中的"__attribute__ ((packed))"

关于linux内核中的"__attribute__ ((packed))"  
来源:
http://jimmy-lee.blog.hexun.com/8001013_d.html
__attrubte__ ((packed)) 的作用就是告诉编译器取消结构在编译过程中的优化对齐,按照实际占用字节数进行对齐。
#define __u8    unsigned char
#define __u16   unsigned short ......

Linux Fedora 安装Sun JDK

1.检查系统是否有open-jdk
[root@localhost Alex] rpm -qa | grep java
tzdata-java-2010c-1.fc12.noarch
java_cup-0.11a-1.fc12.noarch
java-1.5.0-gcj-1.5.0.0-29.fc12.i686
java-1.6.0-openjdk-1.6.0.0-33.b16.fc12.i686
java-1.6.0-openjdk-plugin-1.6.0.0-33.b16.fc12.i686
2.删除open-jdk
[root@localhost Al ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号