320 likes | 339 Views
Open Source Operating System نظم تشغيل مفتوحة المصدر Lecture (1). Dr.Samah Mohammed. Objectives. What is an Operating System? History of Linux Features Supported Under Linux The future of Linux Why Linux Architecture of the Linux Operating System Linux Distributions Red Hat OS.
E N D
Open Source Operating Systemنظم تشغيل مفتوحة المصدرLecture (1) Dr.Samah Mohammed
Objectives • What is an Operating System? • History of Linux • Features Supported Under Linux • The future of Linux • Why Linux • Architecture of the Linux Operating System • Linux Distributions • Red Hat OS
WhatisanOperatingSystem • An operating system is the software that provides the interface between the hardware of a computer system and the applications programs that are used on it.
Source code • Source code is the code written by the computer programmers to “translated ” by compilers to “instruct” a computer to carry out certain functions and actions.
Before Linux • In 80’s, Microsoft’s DOS was the dominated OS for PC • Apple MAC was better, but expensive • UNIX was much better, but much, much more expensive. Only for minicomputer for commercial applications • People was looking for a UNIX based system, which is cheaper and can run on PC • Both DOS, MAC and UNIX were proprietary, i.e., the source code of their kernel is protected • No modification is possible without paying high license fees
Beginning of Linux • A famous professor Andrew Tanenbaum developed Minix, a simplified version of UNIX that runs on PC • Minix is for class teaching only. No intention for commercial use • In Sept 1991, Linus Torvalds, a second year student of Computer Science at the University of Helsinki, developed the preliminary kernel of Linux, known as Linux version 0.0.1
Linux Today • Linux has been used for many computing platforms • PC, Supercomputer,… • Not only character user interface but graphical user interface is available • Commercial vendors moved in Linux itself to provide freely distributed code. They make their money by compiling up various software and gathering them in a distributable format • Red Hat, Slackware, etc
Linux - free software • Free software, as defined by the FSF (Free Software Foundation), is a "matter of liberty, not price." To qualify as free software by FSF standards, you must be able to: • Run the program for any purpose you want to, rather than be restricted in what you can use it for. • View the program's source code. • Study the program's source code and modify it if you need to. • Share the program with others. • Improve the program and release those improvements so that others can use them.
Why Linux • Linux is a complete operating system: • stable - the crash of an application is much less likely to bring down the OS under Linux. • Reliable - Linux servers are often up for hundreds of days compared with the regular reboots required with a Windows system. • extremely powerful • Linux provides a complete development environment.
Why Linux (continued) • Excellent networking facilities • Ideal environment to run servers such as a web server, or an ftp server. • A wide variety of commercial software is available if not satisfied by the free software • Easily upgradeable. • Supports multiple processors. • True multi-tasking, multi-user OS. • An excellent window system called X, the equivalent of Windows but much more flexible. • Full source code is provided and free.
Architecture of the Linux Operating System • - Surrounding the kernel and acting as a user interface to the Unix operating system • - Command language interpreter • - Interprets the command users enter • - Selects and runs the command or program • - Provides the results to the screen or file as • directed by the command • C shell, Bourne shell, Korn shell offering additional functionality to the operating system Tools and applications shell • The main part of operating system, and responsible for controlling system resources. • Loaded into memory when the system boots • Process control and scheduling • Memory management • Device I/O • System error handling • User programs requesting services from the kernel through system calls • Hardware devices getting kernel response through interrupts kernel
The Linux System • The Linux system excel in many area, ranging from end user concerns such as stability, speed, ease of use, to serious concerns such as development and networking. • Linux kernel • Linux networking • Linux file system
Linux Kernel • The kernel is the central nervous system of Linux, include OS code which runs the whole computer. It provides resources to all other programs that you run under Linux, and manages all other programs as they run. • The kernel includes the code that performs certain specialized tasks, including TCP/IP networking. • The kernel design is modular, so that the actual OS code is very small to be able to load when it needs, and then free the memory afterwards, thus the kernel remains small and fast and highly extensible.
Linux Networking • Networking comes naturally to Linux. In a real sense, Linux is a product of the Internet or World Wide Web (www). • Linux is made for networking. Probably all networking protocols in use on the Internet are native to Unix and/or Linux. A large part of the Web is running on Linux boxes.
Linux File System • Linux has an hierarchical, unified file system • Supports 256-character filenames. • All command line entries are case sensitive. • Use the slash(/) rather than the backslash(\) you have been using in DOS.
Types of File • Ordinary files • text files • data files • command text files • executable files • Directories • links • rather than having multiple copies of a file, Linux uses linking to one file to save disk space. • special device files
Linux vs. Unix • Linux is free, but Unix is not. • Unix is compatible with Linux at the system call level, meaning most programs written for either Unix or Linux can be recompiled to run on the other system with a minimum of work. But Linux will run faster than Unix on the same hardware.
Linux vs. Microsoft Windows • Both offer some of the graphics capabilities and include some networking capabilities. But Linux networking is excellent. • Linux is multi-user, multi-tasking, but Microsoft Windows doesn’t support it.
Linux vs. Windows NT • Linux needs 2MB RAM to try out, while NT needs 12 MB • Linux needs at least 15 MB disk space, while NT needs 70 MB at least. • Both system support multitasking • Both system support multiprocessing. • Both system support dynamic cache. • Linux has full multi user support. Local users, modem users, and network users can all simultaneously run text and graphics programs. This is a powerful feature for business environments that is unmatched by NT.
Linux Distributions • Today there are hundreds of different distributions available popular Linux distributions include ■ SUSE Linux ■ TurboLinux ■ Fedora Linux ■ Mandrake Linux ■ Red Hat Enterprise Linux ■ Lycoris Linux ■ Debian Linux ■ CentOS ■ Linspire ■ ALT Linux ■ Gentoo Linux ■ Ubuntu ■Slackware Linux
Red Hat Interface RedHat is a free operating system for LINUX Default RedHat Desktop The default desktop has three distinct areas. From top to bottom, the areas are: The menu panel The desktop area The window list panel
The Desktop Area Computer- This contains all volumes (or disks) mounted on the computer. These are also listed in the Places menu. Computer is equivalent to My Computer on Microsoft Windows. Home- This is where the logged-in user stores all files by default, such as music, movies, and documents. There is a different home directory for each user, and by default users cannot access each others' home directories. Home is equivalent to My Documents on Microsoft Windows. Trash - Deleted files are moved to Trash. Empty Trash by right-clicking the icon and clicking Empty Trash.
The Menu Panel Applications - The Applications menu contains a variety of icons that start software applications. It is similar to the Microsoft Windows Start menu. Places- The Places menu contains a customizable list of directories, mounted volumes, recent documents, and a Search function. Volumes that are mounted may be external USB drives (flash, hard disk, CD, etc.), directories shared across a network, or other media devices such as a portable music player. System - The System menu contains a variety of items.
Kernel Linux Shell whoami pwd ls • Shell interprets the command and request service from kernel • Similar to DOS but DOS has only one set of interface while Linux can select different shell • Bourne Again shell (Bash), TC shell (Tcsh), Z shell (Zsh) Bash, Tcsh, Zsh • Different shell has similar but different functionality • Bash is the default for Linux • Graphical user interface of Linux is in fact an application program work on the shell
All LINUX commands start with the name of the command and can be followed by options and arguments. Linux text-based interface command to show the content of current directory The prompt $ shows that bash shell is using command to show the content of current directory with option -al
Basic Command Line Listing files and directories ls (short for list) To find out what is in your home directory, type % ls The ls command lists the contents of your current working directory.
Basic Command Line (Cont..) Making Directories mkdir (make directory) To create directory or subdirectory. % mkdirmystuff