标签归档:操作系统 Operating system
为龙芯电脑安装操作系统常见问题
本博在实际工作中,曾经安装过不少龙芯电脑的系统,可谓稍有经验,这里略微介绍一些常见问题。 内核通用吗?一般龙芯2F使用MIPSIII的指令级,内核格式都为64位的文件。所以不管时O32系统还是N32系统,只要硬件相同都是通用的,不过别忘了连同/lib/modules 和/lib/firmware一起使用:) 龙芯到底有多少种系统?很多,按照ABI分为3类:O32,N32,N64.O32是出厂时自带的系统,一般龙芯盒子中的华镭,龙芯本中的loonux、红旗和龙芯一体机中的共创都是O32系统。这类系统基本都是在debian的基础上做做山寨化。当然也有英文版的debian系统,这个比较干净一些。对于O32的系统,源的问题最头疼,因为各个公司画地为牢,大家都努力维护自己的源,又都缺人手,所以都不完美,试了几个都不太好,装着装着就会出依赖问题,除非一直跟着升级,不然一次apt-get dist-upgrade,那简直是噩梦。N32的系统,zhllg基于Gentoo的已经有了,龙芯论坛里就能找到下载链接。因为Gentoo是自己直接编译,问题相对少些。debian的还没有。N64的系统,有憨牛LFS的,没有试过。至于为啥会有这么多系统,得问问MIPS,因为有不少改进,就产生了不少问题。请参考本博<好大一筐梅普斯>.N32系统据说比O32快20%-30%。因为龙芯本身是64位处理器,所以64位系统也没问题.
Gentoo 沙盘简介
emerge一个软件包时Portage的工作方式: 1,Portage下载源码tar包和补丁(如果需要的话) 2,Portage解压缩tar包到指定位置,所有的编译将在该目录展开,Portage默认使用/var/tmp/portage/packagename/work 3,解压和打补丁(如果需要的话)后(ebuild中的src_unpack()函数),Portage开始编译,一般情况下在特定目录(ebuild使用${WORKDIR}变量指定目录)下执行configure和make命令. 4,编译完成后,portage将所有指定目录下的文件合并到正在运行的系统中.(通常为/,但通过合并时设置ROOT=”/路径”可以修改),为了避免非法或不正确的ebuild对整个文件系统造成不可逆的破坏,我们需要严格限制文件系统的哪个区域允许portage在解压和编译时修改,这就是沙盘工作的路径,默认时,沙盘启动,并限定ebuild(和它执行过程中的明林)都在指定的区域内写磁盘.若ebuild越过沙盘保护的环境,试图在外部区域写磁盘,就构成了沙盘越界.
如何得到当前linux系统的页大小
操作系统的页是虚拟存储的关键技术. #include <unistd.h> #include <stdio.h> int main() { int pageSize = getpagesize(); printf("Page size on your system = %i bytes\n", pageSize); return 0; } 在我电脑里的运行结果: $./a.out Page size on your system = 4096 bytes
