Unconventional Linux. Tom spot Callaway

Similar documents
Alternate definition: Instruction Set Architecture (ISA) What is Computer Architecture? Computer Organization. Computer structure: Von Neumann model

Computer Architectures

IT Quick Reference Guides How to Find Your MAC Address

This Unit: Putting It All Together. CIS 501 Computer Architecture. What is Computer Architecture? Sources

This Unit: Putting It All Together. CIS 371 Computer Organization and Design. What is Computer Architecture? Sources

Linux Introduction. Simon COTER Director of Product Management Oracle VM & VirtualBox

This Unit: Putting It All Together. CIS 371 Computer Organization and Design. Sources. What is Computer Architecture?

Unit 11: Putting it All Together: Anatomy of the XBox 360 Game Console

IT 252 Computer Organization and Architecture. Introduction. Chia-Chi Teng

Evolution of CPUs & Memory in Video Game Consoles. Curtis Geiger & Matthew Meehan

Intel Enterprise Solutions

Secondary Arches, enabling Fedora to run everywhere

Computer Architecture

Microprocessors. Microprocessors and rpeanut. Memory. Eric McCreath

Microprocessors and rpeanut. Eric McCreath

First QEMU Users Forum

Parallel Computer Architecture

Linux Everywhere. A look at Linux outside the world of desktops. CIS 191 Spring 2012 Guest Lecture by Philip Peng

Pa-risc 1.1 Architecture And Instruction Set >>>CLICK HERE<<<

Linux and AUTOSAR Vector Informatik Congress, Stuttgart,

Veritas NetBackup Enterprise Server and Server 6.x OS Software Compatibility List

Transitioning from uclibc to musl for embedded development. Embedded Linux Conference 2015 Rich Felker, maintainer, musl libc March 24, 2015

How to enable flash xbox 1

Programming Environments Manual For 32 Bit Implementations Of The Powerpc Architecture

The NetBSD Operating. Overview

Leveraging OpenSPARC. ESA Round Table 2006 on Next Generation Microprocessors for Space Applications EDD

Ps3 Hard Drive Repair Instructions Macbook. Program >>>CLICK HERE<<<

Advanced d Processor Architecture. Computer Systems Laboratory Sungkyunkwan University

CISC / RISC. Complex / Reduced Instruction Set Computers

Introduction to Computing and Systems Architecture

Multithreading: Exploiting Thread-Level Parallelism within a Processor

CISC Attributes. E.g. Pentium is considered a modern CISC processor

Computer Systems and Networks. ECPE 170 Jeff Shafer University of the Pacific. MIPS Assembly

Reduced Instruction Set Computer

Pa-risc Architecture And Instruction Set Reference Manual

Use of Mojo PowerPoint Template. Your name, Title

Ready, Fire, Aim 20 years of hits and misses at Hot Chips

Intel X86 Assembler Instruction Set Opcode Table

Introduction to Embedded Bootloader. Intel SSG/SSD/UEFI

Building and Running an Open-Source Community: The FreeBSD Project. Marshall Kirk McKusick

ELCT 912: Advanced Embedded Systems

Full file at

Multi-core Architectures. Dr. Yingwu Zhu

Von Neumann architecture. The first computers used a single fixed program (like a numeric calculator).

History And Modern Uses Of The Unix Operating System (including embedded devices and mobile phones).


Computer Organization and Design THE HARDWARE/SOFTWARE INTERFACE

An Introduction for Linux Users. Murray Stokely

SMP and ccnuma Multiprocessor Systems. Sharing of Resources in Parallel and Distributed Computing Systems

A Road Map to the Future of Linux in the Enterprise. Timothy D. Witham Lab Director Open Source Development Lab

Adobe flash player 11 for xbox one

Evolution of Computers & Microprocessors. Dr. Cahit Karakuş

Chapter 2. OS Overview

IJRDTM Kailash ISBN No Vol.17 Issue

Linux and Open Source in Samsung

Embedded Systems: Architecture

14-Nov-11. Chapter 5: System Software: Operating Systems and Utility Programs. Learning Objectives. Learning Objectives. Overview

Overview of Embedded Application Development for Intel Architecture

Enterprise Linux vs. Embedded Linux

CSC 170 Introduction to Computers and Their Applications. Computers

Computer Architecture Computer Architecture. Computer Architecture. What is Computer Architecture? Grading

Contents Server Platform Support Matrix... 2

Veritas Storage Foundation Basic - Technical FAQ January 2009

Computer Architecture

Symantec NetBackup PureDisk Compatibility Matrix Created August 26, 2010

Instruction How To Use Laptop As Monitor For Ps3 Windows 8

ISV Support Is Key When Choosing a Server Operating System

Introduction p. 1 Why Linux? p. 2 Embedded Linux Today p. 3 Open Source and the GPL p. 3 Free Versus Freedom p. 4 Standards and Relevant Bodies p.

New Advances in Micro-Processors and computer architectures

Why Parallel Architecture

R packages from a Fedora perspective

URL: Offered by: Should already know: Will learn: 01 1 EE 4720 Computer Architecture

