易截截图软件、单文件、免安装、纯绿色、仅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 0.11 内核学习 truncate.c


/*
 * 该文件主要实现的是truncate函数,该函数是释放指定i 
 * 节点在设备上占用的所有逻辑块,包括直接块、一次间
 * 接块和二次间接块
 */
/*
 *  linux/fs/truncate.c
 *
 *  (C) 1991  Linus Torvalds
 */
#include <linux/sched.h>
......

linux 常用网络工具

1,网络整体流量查看
  ifconfig -s
  cat /proc/net/dev
  sar -n DEV/EDEV interval(时间隔) count(次数)
  nload -m [-d interface]
2,详细查看网络流量,比如查看某一个ip/port,某一个协议
  iptraf,文本窗口界面
  ntop,web网页界面 ......

SubVersion定期完整备份脚本(Linux)

脚本功能: 定期对一些项目进行完整备份.
project.lst 文件格式如下:
project1
project2
备份脚本如下:
#!/bin/sh
#
# subversion data backup script
# by scud http://www.jscud.com
# 2005-11-27
#
# subversion完整备份的脚本,调整好后使用crontab -e 放到自动执行里面即可.
#
#备份日志文件
LogFile=/bac ......

Linux设置DNS和主机名

Linux下配置静态IP地址,设置DNS和主机名
配置文件位于:
/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.0.3
NETMASK=255.255.255.0
GATEWAY=192.168.0.1
使IP地址生效:
/sbin/ifdown eth0
/sbin/ifup eth0
配置dns解析
echo "nameserver 211.98.1.28" ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号