Linux系统分为三个层次:用户、核心和硬件。Linux 内核可直接从Internet下载,也可从一发行版本如Red Hat Linux、Turbo Linux得到。Linux核心源代码执行GPL 版权协议,任何人都可在遵循GPL版权协议条件下对Linux核心进行修改和补充,并可根据自身应用系统的需求,进行裁减定制,形成针对应用的嵌入式Linux内核。本方案采用Red hat Linux 6.0,内核版本2.2.5,在保留TCP/IP 网络支持、STAR902以太网卡驱动的情况下,定制后的内核大小为360KB,足以满足本系统中嵌入式硬件及软件的需求。
(4)由此可见,Linux的系统调用也象DOS系统的 int 21h中断服务,把0x80中断作为总的入口,然后转到保存在sys_call_table表中的各种中断服务例程的入口地址,形成各种不同的中断服务。由以上源代码分析可知?熏要增加一个系统调用就必须在sys_call_table表中增加一项,并在其中保存好系统服务例程的入口地址,然后重新编译内核。当然,系统服务例程是必不可少的。