0% found this document useful (0 votes)
84 views

2 - History and Basics of The OS and The File System

The document discusses the basics of operating systems and GNU/Linux. It defines key terms like operating system, kernel, user interface, command line interface, graphical user interface. It also covers the history and development of Linux and concepts like GNU, Linux distributions, kernel space, userland and the filesystem structure.

Uploaded by

frankzii
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
84 views

2 - History and Basics of The OS and The File System

The document discusses the basics of operating systems and GNU/Linux. It defines key terms like operating system, kernel, user interface, command line interface, graphical user interface. It also covers the history and development of Linux and concepts like GNU, Linux distributions, kernel space, userland and the filesystem structure.

Uploaded by

frankzii
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 18

[StuCo 98008]

GNU/Linux for Beginners

Session 2

Operating Systems Fundamentals


Definitions of Important Terms
The GNU/Linux filesystem
By the end of this lecture you will know
● What an operating system is
● The main components of an OS
● The history of GNU/Linux
● What GNU, Linux, distribution all mean.
● The filesystem structure of GNU/Linux
● How to explore the filesystem
An Operating System...
● Provides communication between machines and
humans by:
– Knowing how devices
work (drivers)
– Managing memory and CPU
(to emulate multi-tasking)
– Accepting commands from
humans (through a UI -
user interface)
– Interpreting and passing commands to hardware.
Main Components of Operating Systems
● Kernel – provides hardware management
● User Interface
– Command Line Interface (CLI)
● Bourne Again Shell a.k.a. bash
● DOS command line
– Graphical User Interface (GUI)
● XFree86
● Mac OSX Quartz
● userland n. Anywhere outside the kernel*
* (The Jargon File - http://www.jargon.org)
Source: ftp://ftp.oreilly.com/pub/poster/oreilly_linux_poster.pdf
The Linux kernel
● Started as a fun project by Linus Torvalds in 1991
● Linux 2.4.20: 17750 files, 3,100,000 lines of code
Programming languages used in the Linux kernel *

ansic: 2920896 (94.36%)


asm: 164848 (5.33%)
sh: 3267 (0.11%)
perl: 2273 (0.07%)
yacc: 1575 (0.05%)
cpp: 794 (0.03%)
lex: 748 (0.02%)
tcl: 577 (0.02%)
awk: 251 (0.01%)
lisp: 218 (0.01%)
sed: 79 (0.00%)
*Calculated using David A. Wheeler's 'SLOCCount'
User Interface
Command Line Interface

● The basic input/output mechanism of any UNIX


system.
● Shell – the command interpreter (“command
prompt” in other OSs) – bash, tcsh, csh etc.
● Terminal – a local or remote mechanism that
facilitates some kind of shell.
● Console – the terminal that is provided to the user
that has physical access (e.g. Ctrl-Alt-F1)
Graphical User Interface

● One layer above the CLI.


● GUI can only do what CLI can do, while the
reverse is not necessarily true.
● GUI is based on a “windowing” system, called X.
● X draws basic shapes and handles fonts and colors
only.
● The rest is provided by a window manager, like
KDE, GNOME, WindowMaker, BusyBox etc.
A graphical
depiction

● How a mouse
click is received
by the system...
● Translated to a
shell command...
● Received by the
kernel...
● Executed by the
network card
(Very brief) History of GNU/Linux

1984: 2003:
GNU Project GNU/Linux
started maturity

1970: 1991:
UNIX born in Linux kernel
AT&T Labs created
Protecting Freedom – the GNU GPL
Project commencement 1984 – Richard Stallman

Free Software Foundation founded 1985


GNU General Public License (GPL)


● Uses copyright law against itself


● Grants complete freedom to users, with two

restrictions:
● This software may not be released with

a different license.
● This software may not be incorporated

in non-free software.

Source: http://www.gnu.org/copyleft/gpl.html
The GNU General Public License
Free as in speech, not free as in beer.

● Free to use the program


● Free to study how the program works, and adapt it
to your needs
● Free to redistribute copies to anyone
● Free to improve the program and release the
improvements to the community

Source: http://www.gnu.org/philosophy/free-sw.html
The Free Software Definition
Important Terms
● GNU: The free OS built as an alternative to UNIX
● Linux: The kernel most commonly used with GNU
● Distribution: A pre-packaged collection of
software (e.g. Red Hat Linux, Debian GNU/Linux)
● Kernel space: The memory space used by the
kernel (inaccessible to user applications)
● Userland (or user space): The memory space used
by user applications
● Filesystem: A system to organize the files of an
Operating System
Reading for next week
● “Is Open Source synonymous with Free Software?”
http://www.gnu.org/philosophy/free-software-for-freedom.html

● “The Linux Cookbook” - Shell section


http://www.tldp.org/LDP/linuxcookbook/html/cookbook_5.html#SEC48

You might also like