SlideShare una empresa de Scribd logo
1 de 27
Linux – An Introduction
Workshop India
Wilson Wingston Sharon
wingston.sharon@gmail.com
The Beginning of Linux
• Finnish UG student : Linus Torvalds

• Decided to write an OS and release his code free for
  anybody to use.

• Used the UNIX and BSD systems for the base of the
  functionality of his OS.

• Received Cooperation through many programmers
  worldwide and spread through the internet.
UNIX
• Researchers needed a standard computing
  framework to help them run their processors.

• Developed in Bell Labs – It was spread through
  universities and schools to educate people on
  how to use it.

• UNIX was very complicated and this enabled the
  students to be comfortable when working with
  UNIX in industries.
Linux as a group effort
• Unix was commercial – It worked only on a few
  machines that were expensive for most users.

• The Linux project incorporated code
  ▫ GNU project (Free software foundation)
  ▫ BSD (Berkeley UNIX)
  ▫ X11 (MIT)

• Developers all over the globe contribute
  ▫ Improvements
  ▫ Bug Fixes
  ▫ Support for devices & platforms
Why Linux?
• Rich selection of free application for any and every
  purpose available. Most of them comparable/superior to
  their proprietary counterparts.

• Peripheral support is extensive and support in linux
  sometimes comes before anywhere else.

• Ported to various Platforms
  ▫   PowerPC (IBM)
  ▫   Apple Machines (MkLinux)
  ▫   MIPS
  ▫   Motorola mobile processors (1st Gen)
The Source code
• Linux follows a philosophy of open and free code.

• Documentation projects and support groups help
  new users share the experience of developing for
  linux.

• This approach made for easy experimentation and
  playing around with a framework.

• All Productive changes would be incorporated in the
  main linux repostitory so as to make it available to
  anyone.
GNU
• Stands for GNUs Not Unix.

• A Free Software Foundation project to write a
  set of free compilers / debuggers / editors for
  various platforms.

• This enabled similar code to run on a variety of
  platforms with minimal effort. Since it was free,
  it was incorporated into Linux.
Why the popularity of Linux?
• Hardware
 ▫ Cost of hardware always decreases.
 ▫ Usage of a hardware required the device drivers to
   be available.
 ▫ Writing new drivers for Linux is the easiest
   solution. (For unavailable devices)
 ▫ Once the drivers were ready, they were
   incorporated into the main source so as to give
   everybody access to it!
Why the popularity of Linux?
• Cost of developing tools
 ▫ Hardware developers rather than developing a
   complete OS for a processor, could simply port
   linux to that platform.
 ▫ Then everything that works in linux will work
   seamlessly reducing cost to a fraction.
 ▫ Driver Maintenance / Bug Fixes and
   improvements contributions from the FOSS
   community.
Why the popularity of Linux?
• Software Developers
 ▫ A consistent software environments that is
   completely machine independent.
 ▫ Every system will have a GNU toolchain to
   compile code for the resident platform!
 ▫ If source distribution is given, the software can be
   distributed in C without worrying about hardware
   support.
GNU – GPL - Copyleft
• GNU General Public License.
• Terms for using Linux
 ▫ You can modify / copy / redistribute the src code
   at no cost provided you do so under the GPL
 ▫ If you get source under the GPL, any changes /
   improvements / spin offs you make to it are also
   under GPL
 ▫ You must always distribute source code + GPL of
   programs that you develop with the help of GPL
   software online.
Language of Linux
• Linux was written completely in C and ASM.

• UNIX (1969) was written in PDP-7 Assembly.
  ▫ This version of UNIX was unportable to new
    hardware.
• Thomson developed B as a machine independent
  language to make UNIX portable.

• Dennis Ritchie rewrote UNIX in C, a language he
  developed from B and concepts from other
  languages.
Why C?
• C was designed as a language for a machine
  independent OS.

• It was a high structured but not High-level language.

• It supported both easy portability, allowed concepts
  like bit manupilation and at the same time had a
  neat – modular framework.

• Linux uses gcc and g++ compilers from GNU to
  compile itself as well as all application within it.
Linux : More than an OS
• Like as OS linux supports
  ▫   Memory Management
  ▫   Device management
  ▫   Task Scheduling
  ▫   User Management
  ▫   And more…