RTOS, Linux & Virtualization Wind River Systems, Inc.

Math 230 Assembly Programming (AKA Computer Organization) Spring MIPS Intro

Session 40 Evaluating Server Options

Nintendo Consoles/Handhelds

Cisco WebEx. What s New in Release ?

ECE 2162 Intro & Trends. Jun Yang Fall 2009

URL: Offered by: Should already know: Will learn: 01 1 EE 4720 Computer Architecture

CONSOLE ARCHITECTURE

Computer Architecture. MIPS Instruction Set Architecture

About EmbeddedCraft. Embedded System Information Portal, regularly publishes. Follow us on

CSCI 402: Computer Architectures. Instructions: Language of the Computer (1) Fengguang Song Department of Computer & Information Science IUPUI

Lab Assignment Each team will independently implement the launch interceptor specification For this assignment, you re writing portable C code

UEFI Plugfest March

Microprocessors, Lecture 1: Introduction to Microprocessors

Chapter 2: Computer-System Structures. Hmm this looks like a Computer System?

Oracle s new M7 SPARC systems push software in silicon optimization

Uniprocessor Computer Architecture Example: Cray T3E

<Insert Picture Here> Linux: The Journey, Milestones, and What s Ahead Edward Screven, Chief Corporate Architect, Oracle

These slides contain projections or other forward-looking statements within the meaning of Section 27A of the Securities Act of 1933, as amended, and

Microsoft Windows Media Center Remote Control Drivers For Windows 7

Introduction to Standards based approach to Server

CIS 90 Introduction to UNIX/Linux

CMSC131. Hardware and Software. Hardware

CMSC131. Hardware and Software

Easy Multicore Programming using MAPS

The Graphics Processing Unit s Past Present and Future. Daniel J. Proctor. April 30, English Merkle

Axway Products. 24 January Supported Platforms

Computer Systems Architecture I. CSE 560M Lecture 10 Prof. Patrick Crowley

Transcription:

Unconventional Linux Tom spot Callaway <tcallawa@redhat.com May 10, 2007

Linux: Not just for x86 anymore Linux around the house Linux in your pocket Non x86 Servers Aurora SPARC Linux Secondary Architectures in Fedora

Architectures Supported in Linux Today Alpha MIPS Argonaut RISC Core (ARC) OpenRISC ARM PA RISC AVR32 PowerPC ColdFire S/390 (31 and 64 bit) ETRAX CRIS SPARC Fujitsu FR V SPARC64 H8 SuperH IA64 x86 M68K x86_64

TiVo: Linux + TV TiVo Digital Video Recorders run a customized version of Linux The first generation models were PPC systems (Series 1) More recent models use Broadcom MIPS64 CPUs (Series 2,3) While TiVo has released the sourcecode for the modifications that it made to Linux, the hardware will not run arbitrary Linux installs. It only boots official TiVo Linux kernels. This has become known as Tivoization, and the GPLv3 drafts have language specifically in them to prevent anyone from using GPL code with hardware in this manner.

Xbox: Not just for Halo anymore The original Xbox was basically a PC, with an Intel Celeron CPU. The Xbox 360 is PPC based. Linux will run on both versions of the Xbox, although it is better supported on the Intel version. xbox linux.org has information about the original Linux Xbox port Why use Linux on an Xbox? It's just a PC with TV output! You can convert an Xbox into a DVR, a web/email unit, or an arcade (MAME) gamestation. Free60.org is the home of the project for Linux on the 360, and they have recently posted a working X driver.

Playstation 3: Linux Friendly The Playstation 3 has a Cell CPU (PowerPC based) and a built in hard drive. Sony's default OS has an option to boot into a different OS, designed specifically for Linux Fedora Core will run on the PS3 with some modifications Why run Linux on it? Its one of the first consumer available systems with the Cell microprocessor. Sony actually encourages games to be written for Linux/PS3!

GameCube: Hacking Nintendo Like most current gaming systems, the Nintendo GameCube has a PPC CPU. Unlike the Playstation 3 or the Xbox 360, the GameCube doesn't have networking built in, so Linux has to be loaded from a memory card. gc linux.org is the homepage for Linux on the GameCube Why run Linux on the GameCube? As a thin client As a multimedia terminal As a tiny PowerPC based server What about the Nintendo Wii? It also uses a PPC CPU, but there is no Linux port for it yet (no one has figured out how to boot it!)

Linksys WRT54G Wireless Routers Linksys released the WRT54G Wireless Router with Linux as its core OS Since that time, some of the models have switched to using VxWorks, but they still sell Linux driven models. The CPU is a Broadcom ARM based processor. Linksys released all of their firmware under the GPL This enabled custom distributions of Linux to be created that were specifically designed to run on the WRT56G

ipod: My apple tastes better with Linux All ipods use an ARM CPU ipod Linux (ipodlinux.org) enables Linux to run on some ipod models Except the ipod Shuffle, which relies solely on an mp3 decoder chip Why? Additional functionality, ogg, video on older models. Rockbox (rockbox.org) also provides a complete open source firmware replacement for ipods and many other audio/video portable devices. Rockbox isn't Linux, they wrote their own mini kernel.

