您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 其它行业文档 > 嵌入式linux操作系统第一章
嵌入式linux操作系统嵌入式linux操作系统严炳辉嵌入式linux操作系统第二章操作系统基础知识及linux系统简介123嵌入式系统体系结构Linux系统简介操作系统的启动过程2嵌入式linux操作系统•冯·诺依曼体系结构和哈佛体系结构(CPU的结构)•影响CPU性能的因素•存储器系统•I/O接口1.1嵌入式系统体系结构嵌入式linux操作系统冯·诺依曼体系结构模型指令寄存器控制器数据通道输入输出中央处理器存储器程序指令0指令1指令2指令3指令4数据数据0数据1数据21.1嵌入式系统体系结构嵌入式linux操作系统冯·诺依曼体系结构特点:(1)程序和数据共用一个存储空间;(2)程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置;(3)程序指令和数据宽度相同1.1嵌入式系统体系结构执行指令过程:先取指令并解码,再取操作数并执行运算,影响运算速度,容易出现瓶颈效应。嵌入式linux操作系统哈佛体系结构指令寄存器控制器数据通道输入输出中央处理器程序存储器指令0指令1指令2数据存储器数据0数据1数据2地址指令地址数据1.1嵌入式系统体系结构嵌入式linux操作系统哈佛体系结构特点:(1)程序与数据存储在不同存储空间,各有独立编址并可以各自独立访问;(2)有四套总线:程序的数据总线和地址总线,数据的数据总线和地址总线;(3)可以在一个机器周期内同时获取指令和操作数,且因程序和数据分属不同物理空间,取指与执行可以重叠。1.1嵌入式系统体系结构哈佛体系结构:运算速度比较快嵌入式linux操作系统哈佛体系结构指令执行过程1.1嵌入式系统体系结构嵌入式linux操作系统影响CPU性能的因素:流水线、超标量和缓存•流水线技术:几个指令可以并行执行提高了CPU的运行效率内部信息流要求通畅流动译码取指执行add译码取指执行sub译码取指执行cmp时间AddSubCmp1.1嵌入式系统体系结构嵌入式linux操作系统超标量执行:超标量CPU采用多条流水线结构执行1预取指令CACHE译码2译码1执行2执行1预取译码2译码1执行2流水线1流水线2数据1.1嵌入式系统体系结构嵌入式linux操作系统(1)为什么采用高速缓存微处理器的时钟频率比内存速度提高快得多,高速缓存可以提高内存的平均性能。(2)高速缓存的工作原理高速缓存是一种小型、快速的存储器,它保存部分主存内容的拷贝。CPU高速缓存控制器CACHE主存数据数据地址1.1嵌入式系统体系结构嵌入式linux操作系统总线和总线桥CPU低速设备桥数据高速总线存储器高速设备高速设备低速总线1.1嵌入式系统体系结构嵌入式linux操作系统芯片组(Chipset)•主板的核心组成部分,如果说中央处理器(CPU)是整个电脑系统的心脏,那么芯片组将是整个身体的躯干。•芯片组是主板的灵魂。芯片组性能的优劣,决定了主板性能的好坏与级别的高低。•目前CPU的型号与种类繁多、功能特点不一,如果芯片组不能与CPU良好地协同工作,将严重地影响计算机的整体性能甚至不能正常工作。1.1嵌入式系统体系结构嵌入式linux操作系统•其中CPU的类型、主板的系统总线频率,内存类型、容量和性能,显卡插槽规格是由芯片组中的北桥芯片决定的;•扩展槽的种类与数量、扩展接口的类型和数量(如USB2.0/1.1,IEEE1394,串口,并口,笔记本的VGA输出接口)等,是由芯片组的南桥决定的;•还有些芯片组由于纳入了3D加速显示(集成显示芯片)、AC'97声音解码等功能,还决定着计算机系统的显示性能和音频播放性能等。1.1嵌入式系统体系结构嵌入式linux操作系统•北桥芯片负责与CPU的联系并控制内存、AGP、PCI数据在北桥内部传输,提供对CPU的类型和主频、系统的前端总线频率、内存的类型(SDRAM,DDRSDRAM以及RDRAM等等)和最大容量、ISA/PCI/AGP插槽、ECC纠错等支持.•整合型芯片组的北桥芯片还集成了显示核心。•离CPU最近的芯片,这主要是考虑到北桥芯片与处理器之间的通信最密切,为了提高通信性能而缩短传输距离。北桥芯片1.1嵌入式系统体系结构嵌入式linux操作系统1.1嵌入式系统体系结构北桥芯片嵌入式linux操作系统南桥芯片(SouthBridge))•南桥芯片负责I/O总线之间的通信,如PCI总线、USB、LAN、ATA、SATA、音频控制器、键盘控制器、实时时钟控制器、高级电源管理等,这些技术一般相对来说比较稳定,所以不同芯片组中可能南桥芯片是一样的,不同的只是北桥芯片。所以现在主板芯片组中北桥芯片的数量要远远多于南桥芯片。1.1嵌入式系统体系结构嵌入式linux操作系统•南桥芯片不与处理器直接相连,而是通过一定的方式(不同厂商各种芯片组有所不同,例如英特尔的英特尔HubArchitecture以及SIS的Multi-Threaded“妙渠”)与北桥芯片相连。•离处理器较远,一般都没有覆盖散热片。•发展方向主要是集成更多的功能,例如网卡、RAID、IEEE1394、甚至WI-FI无线网络等等。1.1嵌入式系统体系结构嵌入式linux操作系统1.1嵌入式系统体系结构南桥芯片嵌入式linux操作系统存储器系统•RAM:随机存取存储器,SRAM:静态随机存储器,DRAM:动态随机存储器•1)SRAM比DRAM快•2)SRAM比DRAM耗电多•3)DRAM存储密度比SRAM高得多•4)DRM需要周期性刷新•ROM:只读存储器•FLASH:闪存1.1嵌入式系统体系结构嵌入式linux操作系统输入输出接口:•I/O•A/D、D/A•键盘•LCD•存储器接口•设备接口1.1嵌入式系统体系结构嵌入式linux操作系统RS232(串口)•最高传输速率为20kb/s,最大传输线长为30米。•一般微机提供标准的RS232C接口,该接口采用负逻辑,与CMOS、TTL电路的相连需要专用集成电路进行电平转换。•传输速率低、传输距离近、抗共模干扰能力差,在条件较恶劣的现场控制中,很难实现数据的正常传输和获取。1.1嵌入式系统体系结构嵌入式linux操作系统典型嵌入式系统基本组成-硬件MPU微处理器电源模块时钟复位FlashRAMROMUSBLCDKeyboard外围电路Other外设1.1嵌入式系统体系结构嵌入式linux操作系统典型嵌入式系统基本组成-软硬件结构1.1嵌入式系统体系结构处理器存储器输入输出操作系统应用程序软件结构硬件结构嵌入式linux操作系统第二章操作系统基础知识及linux系统简介123嵌入式系统体系结构Linux系统简介操作系统的启动过程25嵌入式linux操作系统Windows系统与Linux系统的启动过程1.2操作系统的启动过程嵌入式linux操作系统Windows系统与Linux系统的启动过程1.2操作系统的启动过程嵌入式linux操作系统嵌入式linux操作系统硬盘的物理第一扇(0柱面,0磁道,1扇区)是硬盘主引导记录扇MBR。计算机启动时,首先就读取该扇,读出硬盘分区表,从中选择三个主分区中唯一一个具有活动标记的分区,引导该分区上的操作系统。主引导记录MBR嵌入式linux操作系统第一阶段:BIOS:硬件自检,启动顺序;硬件自检完成后,BIOS把控制权转交给下一阶段的启动程序。这时,BIOS需要知道,”下一阶段的启动程序”具体存放在哪一个设备。也就是说,BIOS需要有一个外部储存设备的排序,排在前面的设备就是优先转交控制权的设备。这种排序叫做”启动顺序”(BootSequence)。打开BIOS的操作界面,里面有一项就是”设定启动顺序”。嵌入式linux操作系统嵌入式linux操作系统第二阶段:主引导记录BIOS按照”启动顺序”,把控制权转交给排在第一位的储存设备。即根据用户指定的引导顺序从软盘、硬盘或是可移动设备中读取启动设备的MBR,并放入指定的位置(0x7c000)内存中。计算机读取该设备的第一个扇区,也就是读取最前面的512个字节。如果这512个字节的最后两个字节是0x55和0xAA,表明这个设备可以用于启动;如果不是,表明设备不能用于启动,控制权于是被转交给”启动顺序”中的下一个设备。这最前面的512个字节,就叫做”主引导记录”(Masterbootrecord,缩写为MBR)。它的主要作用是,告诉计算机到硬盘的哪一个位置去找操作系统。嵌入式linux操作系统第三阶段:硬盘启动计算机的控制权就要转交给硬盘的某个分区了,这里又分成三种情况。情况A:卷引导记录:四个主分区里面,只有一个是激活的。计算机会读取激活分区的第一个扇区,叫做”卷引导记录”(Volumebootrecord,缩写为VBR).告诉计算机,操作系统在这个分区里的位置。然后,计算机就会加载操作系统了。情况B:扩展分区和逻辑分区:计算机先读取扩展分区的第一个扇区,叫做”扩展引导记录”(Extendedbootrecord,缩写为EBR)。它里面也包含一张64字节的分区表,但是最多只有两项(也就是两个逻辑分区)。情况C:启动管理器在这种情况下,计算机读取”主引导记录”前面446字节的机器码之后,不再把控制权转交给某一个分区,而是运行事先安装的”启动管理器”(bootloader),由用户选择启动哪一个操作系统。嵌入式linux操作系统启动管理器嵌入式linux操作系统第四阶段:操作系统控制权转交给操作系统后,操作系统的内核首先被载入内存。以Linux系统为例,先载入/boot目录下面的kernel。内核加载成功后,第一个运行的程序是/sbin/init。它根据配置文件(Debian系统是/etc/initab)产生init进程。这是Linux启动后的第一个进程,pid进程编号为1,其他进程都是它的后代。然后,init线程加载系统的各个模块,比如窗口程序和网络程序,直至执行/bin/login程序,跳出登录界面,等待用户输入用户名和密码。至此,全部启动过程完成。嵌入式linux操作系统嵌入式linux操作系统Linux的启动、登录、关机系统加电Bootloader或BIOS加电自检读硬盘主引导扇区分析分区表执行MBR中的引导程序读入操作系统内核读入活动分区的引导扇区LILO装在MBR进行初始化Linux启动过程执行initLILO装在boot扇区1.2操作系统的启动过程LInuxLoader(LILO)嵌入式linux操作系统第二章操作系统基础知识及linux系统简介123嵌入式系统体系结构Linux系统简介操作系统的启动过程38嵌入式linux操作系统1.3Linux基础知识•(一)什么是Linux当设计的嵌入式系统要完成较复杂功能后,简单控制逻辑就不够用了,这时就需要应用嵌入式操作系统了。随着嵌入式系统的发展,从八十年代末开始相继出现了一些嵌入式操作系统。如:Vxwork、pSOS、Neculeus和WindowsCE。嵌入式linux操作系统1.3Linux基础知识简单地说,Linux是一套免费使用和自由传播的类Unix操作系统。这个系统是由世界各地的成千上万的程序员设计和实现的。目的是建立不受任何商品化软件的版权制约的、全世界都能自由使用的Unix兼容产品。嵌入式Linux是对Linux经过小型化裁剪,能够固化在容量相对较小(数百K到数百M)的存储器芯片中,应用于特定的嵌入式场合Linux。嵌入式linux操作系统1.2Linux基础知识Linux是一个网络操作系统(NetworkOperatingSystem,NOS)。所谓网络操作系统则在一般操作系统的功能上增加了网络功能,具体包括:1)实现网络中各计算机之间的通信和资源共享;2)提供多种网络服务软件;3)提供网络用户的应用程序接口。嵌入式linux操作系统1.2Linux基础知识Linux最早是LinusTorvalds(李纳斯·托沃兹)于1991年在芬兰赫尔辛基大学原创开发的,并在GNU(GNU‘sNotUnix)的GPL(GeneralPublicLicense)原则下发行。Linux继承了Unix,他们相似和相同的东西好多,所以Linux还是类U
本文标题:嵌入式linux操作系统第一章
链接地址:https://www.777doc.com/doc-3972942 .html