• But it also comes with a set of tools and utilities
  that make life easier for the user/developers.
Overview of Linux
•   Kernel Interface
•   MultiTasking
•   Hierarchical Filesystem
•   A Shell Interpreter for the OS
•   Device independent I/O
•   Inter Process Communication
•   GUI
•   Software Development
Kernel Interface
• Kernel is the Heart of the linux OS.

• Handles all the background OS tasks.
  ▫ Divides system resources
  ▫ Manages memory
  ▫ Gives access to devices

• Kernel abstracts the hardware from the rest of the
  processes.

• Different Hardware need different setup and compiled
  kernels, and all other functionality will be unchanged.
MultiTasking
• Linux was *always* a fully protected
  multitasking OS. (windows 95 was not!)

• Jobs can be run in background, and owned by
  different users – on the same processor.

• Linux manages resource between active
  processes / background processors and keeps in
  sync seamlessly.
Hierarchical filesystem
• Files are kept in directories
• Directories can hold other directories.

• FHS – File system Hierarchy standard defines the
  rules for where certain files will always be kept.

• The “root” of the linux fs is always „/‟

• Files & directories can be owned by users to enforce
  security privilieges.
BASH – the linux Shell system
• Bourne Again Shell
• It acts as an interface between the user and the
  operating system

• Commands / applications can be given to this
  interpreter which can then make the operating
  system do various tasks.

• Commands can be stored in shell scripts for ease
  of access..
Device independent I/O
• All physical devices – monitor, mouse, keyboard
  printer appear as files in the Linux file system
  that are manipulated by the kernel.

• This means that if a program is written to
  manipulate this file, then the kernel will take it
  to mean an action on the physical I/O device.

• This allows for a standard API for I/O in all
  linux systems.
Inter Process Communication
• Different processes have their own memory space in
  RAM.

• Linux provides pipes and filters for IPC.

• A pipe connects two different processes – the input
  of one program to the other program‟s output.

• Filter do some changes on a stream on date between
  two processes. The filters O/P is the I/P to another
  program.
Software Development
• Linux makes it very easy to compile a program of
  any language. (C / C++ / Java / Python / Lisp /
  mono (.net))

• The build tools sometimes have to be installed
  separately.

• A wide range of IDE‟s such a Eclipse, Netbeans
  etc exist for programming purposes.
GUI
• The X window system was developed by MIT
  labs.

• Given a system that an run X, Linux can provide
  a graphical window based management system.

• “Window Management system” Runs under X
  and can be changed easily as per the users
  preferences.
Ubuntu
• Linux is divided into distributions.
• All distributions run on top of the linux kernel.

• Different Distro‟s are exist for taste and
  performance.

• Ubuntu is a Debian based distro designed for both
  laptops and Desktops.

• It focuses a lot on UX while maintaining speed &
  quality of the distro.
Installing Linux
• Linux can be set up on dual boot between any
  version of windows.

• From windows >> computer management >> disk
  management, you‟ll need to un-allocate some HDD
  memory for ubuntu. (10 – 30GB)

• Then make an ubuntu DVD and boot into that DVD.

• Ubuntu automatically detects the free space and
  Windows and puts itself cleanly inside.

Más contenido relacionado

La actualidad más candente

Embedded Linux from Scratch to Yocto
Embedded Linux from Scratch to YoctoEmbedded Linux from Scratch to Yocto
Embedded Linux from Scratch to YoctoSherif Mousa
 
Course 101: Lecture 1: Introduction to Embedded Systems
Course 101: Lecture 1: Introduction to Embedded SystemsCourse 101: Lecture 1: Introduction to Embedded Systems
Course 101: Lecture 1: Introduction to Embedded SystemsAhmed El-Arabawy
 
Building Embedded Linux Systems Introduction
Building Embedded Linux Systems IntroductionBuilding Embedded Linux Systems Introduction
Building Embedded Linux Systems IntroductionSherif Mousa
 
Embedded Linux System Overview : Tonex Training
Embedded Linux System Overview : Tonex TrainingEmbedded Linux System Overview : Tonex Training
Embedded Linux System Overview : Tonex TrainingBryan Len
 
Introduction to Linux basic
Introduction to Linux basicIntroduction to Linux basic
Introduction to Linux basicf114n
 
