导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→深圳嵌入式培训,信盈达教你如何构造嵌入式Linux[eduann]

 *第52685篇: 深圳嵌入式培训,信盈达教你如何构造嵌入式Linux

  
楼 主:eduann 2013年8月12日16:45
 深圳嵌入式培训,信盈达教你如何构造嵌入式Linux

深圳/郑州信盈达嵌入式、单片机、ARM、MIPS、FPGA、Android培训!
免费试听,满意后给您量身定制课程(包学会),快速提高您的技能!
教学特色:名师督学+工程师指导;项目案列解析+实际解决方案!
详情质询:安老师 电话13316822655  QQ 122330119

Linux所需的内存大约在600K~800K之间。1MB内存就可能可以开机了,但不太有用,因为连载入C程序库都有困难。2MB内存应该就可以做点事了,但要到 4MB以上才可以执行一个比较完整的系统。 
  因为Linux 的filesystem 相当大,大约在 230K 左右,占了 1/3 的体积。内存管理占了80K,和核心其它部分的总和差不多。TCP/IP stack 占了65K,驱动程序占了120K。SysV IPC占了 21K,必要的话可以拿掉,核心档应该可以再小个10K左右。 
  如果要裁剪核心大小,应该动那里呢? 答案很明显,当然是文件系统。Linux 的 VFS简化了档案系统的设计,buffer cache, directory cache增加了系统的效率。但这些embedded系统根本就用处不大。如果可以把它们拿掉,核心可以马上缩小 20K 左右。如果跳过整个 VFS,直接将文件系统写成一个 driver 的型式,应该可以将 230K缩减至50K左右。整个核心缩到100K左右。 
  系统启动 
  系统的启动顺序及相关文件仍在核心源码目录下,看以下几个文件: 
  ./arch/$ARCH/boot/ 
  bootsect.s 
  ./arch/$ARCH/boot/setup.s 
  ./init/main.c 
  bootsect.S 及 setup.S 
  这个程序是Linux kernel的第一个程序,包括了Linux自己的bootstrap程序,但是在说明这个程序前,必须先说明一般IBM PC开机时的动作(此处的开机是指“打开PC的电源”)。 
  一般PC在电源一开时,是由内存中地址FFFF:0000开始执行(这个地址一定在ROM BIOS中,ROM BIOS一般是在FEOOOh到FFFFFh中),而此处的内容则是一个jump指令,jump到另一个位于ROM BIOS中的位置,开始执行一系列的动作。 
  紧接着系统测试码之后,控制权会转移给ROM中的启动程序(ROM bootstrap routine)。这个程序会将磁盘上的第零轨第零扇区读入内存中,至于读到内存的哪里呢? --绝对位置07C0:0000(即07C00h处),这是IBM系列PC的特性。而位于Linux开机磁盘的boot sector上的,正是Linux的bootsect程序。 
  把大家所熟知的MS DOS 与Linux的开机部分做个粗浅的比较。MS DOS 由位于磁盘上boot sector的boot程序负责把IO.SYS载入内存中,而IO.SYS则负有把DOS的kernel --MSDOS.SYS载入内存的重任。而Linux则是由位于boot sector 的bootsect程序负责把setup及Linux的kernel载入内存中,再将控制权交给setup。 
  驱动程序 
  在Linux系统里,设备驱动程序所提供的这组入口点由一个结构来向系统进行说明。 
  设备驱动程序所提供的入口点,在设备驱动程序初始化的时候向系统进行登记,以便系统在适当的时候调用。Linux系统里,通过调用register_chrdev 向系统注册字符型设备驱动程序。 
  在Linux里,除了直接修改系统核心的源代码,把设备驱动程序加进核心里以外,还可以把设备驱动程序作为可加载的模块,由系统管理员动态地加载它,使之成为核心的一部分。也可以由系统管理员把已加载的模块动态地卸载下来。Linux中,模块可以用C语言编写,用gcc编译成目标文件(不进行链接,作为*.o文件存在)。为此需要在gcc命令行里加上-c的参数。在成功地向系统注册了设备驱动程序后(调用register_chrdev成功后),就可以用mknod命令来把设备映射为一个特别文件。其它程序使用这个设备的时候,只要对此特别文件进行操作就行了。 

  
