Kamalesh Saha University of North Carolina at Charlotte

Slides:



Advertisements
Similar presentations
Operating System.
Advertisements

1 Web Server Administration Chapter 3 Installing the Server.
Embedded Real-time Systems The Linux kernel. The Operating System Kernel Resident in memory, privileged mode System calls offer general purpose services.
Figure 1.1 Interaction between applications and the operating system.
CENG334 Introduction to Operating Systems Erol Sahin Dept of Computer Eng. Middle East Technical University Ankara, TURKEY URL:
Embedded Linux Sandeep Sirpatil Graduate Student University of North Carolina Charlotte Feb 7, 2005.
Linux Basics. What is an Operating System (OS)? An Operating System (OS) is an interface between hardware and user which is responsible for the management.
1 uClinux course. 2 Author: D L Johnson Overview u Day 1 +Survey of embedded operating systems - why uclinux? +The uclinux environment - the directory.
Chapter 2: Operating-System Structures. 2.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Jan 14, 2005 Operating System.
Embedded OS Options. Operating systems for embedded devices As embedded systems (PDAs, cellphones, point-of-sale devices, VCRs, industrial robot control,
The UNIX Time-sharing system
Chapter 9: Networking with Unix and Linux. Objectives: Describe the origins and history of the UNIX operating system Identify similarities and differences.
Kamalesh Saha University of North Carolina at Charlotte
CEG 2400 FALL 2012 Linux/UNIX Network Operating Systems.
Chapter 1: Introduction What is an Operating System? Mainframe Systems Desktop Systems Multiprocessor Systems Distributed Systems Clustered System Real.
CONCEPTS OF REAL-TIME OPERATING SYSTEM. OBJECTIVE  To Understand Why we need OS?  To identify Types of OS  To Define Real - Time Systems  To Classify.
Course : PGClass : MCA Subject: Operating SystemSub.Code : 3CT11 Staff Name : S.SomasundaramYear & Sem : II nd & III rd.
Introduction to Operating Systems Concepts
Introduction to Real-Time Operating Systems
Computer System Structures
IT320 Operating System Concepts
COMPSCI 110 Operating Systems
Operating System & Application Software
REAL-TIME OPERATING SYSTEMS
Chapter 1: Introduction
Chapter 1: Introduction
Operating System Review
Resource Management IB Computer Science.
LINUX WINDOWS Vs..
Credits: 3 CIE: 50 Marks SEE:100 Marks Lab: Embedded and IOT Lab
Operating System.
Operating Systems •The kernel is a program that constitutes the central core of a computer operating system. It has complete control over everything that.
Chapter 2: Operating-System Structures
Lesson Objectives Aims Key Words
Chapter 12: File System Implementation
Cross-platform Libraries Technology Presentation
Chapter 1: Introduction
Chapter 1: Introduction
Chapter 2: System Structures
TOPIC 6: SYSTEM START-UP AND CONFIGURATION
THE OPERATION SYSTEM The need for an operating system
Structure of Unix OS.
MOBILE DEVICE OPERATING SYSTEM
Chapter 1: Introduction
Chapter 1: Introduction
LINUX WINDOWS Vs..
Chapter 1: Introduction
Chapter 1: Introduction
Operating System Review
Chapter 4: Threads.
Objective Understand the concepts of modern operating systems by investigating the most popular operating system in the current and future market Provide.
CSE 303 Lecture 1 introduction to Linux/Unix environment
Chapter 2: The Linux System Part 1
CS703 - Advanced Operating Systems
Real-Time Operating Systems
Operating System Review
Chapter 1: Introduction
Language Processors Application Domain – ideas concerning the behavior of a software. Execution Domain – Ideas implemented in Computer System. Semantic.
Subject Name: Operating System Concepts Subject Number:
Chapter 1: Introduction
Chapter 1: Introduction
Chapter 1: Introduction
Chapter 3 – Operating Systems
OPERATING SYSTEMS STRUCTURES
Chapter 1: Introduction
Objective Understand the concepts of modern operating systems by investigating the most popular operating system in the current and future market Provide.
Chapter 1: Introduction
A very basic introduction
Mr. M. D. Jamadar Assistant Professor
Chapter 1: Introduction
Presentation transcript:

Kamalesh Saha University of North Carolina at Charlotte Embedded Linux Kamalesh Saha University of North Carolina at Charlotte

Topics What is Linux Why Use Linux? Linux Portability What is Embedded Linux? Generic Architecture of Linux What Is Real-Time Linux? Architecture of Real-Time Linux File Systems in Embedded Linux Who Provides Embedded Linux ? References Kamalesh Saha

What is Linux Linux is a free Unix-type operating system that is causing a revolution in the computer world. The kernel maintained by Linus Torvalds with the assistance of developers around the world, this operating system in only a few short years is beginning to dominate markets worldwide. A key reason for this is its development under the GNU (GNU’s Not Unix) General Public License, meaning that the source code for Linux is freely available to everyone for the asking. Kamalesh Saha

Why use Linux Open Source Reliability Scalability Secure Supports Virtually All Network Communication Protocols Large pool of skilled developers Free software and tools No runtime license Kamalesh Saha

Linux Portability Linux provides great portability. The same Application Source Code is Used For A Large number of processors and architectures. A Large number of Embedded Board Support Packages (BSP). A Large number of interfaces with device drivers available. Linux is able to runs the same applications on everything from a Linux based PDA to your desktop systems to your enterprise servers. Kamalesh Saha

Why Linux for Embedded Systems? Kamalesh Saha

What is Embedded Linux? The Linux OS ported to an embedded system. Generally contain a smaller subset of functionality. Less services provided. Less memory required. Boots from ROM. No keyboard or mouse required. Special software developed to control embedded peripherals. (flash disks, touch screens, tiny displays) Kamalesh Saha

Implementation of Embedded Linux Initial Program Loader (IPL) Loads the kernel into memory The Kernel This is the heart of Linux operating System. Linux has a monolithic kernel. File System The Linux kernel mounts a root file system when booted. Kamalesh Saha

Generic Architecture of Linux Ref: “Building Embedded Linux Systems” – Karim Yaghmour Kamalesh Saha

Linux and Real-Time Is Linux Real-Time? NO, BUT…Why? Monolithic Kernel:: The Linux kernel allows a kernel task exclusive access to some data for long periods. This could delay the execution of any POSIX (Portable Operating System Interface for uniX) real-time task that needs access to that same data. Non Preemptable:: The Linux kernel does not preempt the execution of any task during system calls. If a low-priority process is in the middle of a system call and a message is received for a real-time process, the message will unfortunately be held in the queue until the system call completes, despite its low priority. Kamalesh Saha

Linux and Real-Time Resource Lock:: Linux makes high-priority tasks wait for low-priority tasks to release resources. For example, if any process allocates the last network buffer and a higher priority process needs a network buffer to send a message, the higher priority process must wait until some other process releases a network buffer before it can send its message. Priority Scheduling:: The Linux scheduling algorithm will sometimes give the most unimportant and “nicest” process a time slice, even in circumstances when a higher priority process is ready to execute. Kamalesh Saha

Real-Time Work on Linux Today Linux can provide Soft Real-Time Two Approaches to Real-Time Linux Modify Linux to include a Real-Time scheduler. Fixes the problems discussed previously. Put Regular Linux on top of a Real-Time operating system (RTOS). Kamalesh Saha

Real-Time Work on Linux Several Vendors are working on Real-Time solutions: MontaVista has a Real-Time kernel that they are trying to get accepted by the Linux Community. RTLinux provides a Real-Time kernel uses Linux a thread of the Real-Time OS. Lineo has implemented the Real Time Application Interface (RTAI) for Linux. Kamalesh Saha

Architecture of Real-Time Linux Ref: Circuit Cellar Article Kamalesh Saha

Architecture of Real-Time Linux (contd.) Resource Kernel Ref: Issues for Making Linux Predictable by T. Nakajima, M. I. Asaki Kamalesh Saha

File Systems in Embedded Linux Supports a wide range of file systems: Log-based file systems (XFS, JFS, JFFS2, ReiserFS, ext3): favorites for servers. Traditional Unix file systems (minix, ext, ext2, UFS) Network file systems (NFS, Coda, AFS, DFS) DOS/Windows file systems (FAT16, FAT32, NTFS) Kamalesh Saha

Distributions of Embedded Linux MontaVista Software LynuxWorks Lineo Interesting Alternative OnCore Systems Others RedHat Kamalesh Saha

Types of Embedded Linux Systems ETLinux LEM LOAF uClinux uLinux ThinLinux Kamalesh Saha

Flies in the Ointment Learning curve Not all are hardware compatible More technical ability required Equivalent programs No single source for marketing Kamalesh Saha

Growth of Embedded Linux Kamalesh Saha

Applications of Embedded Linux Entertainment devices Embedded Single Board Computer PDA Embedded Processor and System-on-Chip IC Smart Phone Robot Kamalesh Saha

References www.embeddedlinuxjournal.com www.embedded-linux.org www.lineo.com www.linux.org www.linuxdevices.com www.lynuxworks.com www.redhat.com www.wikipedia.org Issues for Making Linux Predictable by T. Nakajima, M. I. Asaki Embedding Linux by Alex Lennon “Building Embedded Linux Systems” – Karim Yaghmour Kamalesh Saha

Kamalesh Saha