Introduction to Embedded Linux
Introduction to Embedded LinuxIntroduction to Embedded Linux
Introduction to Embedded LinuxHossain Reja
 
Linux Embedded System
Linux Embedded SystemLinux Embedded System
Linux Embedded SystemAjmaineKhan
 
The Future of the Operating System - Keynote LinuxCon 2015
The Future of the Operating System -  Keynote LinuxCon 2015The Future of the Operating System -  Keynote LinuxCon 2015
The Future of the Operating System - Keynote LinuxCon 2015Steven Francia
 
Building Embedded Linux
Building Embedded LinuxBuilding Embedded Linux
Building Embedded LinuxSherif Mousa
 
Embedded Os [Linux & Co.]
Embedded Os [Linux & Co.]Embedded Os [Linux & Co.]
Embedded Os [Linux & Co.]Ionela
 
Introducing linux: a short expedition to the debian environment
Introducing linux: a short expedition to the debian environmentIntroducing linux: a short expedition to the debian environment
Introducing linux: a short expedition to the debian environmentMd. Zahid Hossain Shoeb
 
Useful Open Source Software
Useful Open Source SoftwareUseful Open Source Software
Useful Open Source Softwarepramoddps
 
Hillel kobrovski Linux security overview for ciso
Hillel kobrovski   Linux security overview for cisoHillel kobrovski   Linux security overview for ciso
Hillel kobrovski Linux security overview for cisoHillel Kobrovski
 
Introduction to linux
Introduction to linuxIntroduction to linux
Introduction to linuxLuis Terron
 
Course 101: Lecture 6: Installing Ubuntu
Course 101: Lecture 6: Installing Ubuntu Course 101: Lecture 6: Installing Ubuntu
Course 101: Lecture 6: Installing Ubuntu Ahmed El-Arabawy
 

La actualidad más candente (20)

Embedded Linux from Scratch to Yocto
Embedded Linux from Scratch to YoctoEmbedded Linux from Scratch to Yocto
Embedded Linux from Scratch to Yocto
 
Course 101: Lecture 1: Introduction to Embedded Systems
Course 101: Lecture 1: Introduction to Embedded SystemsCourse 101: Lecture 1: Introduction to Embedded Systems
Course 101: Lecture 1: Introduction to Embedded Systems
 
Building Embedded Linux Systems Introduction
Building Embedded Linux Systems IntroductionBuilding Embedded Linux Systems Introduction
Building Embedded Linux Systems Introduction
 
Embedded Linux System Overview : Tonex Training
Embedded Linux System Overview : Tonex TrainingEmbedded Linux System Overview : Tonex Training
Embedded Linux System Overview : Tonex Training
 
Introduction to Linux basic
Introduction to Linux basicIntroduction to Linux basic
Introduction to Linux basic
 
Introduction to Embedded Linux
Introduction to Embedded LinuxIntroduction to Embedded Linux
Introduction to Embedded Linux
 
Linux Embedded System
Linux Embedded SystemLinux Embedded System
Linux Embedded System
 
Linux introduction
Linux introductionLinux introduction
Linux introduction
 
The Future of the Operating System - Keynote LinuxCon 2015
The Future of the Operating System -  Keynote LinuxCon 2015The Future of the Operating System -  Keynote LinuxCon 2015
The Future of the Operating System - Keynote LinuxCon 2015
 
Linux for everyone
Linux for everyoneLinux for everyone
Linux for everyone
 
Building Embedded Linux
Building Embedded LinuxBuilding Embedded Linux
Building Embedded Linux
 
Embedded Os [Linux & Co.]
Embedded Os [Linux & Co.]Embedded Os [Linux & Co.]
Embedded Os [Linux & Co.]
 
Linux Kernel - An Engineering marvel
Linux Kernel - An Engineering marvelLinux Kernel - An Engineering marvel
Linux Kernel - An Engineering marvel
 
Introducing linux: a short expedition to the debian environment
Introducing linux: a short expedition to the debian environmentIntroducing linux: a short expedition to the debian environment
Introducing linux: a short expedition to the debian environment
 
Embedded Linux On A R M
Embedded  Linux On  A R MEmbedded  Linux On  A R M
Embedded Linux On A R M
 
Useful Open Source Software
Useful Open Source SoftwareUseful Open Source Software
Useful Open Source Software
 
