我做的在内存上运行的嵌入式路由器
我认为用ramdisk做嵌入式路由器是好的选择。下面是我做的在内存上运行的嵌入式路由器的一些数据:看是否在内存上运行:
/ # mount
/dev/root on / type ext2(ro)
none on /dev type devfs(rw)
proc on /proc type proc(rw,nodiratime)
运行结果显示:没有硬盘,只有内存盘.
看硬盘(其实是内存盘)占用情况:
/ # df -h
Filesystem Size Used Available Use% Mounted on
/dev/root 3.9M 2.6M 1.3M 67% /
运行结果显示:内存盘大小4M,root系统文件占用2.6M.
看内存使用情况:
/ # free
total used free shared buffers
Mem: 513664 14300 499364 0 3964
Swap: 0 0 0
Total:513664 14300 499364
运行结果显示:内存有512M,使用了14M,其中4M是系统盘,实际使用内存量:10M.
/ # ping 127.0.0.1
PING 127.0.0.1 (127.0.0.1): 56 data bytes
64 bytes from 127.0.0.1: icmp_seq=0 ttl=64 time=0.0 ms
64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.0 ms
64 bytes from 127.0.0.1: icmp_seq=2 ttl=64 time=0.0 ms
64 bytes from 127.0.0.1: icmp_seq=3 ttl=64 time=0.0 ms
64 bytes from 127.0.0.1: icmp_seq=4 ttl=64 time=0.0 ms
64 bytes from 127.0.0.1: icmp_seq=5 ttl=64 time=0.0 ms
64 bytes from 127.0.0.1: icmp_seq=6 ttl=64 time=0.0 ms
64 bytes from 127.0.0.1: icmp_seq=7 ttl=64 time=0.0 ms
64 bytes from 127.0.0.1: icmp_seq=8 ttl=64 time=0.0 ms
64 bytes from 127.0.0.1: icmp_seq=9 ttl=64 time=0.0 ms
64 bytes from 127.0.0.1: icmp_seq=10 ttl=64 time=0.0 ms
--- 127.0.0.1 ping statistics ---
11 packets transmitted, 11 packets received, 0% packet loss
round-trip min/avg/max = 0.0/0.0/0.0 ms
对比开发机:(是同一台机器,FC4操作系统)
# ping 127.0.0.1
PING 127.0.0.1 (127.0.0.1) 56(84) bytes of data.
64 bytes from 127.0.0.1: icmp_seq=0 ttl=64 time=0.073 ms
64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.050 ms
64 bytes from 127.0.0.1: icmp_seq=2 ttl=64 time=0.049 ms
64 bytes from 127.0.0.1: icmp_seq=3 ttl=64 time=0.049 ms
64 bytes from 127.0.0.1: icmp_seq=4 ttl=64 time=0.050 ms
64 bytes from 127.0.0.1: icmp_seq=5 ttl=64 time=0.051 ms
64 bytes from 127.0.0.1: icmp_seq=6 ttl=64 time=0.051 ms
64 bytes from 127.0.0.1: icmp_seq=7 ttl=64 time=0.051 ms
64 bytes from 127.0.0.1: icmp_seq=8 ttl=64 time=0.057 ms
--- 127.0.0.1 ping statistics ---
9 packets transmitted, 9 received, 0% packet loss, time 7998ms
rtt min/avg/max/mdev = 0.049/0.053/0.073/0.010 ms, pipe 2 那你怎样保存你修改后的数据?
BFW就是运行在RAM的哦~~~有空就试一下它吧! 能否写一下过程? 发一贴就跑,目的何在?
又见太监帖
如题。 LZ就发了这一个贴子,倒 我也在做这个哦:lol。。不过我的体积比较大,主要是还在调试阶段 12M 。
包括dhcp,squid,web服务。
补充一下:squid 的缓冲在内存里,速度比用硬盘的快得多。
具体思路等完成后再来发表。
[ 本帖最后由 bpxyz 于 2006-7-30 18:37 编辑 ] 一点都不希奇.....所有基于LIVECD运行的系统都是建立在RAMDISK上的! livecd多大? boot完毕后可以eject么? 你还得陪上个光驱,而且多了N多不需要的服务。
我做这个完全是个人爱好,为的是详细了解linux的启动原理、过程,也是受四川地区曾经火了一时的金飞鱼、思比特路由器的影响,他们的就是在一个16M的DOM上运行基于linux的NAT+PROXY服务的ramdisk。 原帖由 bpxyz 于 2006-7-31 10:58 发表
livecd多大? boot完毕后可以eject么? 你还得陪上个光驱,而且多了N多不需要的服务。
我做这个完全是个人爱好,为的是详细了解linux的启动原理、过程,也是受四川地区曾经火了一时的金飞鱼、思比特路由器的 ...
vyatta的vyatta-livecd-1.0.3.iso只有56M
可以在VMWare上运行,配置界面像Juniper的路由器 vyatta 是做router的,不是用来做服务器的. 如果真的要搞个pc路由器,也许我直接使用junos. 可惜junos不能做多线的adsl啊。惨:( :lol :lol :lol :lol 其它嵌入式的小系统,不管是从硬盘光盘软盘闪存盘启动,只要启动完成后都可以只用到内存盘了的,这一点儿都不稀奇 路由基于内存中交换要快,不过处理还是在于处理器,对于交换区和存储区(硬盘)要求不是太高。
页:
[1]