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

linux 内存管理之基础篇

一.Linux内存管理的一些基本概念
内存空间:
            绝大多数的嵌入式系统的系统内存和I/O地址空间是统一编址的,内存和I/O地址空间共享0x00000000~0xFFFFFFFF共4GB地址空间范围,这4GB的地址空间范围包括以下几种存储空间:设备空间、内部高速SRAM空间、内部mini cache空间、低端中断向量空间、高端中断向量空间、RAM内存空间(系统的内存空间)、ROM空间。
内存页(PAGE):
            Linux一般以页为单位管理物理内存的,一般页的大小问4kb,对于页可以做到多小还是和处理器有关的。
内存区段(bank):
            一个BANK表示一块连续的内存空间,对应于处理器的ram片选管脚链接的ram的内存空间。对于RAM在系统的起始地址和大小可以通过处理器寄存器设置的,如果处理器所链接所有RAM芯片都设置为首尾地址相连的话,Linux就可以用一个BANK来表示这片内存空间。
内存节点(node):
            其实就是一个或者多个BANK组成的集合,对于上述的1个BANK的话,就是只有一个内存节点了。如果RAM的起始地址是固定的,不可设置的话,就有可能是内存空间不连续,这样就需要几个BANK了。如果对Linux配置了CONFIG_DISCONTIGMEM的话,即可以每个BANK可以对应不同的内存节点,或是多个BANK对应一个内存节点,不配置的话,全部都对应内存节点0。当多个BANK对应一个内存节点时,在上述的情况可能会有内存孔洞,这样在启动的时候就要产生页帧位码和struct page数据结构。这样会影响到系统在启动的时候获得最大连续物理内存,但是启动后就不会有任何影响,因为mem_init()会把这些页帧位码和struct page所占的空间释放掉。
内存页区(zone):
             每个内存节点可分为3个内存页区,即DAM页区、Normal页区和HighMem页区。每个页区的含义如下:
             DAM页区:可以进行DAM操作的RAM内存区域。
             Normal页区:不可以进行DAM操作的RAM内存区域。
   &


相关文档:

linux设置 让oracle10g自启动


在/etc/rc.d/init.d/ 创建oracle10g文件
touch oracle10g
chmod a+x oracle10g
[root@test~]# vi /etc/rc.d/init.d/oracle10g
#!/bin/bash
#chkconfig:345 51 49
#description:starts the oracle database deamons
#
ORACLE_HOME=/oracle/product/10.2.0/db_1
ORACLE_OWNER=oracle
case "$1" in
start)
echo ......

Linux文件和目录访问权限设置 Z

当执行
ls -l

ls -al
命令后显示的结果中,最前面的第
2

10
个字符是用来表示权限。第一个字符一般用来区分文件和目录:
   
d
:表示是一个目录,事实上在
ext2fs
中,目录是一个特殊的文件。
   
-:表示这是一个普通的文件。
   
l:
表示 ......

Linux上构筑iPhone OS3.1.2开发环境之build

昨天郁闷了一天,因为不管我如何编译,总是有错误产生。
没想到今天我清理掉所有文件,重新操作了一编,居然神奇般编译成功了。挖哈哈。。。太高兴了,终于离编译可运行在IPHONE
机器上的HELLO world 不远了,太激动了。。
总结一下:我昨天安装了管方列出的所有包,还有就是不放弃,多试几次。
Here we provide a list ......

Linux上构筑iPhone OS3.1.2开发环境之编译HELLO WORLD

终于到了编译范例的时候了,范例在APPS目录里,好兴奋呀。。。
开始编译:
zhaowei@zhaowei-ubuntu:~/toolchain/apps/HelloToolchain$ make
arm-apple-darwin9-gcc -lobjc -bind_at_load -framework Foundation -framework CoreFoundation -framework UIKit -w -o HelloToolchain HelloToolchain.o
ld: library not fou ......

Linux Versions and Patches


Linux version
[1] 2.6.10
2.6 version number, 10 release number
[2] 2.6.10 and 2.6.11
They can differ significantly even in core components and in fundamental algorithms
[3] 2.6.11.12
when a new kernel release appears, it is potentially unstable and buggy. To address this problem, the kern ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号