Hillel kobrovski Linux security overview for ciso
Hillel kobrovski   Linux security overview for cisoHillel kobrovski   Linux security overview for ciso
Hillel kobrovski Linux security overview for ciso
 
Introduction to linux
Introduction to linuxIntroduction to linux
Introduction to linux
 
Course 101: Lecture 6: Installing Ubuntu
Course 101: Lecture 6: Installing Ubuntu Course 101: Lecture 6: Installing Ubuntu
Course 101: Lecture 6: Installing Ubuntu
 
Intro to linux
Intro to linux Intro to linux
Intro to linux
 

Destacado

PS3活用術~linuxを入れてみよう~
PS3活用術~linuxを入れてみよう~PS3活用術~linuxを入れてみよう~
PS3活用術~linuxを入れてみよう~Takaki Yoneyama
 
Windows Operating System
Windows Operating SystemWindows Operating System
Windows Operating SystemTarun Nayak
 
Presentation1 linux os
Presentation1 linux osPresentation1 linux os
Presentation1 linux osjoycoronado
 
Presentation Introduction to Windows
Presentation  Introduction to  WindowsPresentation  Introduction to  Windows
Presentation Introduction to WindowsMJ Ferdous
 
Evolution of Microsoft windows operating systems
Evolution of Microsoft windows operating systemsEvolution of Microsoft windows operating systems
Evolution of Microsoft windows operating systemsSai praveen Seva
 
Types of Operating System
Types of Operating SystemTypes of Operating System
Types of Operating SystemHemant Raj
 
types of operating system
types of operating systemtypes of operating system
types of operating systemMahira Rashdi
 
An Introduction to Linux
An Introduction to LinuxAn Introduction to Linux
An Introduction to Linuxanandvaidya
 
Operating system.ppt (1)
Operating system.ppt (1)Operating system.ppt (1)
Operating system.ppt (1)Vaibhav Bajaj
 
Windows series operating system
Windows series operating systemWindows series operating system
Windows series operating systemUmmara Khan
 
Linux.ppt
Linux.ppt Linux.ppt
Linux.ppt onu9
 
Operating system overview concepts ppt
Operating system overview concepts pptOperating system overview concepts ppt
Operating system overview concepts pptRajendraPrasad Alladi
 

Destacado (16)

PS3活用術~linuxを入れてみよう~
PS3活用術~linuxを入れてみよう~PS3活用術~linuxを入れてみよう~
PS3活用術~linuxを入れてみよう~
 
Linux Introduction
Linux IntroductionLinux Introduction
Linux Introduction
 
Windows Operating System
Windows Operating SystemWindows Operating System
Windows Operating System
 
Presentation1 linux os
Presentation1 linux osPresentation1 linux os
Presentation1 linux os
 
Presentation Introduction to Windows
Presentation  Introduction to  WindowsPresentation  Introduction to  Windows
Presentation Introduction to Windows
 
Evolution of Microsoft windows operating systems
Evolution of Microsoft windows operating systemsEvolution of Microsoft windows operating systems
Evolution of Microsoft windows operating systems
 
Types of Operating System
Types of Operating SystemTypes of Operating System
Types of Operating System
 
types of operating system
types of operating systemtypes of operating system
types of operating system
 
An Introduction to Linux
An Introduction to LinuxAn Introduction to Linux
An Introduction to Linux
 
Introduction to Linux
Introduction to LinuxIntroduction to Linux
Introduction to Linux
 
Types of operating system
Types of operating systemTypes of operating system
Types of operating system
 
Operating system.ppt (1)
Operating system.ppt (1)Operating system.ppt (1)
Operating system.ppt (1)
 
Windows series operating system
Windows series operating systemWindows series operating system
Windows series operating system
 
Linux.ppt
Linux.ppt Linux.ppt
Linux.ppt
 
Presentation on operating system
 Presentation on operating system Presentation on operating system
Presentation on operating system
 
Operating system overview concepts ppt
Operating system overview concepts pptOperating system overview concepts ppt
Operating system overview concepts ppt
 

Similar a Linux – an introduction

Basics of Linux
Basics of LinuxBasics of Linux
Basics of LinuxNayan Seth
 
Overview on Open Source Technology.pptx
Overview on Open Source Technology.pptxOverview on Open Source Technology.pptx
Overview on Open Source Technology.pptxDrRShaliniVISTAS
 