Nokia 880: Tablet PC The Nokia 880 is the newest in Nokia's series of small form factor tablet PCs It uses a TI OMAP ARM CPU. The 880 (like the 700 before it) uses a custom build of Linux. Media Players Web Browser GPS ebooks

IBM Family While many hardware vendors are committed to Linux, IBM has an exceptionally broad range of hardware. All current IBM server classes run Linux and are supported by IBM! IBM servers run on Power (PPC), Cell (PPC) and S390 CPU architectures, in addition to x86 and x86_64.

SGI Itanium Several vendors produce IA64 based systems (Intel, HP), but SGI produces some of the largest NASA has an SGI Altix based Supercomputing cluster (Columbia) with 10,240 IA64 CPUs (20 x 512 CPU units) It runs Linux! SGI's work with the IA64 platform has helped to improve scalability in the Linux 2.6 kernel beyond 1024 CPUs

Sun UltraSPARC T1 In December of 2005, Sun released the UltraSPARC T1 chips (aka Niagara) Designed with 8 cores and 32 threads per socket, the chip performs well on multithreaded integer workloads On March 21, 2006, Sun made the UltraSPARC T1 processor design available under the GNU General Public License via the OpenSPARC project. The published information includes: Verilog source code of the UltraSPARC T1 design; Verification suite and simulation models; ISA specification (UltraSPARC Architecture 2005); Support for Niagara was added to Linux 2.6 in March of 2006

Aurora SPARC Linux A port of Fedora to the SPARC architecture Most 32bit and 64bit SPARC systems are supported Fully supports Sun Niagara systems Not an official Fedora release, yet... Actually older than Fedora! Aurora's first release was a rebuild of Red Hat Linux 7.3

Architecture Support in Fedora In Fedora Core 6, three architectures were supported: x86, x86_64, and ppc While PPC has a userbase, it was by far the smallest of the three. Rather than drop PPC outright, it was decided to come up with a plan for Fedora to empower the community to create and support Secondary Architectures

Disclaimer Many of the details for the Fedora Secondary Architecture plan have not been finalized, or approved by the Fedora Engineering Steering Committee (FESCO) or the Fedora Board. The ideas presented are from early discussions and drafts

A Two Tier System There are two tiers of architectures with Fedora support: Primary Architecture: These are architectures with the majority of the users, the most common architectures. Post F7, these are x86, x86_64. Build failures on these architectures are fatal: no packages push to the repositories if they fail to build for a primary architecture. Secondary Architecture: These are architectures with motivated maintainer teams, and build hardware. Post F7, these are (likely): ppc, sparc, alpha, ia64. Build failures on secondary architectures are not fatal: if packages build for the primary architectures, then they will push to the main repositories. These architectures are secondary only in number of users, not in quality.

Architecture Maintainer Teams Each Secondary Arch will be built and maintained by a team of Architecture Maintainers. Each team will have a lead, who is ultimately responsible for Fedora on that architecture. Each Arch Maintainer Team will be responsible for the following: Receiving notifications of secondary arch build successes and failures Patching packages cleanly such that they build and function correctly on the secondary architecture Notifying package maintainers when changes are made to their packages to support the secondary architecture. Resolving architecture specific bugs filed against packages Holding regular team meetings Meeting target dates for architecture stability, freezes, release candidates, and releases.

Build Environment Secondary Architectures can have buildservers outside of the Red Hat environment. Some Secondary Architectures may leverage Red Hat provided buildsystems, but this is not a requirement, and is not guaranteed. All Package builds will go to the Primary Architecture Builders first Successful builds will then be triggered on all Secondary Architecture Builders Secondary Architecture Builders will report success/failure back to the main Koji infrastructure Builds that fail on the Primary Architecture Builders are not sent to the Secondary Architecture Builders

Community Effort There are already several communities built up around unofficial Fedora ports Alphacore (Fedora on Alpha) Aurora SPARC Linux (Fedora on SPARC) Fedora IA64 The idea is to permit these communities to continue their work officially, as Fedora projects Open doors for new architecture support New architecture designers can create a Fedora port to demonstrate their chip Existing architectures (without Fedora ports) can create one S390 anyone? :)

Consistent Packageset Rather than have each Fedora architecture have a different set of packages, at different version levels, the goal is to enforce a consistent packageset across all Fedora architectures, Primary and Secondary. All packages are generated from the sources and spec files kept in Fedora CVS. Secondary Arch Maintainer teams would get special access to CVS to fix architecture specific bugs, or enable packages to build for their architecture With great power comes great responsibility! Certain packages may be excluded (glibc, kernel) Secondary Architecture specific packages (e.g. Bootloaders) are permitted, but they must live in Fedora CVS and go through the normal package review processes.

Secondary Architecture Milestones Secondary Architectures usually take longer to build than Primary Architectures. Milestones (Freeze Dates, Release Candidate Dates, Release Dates) may be slightly delayed for Secondary Architectures Secondary Architectures are still encouraged to try to meet the Primary Architecture dates, but get an additional buffer period Secondary Architectures that fail to meet major Milestones will be dropped.

Questions?