-
Popular distributions
- CentOS, RedHat, Fedora
- Debian, Ubuntu
- openSUSE
-
An Operating System
- Perform basic tasks:
- Keeping track of files and directories on the disk
- Controlling peripheral devices such as disk drives and printers
- Memory – real and virtual
- Scheduling / Priority + more
- It makes sure that different programs and users running at the same time do not interfere with each other
- Responsible for basic security (file/directory)
-
What is a Kernel
- Core of the O/S
- Software
- The kernel is nontrivial
- All distributions probably use the same kernel
- The software glue
- Interface with hardware devices
- Allocating memory to individual programs
- Allocating CPU time to individual programs
- Enabling programs to interact with each other
- Both Windows (ntoskrnl) and Linux (vmlinuz)
- Unique to each O/S
- Not interchangeable
-
Main components of Linux
- Command-line Shells
- Graphical User Interfaces (GUI)
- Utility Programs
- Libraries
- Productivity Programs
-
Command-line Shells
- Linux started as command-line based
- –Command-line environment uses a shell
- –Many shells available
- bash, csh(C shell), ...
-
Graphical User Interfaces and Desktop Interfaces
- GUI for short
- Icons, menus, mouse interface
- Base for GUI is X Windows System ( X for Short)
- Desktop Interfaces
- GNOME–GNU Object Model Environment
- KDE–K Desktop Environment
- others
- Able to switch between Desktops easily
- Program Launchers
- File manager
- Nautilus default for CentOS / Fedora
- Displays contents of a directory as collection of icons or file names
- Manage files and directories
- –Create files or folders
- –Copy files or folders
- –Delete files or folders
- Window Controls Multiple virtual desktops
- Logout Options
-
Utility Programs
- Wide Variety of Utility programs
- May vary from distribution to distribution
- Calculators, Calendars,
- Text Editors, Disk maintenance tools
- Available through menus on Desktop
- Technical Administration utilities
- Network support etc
- Can download and install others
-
Libraries
- Used mostly by developers (programmers)
- A collection of programming functions for use
- Example:“libc”
- –The term "libc" is commonly used as a shorthand for the "standard C library“
- –a library of standard functions that can be used by all C programs (and sometimes by programs in other languages)
- Many other libraries available
- Some for GUI
- Parsing options
-
Productivity Programs
- Web Browsers
- Office Suite software (Open Office)Word processors, Presentation managers, Database, Spread Sheet etc
-
Investigating User Interfaces
- Text Based
- Command Line
- Login with user name and password
- Uses shell (CentOS / Fedora: BASH)
- Bourne Again Shell
- Command Prompt
- Many commands available
-
Command-line prompt Consists of:
- [root@localhost ~]#
- User name
- Name of computer at which you are working
- Last directory name in current working directory
- $ character for standard user
- # character for root (administrator)
- Parameters–Define what command will operate on
- Options–Alter how command operates
-
pwd
- mv
- cp
- pwd : display current working directory
- mv : move or rename a file
- cp : copy a file
-
mount
- umount
- cd
- mount : mount a device for access
- umount : unmount a resource when finished
- cd : change directories
-
ls
- ls -l
- find
- ls : list the contents of a directory
- ls –l : list the contents of a directory with long format
- find : search for a file or directory name
-
mkdir
- rmdir
- cat
- mkdir : make a directory
- rmdir : remove a directory
- cat : display the contents of a file
-
touch
- ifconfig
- touch : create an empty file
- ifconfig : display the status of your network interfaces
-
Investigating User Interfaces
- Graphical Based
- Modeled off Macintosh
- Two elements separate
- User interface one element
- Operating System separate element
- X Windows System interface
- Run as a user level application (more stable)
- If GUI fails O/S continues – command line
- Not a complete user interface
- Defines how basic object are drawn
- Display windows across a network on another workstation
-
Source code
Compiler
Source code –Programming code human beings use to write software programs
-
Compiler –Software that turns source code into binary code, but does not execute the binary code
-
Translator
- Binary code
- Open source
- Translator –Software that turns source code temporarily into binary code and executes it
- Binary code –Code that machines need to run/understand software programs
- Open source –Freely available source code
-
Linux to Unix
- Linux is modeled after UNIX
- UNIX create in 1969 at AT&T’s Bell Labs
- Many projects
- –Kernel
- –GNU project (open source replacements for all elements of UNIX
- –Xorg-X11
- –Desktops
- –Server programs
- Web servers
- Email servers
- File servers
- User Productivity programs
-
Linus Torvalds
- Decided to create UNIX-like operating system kernel for IBM-compatible PC
- Solicited help via Internet
- Released Linux kernel under GPL
-
Operating Systems have two forms of Kernels
- Monolithic (Linux)
- Provides all services the user application needs
- Used by Linux for the most part
- Micro-Kernel
- Small core set of services
- Other modules perform other functions
- Used by Windows via Executive Services
- Process management
- I/O
- Memory management plus more
|
|