Colorado Space Grant Symposium

Slides:



Advertisements
Similar presentations
Technology Analysis LINUX Alper Alansal Brian Blumberg Ramank Bharti Taihoon Lee.
Advertisements

GNU / Linux A free operating system. Summary History What can you find on a Linux OS Linux Economy.
LINUX EMBEDDED SYSTEMS TRENDS Steven C. Zupfer 07/15/02.
Linux vs. Windows. Linux  Linux was originally built by Linus Torvalds at the University of Helsinki in  Linux is a Unix-like, Kernal-based, fully.
Transform your desktop with virtualization. 22 Agenda Evolution of VDI VDI Solution VDI Use Cases Questions & Answers.
F2032 Fundamental of OS Chapter 1 Introduction to Operating System Part 4.
COMMERCIAL OFF-THE-SHELF (COTS) Implementation of commercially available technologies for traditionally customized applications Examples: –Military –Industrial.
Linux Introduction. Overview What is Unix/Linux? History of Linux Features Supported Under Linux The future of Linux.
AN INTRODUCTION TO LINUX OPERATING SYSTEM Zihui Han.
Linux Basics CS 302. Outline  What is Unix?  What is Linux?  Virtual Machine.
Learning Outcomes At the end of this lesson, students should be able to: State the types of system software – Operating system – Utility system Describe.
Chapter 4 Operating Systems and File Management. 4 Chapter 4: Operating Systems and File Management 2 Chapter Contents  Section A: Operating System Basics.
Lesson 8 Operating Systems
Windows NT & UNIX. UNIX Benefits: *Equated with Open System Standards The concept of computer industry standards owes much to UNIX. In fact, the term.
The evolution of HR David Woodward Chief Information Officer.
Presented By: Avijit Gupta V. SaiSantosh.
Choosing NOS can be a complex and a difficult decision. Every popular NOS has its strengths and weaknesses. NOS may cost thousands of dollars depending.
The Chameleon Development Environment The Chameleon™ Development Environment Application delivery using Microsoft Excel®
Chapter 4 System Software. Software Programs that tell a computer what to do and how to do it. Sets of instructions telling computers to perform actions.
An Introduction to Linux Name: Haixin Wang ID :
CS 390 Unix Programming Summer Unix Programming - CS 3902 Course Details Online Information Please check.
Embedded OS Options. Operating systems for embedded devices As embedded systems (PDAs, cellphones, point-of-sale devices, VCRs, industrial robot control,
© Paradigm Publishing, Inc. 4-1 Chapter 4 System Software Chapter 4 System Software.
Chapter 1 Basic Concepts of Operating Systems Introduction Software A program is a sequence of instructions that enables the computer to carry.
Silberschatz, Galvin and Gagne ©2011 Operating System Concepts Essentials – 8 th Edition Chapter 2: The Linux System Part 1.
Lesson 10—Networking BASICS1 Networking BASICS The Internet and Its Tools Unit 3 Lesson 10.
COMP1321 Digital Infrastructure Richard Henson March 2016.
1 Get All Answers Get All Answers. Contents History of Android Android Fragmentation The Role of Google Features and Architecture Android Software Development.
CHAPTER 2 COMPUTER SOFTWARE. LEARNING OUTCOMES At the end of this class, students should be able to:  Explain the significance of software  Define and.
Operating System Basics. Outline The User Interface Running Programs Managing Files Managing Hardware Utility Software.
Chapter 2 Operating Systems
READ ME FIRST Use this template to create your Partner datasheet for Azure Stack Foundation. The intent is that this document can be saved to PDF and provided.
INTRO. To I.T Razan N. AlShihabi
Unix Server Consolidation
Introduction to Visual Basic. NET,. NET Framework and Visual Studio
IT320 Operating System Concepts
Linux - computer operating system
Fundamentals of Information Systems, Sixth Edition
Kamalesh Saha University of North Carolina at Charlotte
Agenda:- DevOps Tools Chef Jenkins Puppet Apache Ant Apache Maven Logstash Docker New Relic Gradle Git.
LINUX History In 1984 a project was launched by Richard Stallman to develop a complete Unix-like operating system that would be considered free software.
Operating System & Application Software
IT Architecture Technical blueprint for evolving a corporate infrastructure resource that can be shared by many users and services processing systems hardware.
LINUX WINDOWS Vs..
Selected topic in computer science (1)
Welcome to Linux Chap#1 Hanin Abdulrahman.
Popular Operating System Chapter 8
Computer Software Lecture 5.
Design and Implementation
OPEN SOURCE SOFTWARE (OSS)
The Power Of Generic Infrastructure
LINUX WINDOWS Vs..
VCE IT Theory Slideshows by Mark Kelly study design
Introduction to Computers
5 SYSTEM SOFTWARE CHAPTER
IT Infrastructure: Hardware and Software
System And Application Software
Software Defined Networking (SDN)
Networks Software.
Today’s Business Pain Points
Lesson 8 Operating Systems
Linux: A Product of the Internet
Chapter 2: The Linux System Part 1
5 SYSTEM SOFTWARE CHAPTER
An Introduction to Software Architecture
IT Infrastructure: Hardware and Software
Welcome to Linux Chap#1 Hanin Abdulrahman.
Welcome to Linux Chap#1.
Chapter 2 Applications Software and Operating Systems
Top PHP Development Tools For PHP Developers By: iblinfotech.com iblinfotech.com.
Presentation transcript:

Colorado Space Grant Symposium The Advantages of Linux in Space Cory Maccarrone

What Is Linux? Linux is a free, open source operating system created in April of 1991 by Linus Torvalds at MIT. The project was started in an attempt to bring the power of UNIX to commodity hardware, replacing the simpler OS called Minix. In over ten years, Linux has grown to be an extremely scalable OS, running on everything from wrist-watches to high-end mainframe servers, and supported by industry such as IBM.

The Community Behind Linux At first, Linux was developed and maintained by a closely-knit group of programmers. Over the years, Linux has attracted more and more users and developers, forming a close “community” of supporters. Now, millions use and develop the platform across the world, but remain close through user-maintained support forums, chat lists, and web-sites, ready and willing to provide help for anyone in need.

Software in Space In space-based missions, duration and cost of development are both heavy concerns, influencing decisions project-wide. For example, hardware decisions are made by weighing the costs of COTS hardware versus home-built devices. Some hardware is bought to decrease lead time and save money. Other hardware is made where doing so would cost less and lead to a better product.

Software in Space Most software is not COTS, but developed in-house to provide for the specifics of a mission. Software development is more critically dependent on time than money. To save time, projects often reuse code from previous work, making modifications as needed. This includes the operating system. This is a very safe method of development, leading to stable, tested code, proven across many projects.

Current Development Strategies Surprisingly, Linux has very little experience in space-based applications, serving as ground software for the analysis of data or controlling of satellites. VxWorks, developed by Wind River as an embedded OS, has become the de facto standard used in satellites from academia and industry, and even in the Mars rovers. VxWorks has been around much longer than Linux, so it was able to take the market early on, providing full support for their product in case of a fault.

Exploration of New Possibilities Many space-based organizations have recently opted to take another approach, implementing or replacing their previous solution with Linux. Budgets can be very constraining. VxWorks carries a steep price for its use and support, a price which may prove prohibitive to some. Conversely, Linux carries no cost for use, development, or support. Documentation and an extensive user body exist for any support issues that may come up.

Exploration of New Possibilities Developers feel more comfortable developing in a known environment. Because of its heavy price, VxWorks is not available as a general-use OS for anyone to work with. As a result, new developers need training in its use. In contrast, Linux is taught in many colleges as a part of the standard Computer Science curriculum. As such, developers are more likely to be familiar with this OS and will feel comfortable jumping into it.

Exploration of New Possibilities Hardware Support VxWorks carries a large list of supported hardware, running on most embedded computers. Other boards are typically provided with board support packages (BSPs) to give VxWorks support. Linux, out of the box, supports a wide range of both embedded computers and commodity systems. Modern devices such as USB, firewire, and digital cameras are supported through free libraries. As an example, in the CSGC project DINO, Linux is being used in cooperation with a digital camera suite called GPhoto2 to control two science cameras and an extra tip-mass camera. VxWorks was unable to provide such robust support.

The Hurdles in Migration The use of previous code can be the biggest hurdle in migration to Linux. Previous code is implemented in a substantially different environment, with different (and sometimes incompatible) APIs. Past projects have tested the code over and over, and as a result, the previous base is proven to work as expected. A move to Linux would mean porting over the existing code, or in many cases throwing this code out completely and starting over. This can cost both time and money in the end.

Overcoming the Odds Some of these issues can be eased through use of robust tools available for Linux. Libraries and programs can be used to simplify hardware access and to allow developers to work in a very modular and object-oriented fashion. GLib provides tools to create code 'objects' that can have actions and properties associated with them. This is useful for abstracting, for example, sensors and switches. GPhoto2 is a library supporting over 400 digital cameras. It can be used to automatically take and retrieve pictures, as well as advanced camera operations like zoom and focus.

Overcoming the Odds Commercial software is also available for Linux. ICS distributes a package called SCL (Spacecraft Command Language) for both Linux and VxWorks. This makes projects dependent on this easier to port. Linux carries a huge base of documentation and support. All APIs have been very well documented by both developers and users, and this documentation is freely available across the Internet. The huge community of users and developers provides an extensive support base in which an answer is lots of times an email away.

Overcoming the Odds Linux can ease training needs. Other proprietary systems such as VxWorks have limited areas of market penetration, and as such, incoming developers are less likely to have worked in these environments, leading to an increase in training time and costs. Since Linux is most popular on the desktop and server markets, incoming programmers are more likely to have used and programmed in Linux. Programmers are even more likely to know Linux coming from areas of study in which Linux is taught, such as the modern Computer Science curriculum.

Overcoming the Odds Development tools exist under Linux to aid in rapid programming and debugging. The Linux kernel – the heart of the OS – can be built in a matter of hours using a very friendly menu-driven interface, full of item-by-item help. Projects such as Open Embedded have been created to automate development and deployment of embedded Linux solutions. This project will be used to create the flight system on the DINO satellite project, which utilizes a flight board based on the Intel XScale processor. Open Embedded was designed to make use of this processor.

In Summary In any large project, managers must weigh costs and time in making decisions concerning hardware and software. In software, most organizations have chosen not to move to Linux. Existing code bases would take too long or cost too much to port over, and the mission carries no requirements that conflict with past code.

In Summary Some have decided to make the change towards Linux. New hardware designs and coding styles have warranted the need for a newer, more compatible OS. Decreasing budgets have made proprietary solutions prohibitively costly. Some just want to use Linux for the chance to try something new.

Closing Use of Linux in space is an experiment all in its own. Over time, more and more satellites and spacecraft will use Linux For the DINO project, the move to Linux means greater compatibility for new hardware, and the ability to test new technology in space. Thank you for coming!