|
前不久搞了个netpliance NP1000,现在终于有空拿出来玩玩.
NP1000是9年前的一款一体机,配置大概为:
winchip 200MHZ(pentium级别)
64M SDRAM
32M DOM
10寸伪彩LCD(800X600)
这款机器的好处就是便宜,199元,显示器键盘啥的都有了.拿来就可以用.但是由于接口有些限制.例如只有一个USB,没有RJ45等,所以我觉得拿来作为linux的入门级学习机,和一般的开发学习还是很好的.便宜,功耗低(估计运行时整机20多瓦, 只相当于一个小液晶的功耗),占地方小.内存可以换,最大256M,也够了.
最大的缺点就是,这个IDE接口不标准,需要改引脚的顺序才可以接普通硬盘.对于我这样学软件的人来说就是个大麻烦了.于是我觉得在这32M上弄一个小小的LINUX,关键是还要把常用的标准开发工具塞进去.其中不考虑图形界面.
选择ttylinux作为基础.其他几个mini linux里面的塞的软件我用不上.就觉得ttylinux最干净,从这个系统开始,可以避免把一些无用的程序装进来占空间.
这个机器还有个16M的flash盘,里面有DOS系统,可以认出USB光区,我主要把它用来作为急救和启动用.这里就不多说.对这机器感兴趣的可以到这里看更详细的讨论,里面有一些硬件高手做了些改进.已经可以直接装普通硬盘.
http://www.hi-pda.com/forum/view ... p;extra=&page=1
另外,由于tty8自带的内核在NP1000上会有问题,所以我重新编译了一个较新的内核,取消掉模块.
首先,用flash盘引导系统,光盘里刻入ttylinux8的文件img和kernel,lilo.exe等工具,然后从dos启动ttylinux8.
格式化DOM盘,mount到/mnt/usb下,将tty8根目录下的所有文件copy至/mnt/usb下,kernel复制到/mnt/usb/boot/下.
然后chroot到/mnt/usb,编辑好/etc/fstab和/etc/lilo.conf后,运行lilo命令.就算搞定.重启动,进入这个tty了.此时占用磁盘大约6,7M.
下一步就是安装开发工具.以下是后面安装进去的工具:
vim7.0
binutils2.17
make3.81
gcc3.3
gdb6.49
还有两个库文件,libncurses,libreadline.这两个库文件在ttylinux的论坛上有人做好的.直接装进来.
下面主要分享一下安装这几个开发工具的一点心得.
主要的软件都到debian.org上下载.
vim7.0: 标准的vim7太大了,几十兆.于是在里面搜,发现一个vimtiny,其实就是vim7,只是去掉很多不用的东西.也就一两兆. 把deb包下载下来,解压,去掉文档,然后直接复制相应目录下.就可以正常使用.
binutils2.17:这个没啥好说的,gcc的后端和一些二进制分析工具.解压deb包后把bin/下的复制到系统对应目录中.其他都不要.
make3.81:解压后,只要bin/下那个make文件.
gcc3.3:有三四个必须的包,解压后,除了usr/share/下的不要,其他都复制到系统中.
gdb6.49:解压后只要bin下的gcore和gdb,其他都不要.
然后就是头文件,安装头文件最好的办法是,先用ttylinux8的源代码来生成crosstool,代码里面有说明.然后在目录里面找到有一个include目录,下面就是要用的头文件.大概有6M,我删去一些不常用的.还剩3M,包括了标准库的头文件,还有linux/下一些必须的文件.
最后一件事,就是还缺一个东西,libc6-dev,否则gcc不能用.这个包解压比较大.但实际上就两三个文件必须:crt1.o,crtn.o,复制到/usr/lib下.
编写一个hello.c,写一个makefile,运行make.再用gdb调试.一切正常.
整个系统现在占用21M,还剩7.5M,还有一点就是文件系统占用了.
虽然系统并不完善.但是主要的一些功能都在里面了.学习linux入门,c和asm是足够了.非常廉价实用的解决方案.
第一次发长贴,乱.多多指点. |
|