Linux [2005]
Linux [2005]Linux [2005]
Linux [2005]Raul Soto
 
01 linux history overview
01 linux history overview01 linux history overview
01 linux history overviewShay Cohen
 
Course 101: Lecture 5: Linux & GNU
Course 101: Lecture 5: Linux & GNU Course 101: Lecture 5: Linux & GNU
Course 101: Lecture 5: Linux & GNU Ahmed El-Arabawy
 
Embedded Systems: Lecture 6: Linux & GNU
Embedded Systems: Lecture 6: Linux & GNUEmbedded Systems: Lecture 6: Linux & GNU
Embedded Systems: Lecture 6: Linux & GNUAhmed El-Arabawy
 
Chapter 1 - Introduction to Operating System.pptx
Chapter 1 - Introduction to Operating System.pptxChapter 1 - Introduction to Operating System.pptx
Chapter 1 - Introduction to Operating System.pptxgowthamiv26
 
introductiontolinuxpptbatch2-141025005514-conversion-gate01 (1).pdf
introductiontolinuxpptbatch2-141025005514-conversion-gate01 (1).pdfintroductiontolinuxpptbatch2-141025005514-conversion-gate01 (1).pdf
introductiontolinuxpptbatch2-141025005514-conversion-gate01 (1).pdfEidTahir
 
Linux for embedded_systems
Linux for embedded_systemsLinux for embedded_systems
Linux for embedded_systemsVandana Salve
 
Introduction, Features, Basic Commands and Distribution of LINUX
Introduction, Features, Basic Commands and Distribution of LINUXIntroduction, Features, Basic Commands and Distribution of LINUX
Introduction, Features, Basic Commands and Distribution of LINUXDeeksha Verma
 
Introduction to linux ppt
Introduction to linux pptIntroduction to linux ppt
Introduction to linux pptOmi Vichare
 
Open Source Software
Open Source Software Open Source Software
Open Source Software Ali Yavari
 
linux operating system.pptx
linux operating system.pptxlinux operating system.pptx
linux operating system.pptxKailash510466
 
605 open source applications
605 open source applications605 open source applications
605 open source applicationsewhitt17
 

Similar a Linux – an introduction (20)

Linux forensics
Linux forensicsLinux forensics
Linux forensics
 
Basics of Linux
Basics of LinuxBasics of Linux
Basics of Linux
 
Linux concept workshop
Linux concept workshopLinux concept workshop
Linux concept workshop
 
Overview on Open Source Technology.pptx
Overview on Open Source Technology.pptxOverview on Open Source Technology.pptx
Overview on Open Source Technology.pptx
 
Linux basics
Linux basicsLinux basics
Linux basics
 
Linux [2005]
Linux [2005]Linux [2005]
Linux [2005]
 
01 linux history overview
01 linux history overview01 linux history overview
01 linux history overview
 
Course 101: Lecture 5: Linux & GNU
Course 101: Lecture 5: Linux & GNU Course 101: Lecture 5: Linux & GNU
Course 101: Lecture 5: Linux & GNU
 
Embedded Systems: Lecture 6: Linux & GNU
Embedded Systems: Lecture 6: Linux & GNUEmbedded Systems: Lecture 6: Linux & GNU
Embedded Systems: Lecture 6: Linux & GNU
 
Chapter 1 - Introduction to Operating System.pptx
Chapter 1 - Introduction to Operating System.pptxChapter 1 - Introduction to Operating System.pptx
Chapter 1 - Introduction to Operating System.pptx
 
introductiontolinuxpptbatch2-141025005514-conversion-gate01 (1).pdf
introductiontolinuxpptbatch2-141025005514-conversion-gate01 (1).pdfintroductiontolinuxpptbatch2-141025005514-conversion-gate01 (1).pdf
introductiontolinuxpptbatch2-141025005514-conversion-gate01 (1).pdf
 
Linux for embedded_systems
Linux for embedded_systemsLinux for embedded_systems
Linux for embedded_systems
 
Introduction, Features, Basic Commands and Distribution of LINUX
Introduction, Features, Basic Commands and Distribution of LINUXIntroduction, Features, Basic Commands and Distribution of LINUX
Introduction, Features, Basic Commands and Distribution of LINUX
 