2楼:eduann 2013年10月9日16:23
 支持个啊
果断支持 确实去学习了的  坚持就是胜利啊。。。
  
3楼:eduann 2013年10月15日14:38
 果断支持
值得分享值得去学习啊。。。
  
4楼:eduann 2013年10月19日17:56
 果断学习
确实挺不错的,好好学习天天向上啊。。。
  
5楼:eduann 2013年11月13日10:54
 学习起
学习去学习去哦
  
6楼:eduann 2013年11月13日10:56
 学习起
深圳/郑州信盈达嵌入式、单片机、ARM、MIPS、FPGA、Android培训!
免费试听,满意后给您量身定制课程(包学会),快速提高您的技能!
教学特色:名师督学+工程师指导;项目案列解析+实际解决方案!
详情质询:安老师 电话13926586805  QQ 122330119
  
7楼:eduann 2013年12月6日17:10
 好好学习
2013年开始倒计时!年底回馈,信盈达嵌入式、单片机培训课程报名即送开发板,给自己的学习来点实际的动手工具,行动吧!民治中心免费学习C语言10个名额正火热预定中。。。联系安老师13926586805 QQ 122330119
  
8楼:eduann 2013年12月11日16:06
 好好学习天天向上额

  深圳/郑州信盈达嵌入式、单片机、ARM、MIPS、FPGA、Android培训!
免费试听,满意后给您量身定制课程(包学会),快速提高您的技能!
教学特色:名师督学+工程师指导;项目案列解析+实际解决方案!
详情质询:安老师 电话13926586805  QQ 122330119
  
9楼:eduann 2013年12月18日14:50
 学习哦
好好学习天天向上额

广州深圳/郑州信盈达嵌入式、单片机、ARM、MIPS、FPGA、Android培训!
免费试听,满意后给您量身定制课程(包学会),快速提高您的技能!
教学特色:名师督学+工程师指导;项目案列解析+实际解决方案!
详情质询:安老师 电话13926586805  QQ 122330119

  
10楼:eduann 2013年12月27日16:48
 好好学习哦

深圳,郑州,广州嵌入式,单片机,电子,FPGA,PCB画板,android,STM32等技术培训,优惠大酬宾 优惠一:所有报名单片机课程的客户,赠送一套单片机学习版,报名即可领走。 优惠二:所有报名嵌入式课程的客户,赠送一套ARM9/A8学习版,报名即可领走。综合咨询电话安老师13926586805 QQ 122330119
  
11楼:eduann 2013年12月30日16:58
 学习学习哦
深圳,郑州,广州嵌入式,单片机,电子,FPGA,PCB画板,android,STM32等技术培训,优惠大酬宾 优惠一:所有报名单片机课程的客户,赠送一套单片机学习版,报名即可领走。 优惠二:所有报名嵌入式课程的客户,赠送一套ARM9/A8学习版,报名即可领走。综合咨询电话安老师13926586805 QQ 122330119
  
12楼:eduann 2014年1月7日11:28
 学习哦
深圳,郑州,广州嵌入式,单片机,电子,FPGA,PCB画板,android,STM32等技术培训,优惠大酬宾 优惠一:所有报名单片机课程的客户,赠送一套单片机学习版,报名即可领走。 优惠二:所有报名嵌入式课程的客户,赠送一套ARM9/A8学习版,报名即可领走。综合咨询电话安老师13926586805 QQ 122330119

>>>>>>对该主题发表你的看法

本主题贴数12,分页: [第1页]


[上一篇主题]:瑞雪团队研发速度快、量产供货押金低、升级维修服务周到

[下一篇主题]:电子产品开发设计+单片机程序硬件设计