Porting Linux to the Puppeteer. Getting the kernel source You will need a clean version of the linux kernel source This can be found at www.kernel.org.

Slides:



Advertisements
Similar presentations
Linux Installation LINUX INSTALLATION. Download LINUX Linux Installation To install Red Hat, you will need to download the ISO images (CD Images) of the.
Advertisements

Lab 4 Department of Computer Science and Information Engineering National Taiwan University Lab4 - Bootloader 2014/10/14/ 13 1.
Introduction Characteristics of USB System Model What needs to be done Platform Issues Conceptual Issues Timeline USB Monitoring Final Presentation 10.
Embedded System Programming Introduction to Device Drivers.
GNU/Linux Filesystem 1 st AUT GNU/Linux Festival Computer Engineering & IT Department Bahador Bakhshi.
Process management in Minix1 Processes Process is a program in execution. Program is a static entity while process is an active entity. Process Control.
Embedded Real-time Systems The Linux kernel. The Operating System Kernel Resident in memory, privileged mode System calls offer general purpose services.
CENG334 Introduction to Operating Systems Erol Sahin Dept of Computer Eng. Middle East Technical University Ankara, TURKEY URL:
Chapter 9 Extra Topics. The Kernel Core of the operating system Similar to UNIX kernel Originally developed and still controlled by Linus Torvalds uname.
Linux Install. Resources Guide to Linux Installation and Administration, Nicholas Wells, Course Technology, 2000.
Buildroot CS-423 Dick Steflik. buildroot uClibc – C library for developing for embedded Linux –much smaller than GNU C tools to make a cross-compilation.
Embedded Systems Programming Introduction to the course.
Week 10 Project 3: An Introduction to File Systems
COMPUTER SYSTEM LABORATORY Lab4 - Bootloader. Lab 4 Experimental Goal Learn how to build U-Boot bootloader for PXA /10/8/ 142.
Operating Systems Lab. (#2) University of Tehran – ECE Dept. Fall 2005 Reza Shokri
1 uClinux course. 2 Author: D L Johnson Overview u Day 1 +Survey of embedded operating systems - why uclinux? +The uclinux environment - the directory.
Linux Filesystem Last Update Copyright Kenneth M. Chipps Ph.D. 1.
LOGO Linux Installation. Linux Distribution Including shells, libraries, tools, compiler, servers, applications. Redhat, Fedora, Mandrake, SuSE, Debian,
Upgrade to Real Time Linux Target: A MATLAB-Based Graphical Control Environment Thesis Defense by Hai Xu CLEMSON U N I V E R S I T Y Department of Electrical.
Exercise #1: Exploring Open- Source Operating Systems with Virtual Machines J. H. Wang Mar. 9, 2010.
Exploring Suitability of Linux for Embedded Vision Applications Ankit Mathur Mayank Agarwal Mini Project.
Linux Overview Anand Sivasubramaniam Dept. of Computer Science & Eng. The Pennsylvania State University.
Chapter 3 Partitioning Drives using NTFS and FAT32 Prepared by: Khurram N. Shamsi.
Unit - VI. Linux and Real Time: Real Time Tasks Hard and Soft Real Time Tasks Linux Scheduling Latency Kernel Preemption Challenges in Kernel Preemption.
CSNB334 Advanced Operating Systems 3a. Working with the Linux Community Lecturer: Abdul Rahim Ahmad.
Operating System What is an Operating System? A program that acts as an intermediary between a user of a computer and the computer hardware. An operating.
Manage Directories and Files in Linux. 2 Objectives Understand the Filesystem Hierarchy Standard (FHS) Identify File Types in the Linux System Change.
Chapter 1: Kernel Overview. 2 Objectives Review development and history of UNIX and Linux. Clarify the nature and extent of the kernel within the context.
Porting Linux Linux onto the Puppeteer SA1110. The Puppeteer board –SA1110 CPU –SMSC LAN91C96I ethernet –8 Mb Flash Intel 28F320C3 Boot block flash –32.
An Introduction to Device Drivers Ted Baker  Andy Wang COP 5641 / CIS 4930.
Exercise #1: Exploring Open- Source Operating Systems with Virtual Machines J. H. Wang Sep. 25, 2015.
ICOM Noack Linux kernel structure Kernel code structure How it boots itself All the system calls are available System is configured Process handling.
PTA Linux Series Copyright Professional Training Academy, CSIS, University of Limerick, 2006 © Workshop V Files and the File System Part B – File System.
LOGO Linux Installation. Linux Distribution Including shells, libraries, tools, compiler, servers, applications. Redhat, Fedora, Mandrake, SuSE, Debian,
Implementation of Embedded OS Lab3 Porting μC/OS-II.
Linux Kernel Programming (LKP). LKP New sub-course New sub-course We will learn together We will learn together Evaluation of this part of course will.
Copyright © Genetic Computer School 2008 Computer Systems Architecture SA 8- 0 Lesson 8 Secondary Management.
The Linux Operating System R.Bigelow. What is an Operating System An operating system is a collection of programs that manage a computer's resources.
Lab 8 Department of Computer Science and Information Engineering National Taiwan University Lab8 - Root Filesystem 2015/11/10/ 22 1.
User Mode Linux (UML): An overview and experiences. Matthew Grove SLUG Tech Talk Red Hat Europe 12 th January 2007.
졸업 프로젝트 발표 1/74 Trinity Snapshot Boot 날 짜: 팀 명: Trinity
The World Leader in High Performance Signal Processing Solutions Das U-Boot: Blackfin Guts.
IMAGE COMPRESSION AND DECOMPRESSION USING ARM9 SYSTEM Under the guidance of Mrs. B. SATYA SRI DEVI,M.Tech, Assistant Professor By V. KUSUMA KUMARI Roll.
Rebuilding Linux Kernel Dedicated to penguin lovers everywhere 26 September 20161Rebuilding kernel by Visakh M R.
1 Free Electrons. Kernel, drivers and embedded Linux development, consulting, training and support. http//free-electrons.com Embedded Linux system development.
1 Free Electrons. Kernel, drivers and embedded Linux development, consulting, training and support. http//free-electrons.com Free Electrons Linux kernel.
ELC-E - October crosstool-NG
Introduction to Operating Systems Concepts
By Ganesan Alagu Ganesh Feb 26, 2008
Exercise #1: Exploring Open-Source Operating Systems with Virtual Machines J. H. Wang Sep. 20, 2016.
Getting Started with the Kernel
Implementation of Embedded OS
Computer System Laboratory
By Ganesan Alagu Ganesh Feb 21, 2008
LINUX WINDOWS Vs..
UBUNTU INSTALLATION
FreeBSD.
Structure of Unix OS.
Exercise #1: Exploring Open-Source Operating Systems with Virtual Machines J. H. Wang Sep. 19, 2017.
Project 3: An Introduction to File Systems
The PCI bus (Peripheral Component Interconnect ) is the most commonly used peripheral bus on desktops and bigger computers. higher-level bus architectures.
LINUX WINDOWS Vs..
An Introduction to Device Drivers
Operating System Module 1: Linux Installation
Exercise #1: Exploring Open-Source Operating Systems with Virtual Machines J. H. Wang Sep. 21, 2018.
IS3440 Linux Security Unit 7 Securing the Linux Kernel
Project 3: An Introduction to File Systems
Linux Architecture Overview.
Computer System Laboratory
Computer System Laboratory
Presentation transcript:

Porting Linux to the Puppeteer

Getting the kernel source You will need a clean version of the linux kernel source This can be found at or lots of mirror siteswww.kernel.org Probably best not to download the latest version Use the numbering system x.y.z –Even is stable2.4.9, etc –Odd is development 2.3.7, etc

Applying patches Linux is primarily used on Intel Pentium machines However other architectures are supported –alpha, arm, i386, ia64, m86k, mips, mips64, ppc s390, sh, sparc, sparc64 To support other architectures patches need applying to make specific changes to the source

Getting the ARM patches The ARM Linux patches can be found at You need to find the patch that applies to your particular kernel –patch rmk10.gz for –There are specialised patches for specific features The patch must be applied to a clean source tree – in the root of the kernel source –Patch –p1 patch rmk10 Beware of pre patches!

The Linux kernel source In order to configure and port the kernel source you will need to know more about its structure. Drivers acorn atm block cdrom char i2c ……. /usr/src/linux scriptsDocumentation init ipckernel Arch alpha arm i386 ia64 m68k ….. FS adfs affs autofs ext2 fat …… Include Asm-alpha Asm-arm Asm-generic Asm-i386 ……… linux lib mmnet

The arch directories These contain specific code for each port It has –Kernel, lib, mm, boot plus variants and board specifics Lib has optimised code for the hardware –i.e. memcpy, checksums.

Drivers directory Largest amount of code – circa 1.5M The area you are most likely to have to port/maintain Details on buses Categories of device driver –Char, block, net

The include directory This is linked a configure time with architecture dependant subdirectories –For example asm-arm Include/linux for kernel and user apps Beware for some start up code – for example serial port code

Linux/init This has 2 file: version.c and main.c version.c has the version banner at boot time main.c is the architecture independent boot code start_kernel is the primary entry point