Introduction to linux ppt
Introduction to linux pptIntroduction to linux ppt
Introduction to linux ppt
 
Open Source Software
Open Source Software Open Source Software
Open Source Software
 
Licão 01 introduction
Licão 01 introductionLicão 01 introduction
Licão 01 introduction
 
Linux - Introductions to Linux Operating System
Linux - Introductions to Linux Operating SystemLinux - Introductions to Linux Operating System
Linux - Introductions to Linux Operating System
 
linux operating system.pptx
linux operating system.pptxlinux operating system.pptx
linux operating system.pptx
 
605 open source applications
605 open source applications605 open source applications
605 open source applications
 
Linux
LinuxLinux
Linux
 

Más de Wingston

OpenCV @ Droidcon 2012
OpenCV @ Droidcon 2012OpenCV @ Droidcon 2012
OpenCV @ Droidcon 2012Wingston
 
05 content providers - Android
05   content providers - Android05   content providers - Android
05 content providers - AndroidWingston
 
04 activities - Android
04   activities - Android04   activities - Android
04 activities - AndroidWingston
 
03 layouts & ui design - Android
03   layouts & ui design - Android03   layouts & ui design - Android
03 layouts & ui design - AndroidWingston
 
02 hello world - Android
02   hello world - Android02   hello world - Android
02 hello world - AndroidWingston
 
OpenCV with android
OpenCV with androidOpenCV with android
OpenCV with androidWingston
 
C game programming - SDL
C game programming - SDLC game programming - SDL
C game programming - SDLWingston
 
C programming - Pointers
C programming - PointersC programming - Pointers
C programming - PointersWingston
 
Introduction to Basic C programming 02
Introduction to Basic C programming 02Introduction to Basic C programming 02
Introduction to Basic C programming 02Wingston
 
Introduction to Basic C programming 01
Introduction to Basic C programming 01Introduction to Basic C programming 01
Introduction to Basic C programming 01Wingston
 
04 Arduino Peripheral Interfacing
04   Arduino Peripheral Interfacing04   Arduino Peripheral Interfacing
04 Arduino Peripheral InterfacingWingston
 
03 analogue anrduino fundamentals
03   analogue anrduino fundamentals03   analogue anrduino fundamentals
03 analogue anrduino fundamentalsWingston
 
02 General Purpose Input - Output on the Arduino
02   General Purpose Input -  Output on the Arduino02   General Purpose Input -  Output on the Arduino
02 General Purpose Input - Output on the ArduinoWingston
 
Introduction to the Arduino
Introduction to the ArduinoIntroduction to the Arduino
Introduction to the ArduinoWingston
 
4.content mgmt
4.content mgmt4.content mgmt
4.content mgmtWingston
 
8 Web Practices for Drupal
8  Web Practices for Drupal8  Web Practices for Drupal
8 Web Practices for DrupalWingston
 
7 Theming in Drupal
7 Theming in Drupal7 Theming in Drupal
7 Theming in DrupalWingston
 
6 Special Howtos for Drupal
6 Special Howtos for Drupal6 Special Howtos for Drupal
6 Special Howtos for DrupalWingston
 
5 User Mgmt in Drupal
5 User Mgmt in Drupal5 User Mgmt in Drupal
5 User Mgmt in DrupalWingston
 
3 Configuring Drupal
3 Configuring Drupal3 Configuring Drupal
3 Configuring DrupalWingston
 

Más de Wingston (20)

OpenCV @ Droidcon 2012
OpenCV @ Droidcon 2012OpenCV @ Droidcon 2012
OpenCV @ Droidcon 2012
 
05 content providers - Android
05   content providers - Android05   content providers - Android
05 content providers - Android
 
04 activities - Android
04   activities - Android04   activities - Android
04 activities - Android
 
03 layouts & ui design - Android
03   layouts & ui design - Android03   layouts & ui design - Android
03 layouts & ui design - Android
 
02 hello world - Android
02   hello world - Android02   hello world - Android
02 hello world - Android
 
OpenCV with android
OpenCV with androidOpenCV with android
OpenCV with android
 
C game programming - SDL
C game programming - SDLC game programming - SDL
C game programming - SDL
 
C programming - Pointers
C programming - PointersC programming - Pointers
C programming - Pointers
 
