DOC PREVIEW
UCLA EE 202A - SP06

This preview shows page 1-2-21-22 out of 22 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 22 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 22 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 22 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 22 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 22 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Embedded Configurable Operating SystemPowerPoint PresentationSlide 3Slide 4Slide 5Slide 6Slide 7Supported HardwareConfiguration TooleCos configuration ArchitectureeCos Configuration ResultThe ISO standard C and Math librariesKernel InternalsKernel Internals (cont.)Hardware Abstraction LayerSlide 17Other Supporting ToolsSlide 19Some Performance NumbersSlide 21Slide 22References IIEmbedded Configurable Operating SystemAndreas Savvides & Alireza Hodjat{asavvide, ahodjat}@ee.ucla.eduEE202aFall 200101/13/19 2Why RTOS?•Interactive embedded systems require real time scheduling•Some legacy OS can provide some of this functionality BUT they are too big to run on an embedded systems01/13/19 3Desirable Real-Time Kernel Features•Multitasking–Priority-based preemptive scheduling•Inter-task synchronization and communication–Semaphores, mailboxes, event-flags ...•Basic memory management•Interrupt handling•Timer handling, time management•Implementable on small deeply embedded systems01/13/19 4Linux in Post-PC ComputingServer PlatformsClient PlatformsPCThinClientsSTB HHDeeplyEmbeddedOACellphonesPager• Internet• File ServerCommsInfrastructure• Routers• Telecom• Hard Real-time required• Very small footprint required•Trend towards App-specific servers @ the low-end• Currently on proprietary OS• Linux is an opportunity to make these open platforms - 3rd party developers• Cost driven means custom to specific plat- form• Linux brings a. developers b. open-source c. low-costPC-like (multi-func)(slide from EL/IX website)01/13/19 5What is eCos?•eCos –Embedded Configurable Operating System–Based on configurable components•Kernel size from 32MB down to 32KB or less•Supports ISO C and math library•Implements the μITRON standard for embedded systems•EL/IX standard support–OS neutral API based on POSIX–Designed to avoid fragmentation01/13/19 6EL/IX Spans the SpectrumServer PlatformsClient PlatformsPCThinClientsSTB HHDeeplyEmbeddedOACellphonesPager• Internet• File ServerCommsInfrastructure• Routers• TelecomLinuxeCosEmbedded LinuxEL/IX APIGNU(slide from EL/IX website)01/13/19 7μITRON 4.0 Spec Supports•Task management•Task-depended synchronization•Task exception management•Basic synchronization and communication–(semaphore, eventflag, data queue, mailbox)•Extended Synchronization and Communication–(mutex, message buffer, rendevous)•Memory pool management•Time management–(cyclic handler, alarm handler, overrun handler)•System state management•Interrupt management•Service call management•System configuration management01/13/19 9Supported Hardware•Ported to Playstation 2 and Dreamcast •Will be supported in 2.5G/3.5G mobile multimedia devices (see 3G labs page) •Fujitsu SPARClite MB8683x series•Intel StrongARM Families– 1110 (e.g in iPAQ PDA), XScale, ARM7, ARM9 •NEC UR4300•PowerPC MPC8xx•Toshiba TX39 architecture•Device driver support for –Flash, ethernet, serial, USB (+ preliminary TCP/IP stack)http://sourceware.cygnus.com/ecos/hardware.html01/13/19 10Configuration Tool•Tailors eCos at source level, prior to compilation or assembly, and provides a configuration file and a set of files to build appl.01/13/19 11eCos configuration Architecture•Component Repository–Contains the sources used for building a configuration–A set of files defining the structure of relationships between the configuration tool and other components –Written in Component Definition Language (CDL)•Describes the constraints between the components and configuration options•Packages–They are the building blocks of an eCos configuration–A set of core packages is provided by Red Hat•kernel, C library, math library•Additional packets can be provided by developers –The eCos administration tool adds or removes packages from component repository–The eCos configuration tool includes or excludes packages from the configuration being built01/13/19 12eCos Configuration Result•Coherence is maintained with a set of consistency rules–i.e ensures you have timer support if you are using timeouts–Any illegal configuration will produce a conflict•Templates–Saved configuration (.ecc) includes a set of packages and configuration item setting–Contains the infrastructure, kernel, C and math libraries plus their support packages in eCos configuration Architecture eCos01/13/19 13The ISO standard C and Math libraries•Compatibility with the ISO 9899:1990 specification–eCos C library package• C library that implements the functions defined by the ISO standard, except for the mathematical functions–Math library•Implements mathematical functions from the ISO C libraray (math.h)–C library startup procedure•Sets up the environment in which applications run when they use the standard C library–main() entry point function–exit() function that does the clean up required by the standard01/13/19 14Kernel Internals•Scheduler options–Bitmap scheduler–Multi-level scheduler–Experimental “lottery” scheduler (under development)•Three level interrupt handling–ISR : Invoked in response to a hardware interrupt–DSR : Invoked in response to a request by an ISR –Threads : Are clients to the driver01/13/19 15Kernel Internals (cont.)•Exception handling is configurable•Thread synchronization–Available thread synchronization primitives•Semaphores, Mutex, Condition variables, Flags, Message Box–Provides simple mutex priority inheritance •Now only works with multi-level queue scheduler•Does not handle nested mutexes correctly•Can be disabled if the application doesn’t require it01/13/19 16Hardware Abstraction Layer•Architecture HAL–Abstracts the basic CPU and includes interrupt delivery, context switching , CPU startup and etc.•Platform HAL–Abstracts the properties of the current platform and includes startup, timer devised, I/O register access and interrupt controllers•Implementation HAL–Abstracts properties that lie between these two, such as architecture variants and on-chip devices01/13/19 17Application developmenteCos Development ProcesseCos configuration(enable assertion checking)Integrity check(run test suites)Target Neutral(simulated orsynthetic target)Target Specific(disable assertionchecking)Need config. update?YESDONENO01/13/19 18Other Supporting Tools•Redboot – standart bootstrap and debugging


View Full Document

UCLA EE 202A - SP06

Download SP06
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view SP06 and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view SP06 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?