Introduction to Basic C programming 02
Introduction to Basic C programming 02Introduction to Basic C programming 02
Introduction to Basic C programming 02
 
Introduction to Basic C programming 01
Introduction to Basic C programming 01Introduction to Basic C programming 01
Introduction to Basic C programming 01
 
04 Arduino Peripheral Interfacing
04   Arduino Peripheral Interfacing04   Arduino Peripheral Interfacing
04 Arduino Peripheral Interfacing
 
03 analogue anrduino fundamentals
03   analogue anrduino fundamentals03   analogue anrduino fundamentals
03 analogue anrduino fundamentals
 
02 General Purpose Input - Output on the Arduino
02   General Purpose Input -  Output on the Arduino02   General Purpose Input -  Output on the Arduino
02 General Purpose Input - Output on the Arduino
 
Introduction to the Arduino
Introduction to the ArduinoIntroduction to the Arduino
Introduction to the Arduino
 
4.content mgmt
4.content mgmt4.content mgmt
4.content mgmt
 
8 Web Practices for Drupal
8  Web Practices for Drupal8  Web Practices for Drupal
8 Web Practices for Drupal
 
7 Theming in Drupal
7 Theming in Drupal7 Theming in Drupal
7 Theming in Drupal
 
6 Special Howtos for Drupal
6 Special Howtos for Drupal6 Special Howtos for Drupal
6 Special Howtos for Drupal
 
5 User Mgmt in Drupal
5 User Mgmt in Drupal5 User Mgmt in Drupal
5 User Mgmt in Drupal
 
3 Configuring Drupal
3 Configuring Drupal3 Configuring Drupal
3 Configuring Drupal
 

Último

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 

Último (20)

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 

Linux – an introduction

  • 1. Linux – An Introduction Workshop India Wilson Wingston Sharon wingston.sharon@gmail.com
  • 2. The Beginning of Linux • Finnish UG student : Linus Torvalds • Decided to write an OS and release his code free for anybody to use. • Used the UNIX and BSD systems for the base of the functionality of his OS. • Received Cooperation through many programmers worldwide and spread through the internet.
  • 3. UNIX • Researchers needed a standard computing framework to help them run their processors. • Developed in Bell Labs – It was spread through universities and schools to educate people on how to use it. • UNIX was very complicated and this enabled the students to be comfortable when working with UNIX in industries.
  • 4. Linux as a group effort • Unix was commercial – It worked only on a few machines that were expensive for most users. • The Linux project incorporated code ▫ GNU project (Free software foundation) ▫ BSD (Berkeley UNIX) ▫ X11 (MIT) • Developers all over the globe contribute ▫ Improvements ▫ Bug Fixes ▫ Support for devices & platforms
  • 5. Why Linux? • Rich selection of free application for any and every purpose available. Most of them comparable/superior to their proprietary counterparts. • Peripheral support is extensive and support in linux sometimes comes before anywhere else. • Ported to various Platforms ▫ PowerPC (IBM) ▫ Apple Machines (MkLinux) ▫ MIPS ▫ Motorola mobile processors (1st Gen)
  • 6. The Source code • Linux follows a philosophy of open and free code. • Documentation projects and support groups help new users share the experience of developing for linux. • This approach made for easy experimentation and playing around with a framework. • All Productive changes would be incorporated in the main linux repostitory so as to make it available to anyone.
  • 7. GNU • Stands for GNUs Not Unix. • A Free Software Foundation project to write a set of free compilers / debuggers / editors for various platforms. • This enabled similar code to run on a variety of platforms with minimal effort. Since it was free, it was incorporated into Linux.
  • 8. Why the popularity of Linux? • Hardware ▫ Cost of hardware always decreases. ▫ Usage of a hardware required the device drivers to be available. ▫ Writing new drivers for Linux is the easiest solution. (For unavailable devices) ▫ Once the drivers were ready, they were incorporated into the main source so as to give everybody access to it!
  • 9. Why the popularity of Linux? • Cost of developing tools ▫ Hardware developers rather than developing a complete OS for a processor, could simply port linux to that platform. ▫ Then everything that works in linux will work seamlessly reducing cost to a fraction. ▫ Driver Maintenance / Bug Fixes and improvements contributions from the FOSS community.
  • 10. Why the popularity of Linux? • Software Developers ▫ A consistent software environments that is completely machine independent. ▫ Every system will have a GNU toolchain to compile code for the resident platform! ▫ If source distribution is given, the software can be distributed in C without worrying about hardware support.
  • 11. GNU – GPL - Copyleft • GNU General Public License. • Terms for using Linux ▫ You can modify / copy / redistribute the src code at no cost provided you do so under the GPL ▫ If you get source under the GPL, any changes / improvements / spin offs you make to it are also under GPL ▫ You must always distribute source code + GPL of programs that you develop with the help of GPL software online.
  • 12. Language of Linux • Linux was written completely in C and ASM. • UNIX (1969) was written in PDP-7 Assembly. ▫ This version of UNIX was unportable to new hardware. • Thomson developed B as a machine independent language to make UNIX portable. • Dennis Ritchie rewrote UNIX in C, a language he developed from B and concepts from other languages.
  • 13. Why C? • C was designed as a language for a machine independent OS. • It was a high structured but not High-level language. • It supported both easy portability, allowed concepts like bit manupilation and at the same time had a neat – modular framework. • Linux uses gcc and g++ compilers from GNU to compile itself as well as all application within it.
  • 14. Linux : More than an OS • Like as OS linux supports ▫ Memory Management ▫ Device management ▫ Task Scheduling ▫ User Management ▫ And more… • But it also comes with a set of tools and utilities that make life easier for the user/developers.
  • 15. Overview of Linux • Kernel Interface • MultiTasking • Hierarchical Filesystem • A Shell Interpreter for the OS • Device independent I/O • Inter Process Communication • GUI • Software Development
  • 16. Kernel Interface • Kernel is the Heart of the linux OS. • Handles all the background OS tasks. ▫ Divides system resources ▫ Manages memory ▫ Gives access to devices • Kernel abstracts the hardware from the rest of the processes. • Different Hardware need different setup and compiled kernels, and all other functionality will be unchanged.
  • 17.
  • 18. MultiTasking • Linux was *always* a fully protected multitasking OS. (windows 95 was not!) • Jobs can be run in background, and owned by different users – on the same processor. • Linux manages resource between active processes / background processors and keeps in sync seamlessly.
  • 19. Hierarchical filesystem • Files are kept in directories • Directories can hold other directories. • FHS – File system Hierarchy standard defines the rules for where certain files will always be kept. • The “root” of the linux fs is always „/‟ • Files & directories can be owned by users to enforce security privilieges.
  • 20.
  • 21. BASH – the linux Shell system • Bourne Again Shell • It acts as an interface between the user and the operating system • Commands / applications can be given to this interpreter which can then make the operating system do various tasks. • Commands can be stored in shell scripts for ease of access..
  • 22. Device independent I/O • All physical devices – monitor, mouse, keyboard printer appear as files in the Linux file system that are manipulated by the kernel. • This means that if a program is written to manipulate this file, then the kernel will take it to mean an action on the physical I/O device. • This allows for a standard API for I/O in all linux systems.
  • 23. Inter Process Communication • Different processes have their own memory space in RAM. • Linux provides pipes and filters for IPC. • A pipe connects two different processes – the input of one program to the other program‟s output. • Filter do some changes on a stream on date between two processes. The filters O/P is the I/P to another program.
  • 24. Software Development • Linux makes it very easy to compile a program of any language. (C / C++ / Java / Python / Lisp / mono (.net)) • The build tools sometimes have to be installed separately. • A wide range of IDE‟s such a Eclipse, Netbeans etc exist for programming purposes.
  • 25. GUI • The X window system was developed by MIT labs. • Given a system that an run X, Linux can provide a graphical window based management system. • “Window Management system” Runs under X and can be changed easily as per the users preferences.
  • 26. Ubuntu • Linux is divided into distributions. • All distributions run on top of the linux kernel. • Different Distro‟s are exist for taste and performance. • Ubuntu is a Debian based distro designed for both laptops and Desktops. • It focuses a lot on UX while maintaining speed & quality of the distro.
  • 27. Installing Linux • Linux can be set up on dual boot between any version of windows. • From windows >> computer management >> disk management, you‟ll need to un-allocate some HDD memory for ubuntu. (10 – 30GB) • Then make an ubuntu DVD and boot into that DVD. • Ubuntu automatically detects the free space and Windows and puts itself cleanly inside.