BASIC OPEN SOURCE OPERATING SYSTEM

Download Report

Transcript BASIC OPEN SOURCE OPERATING SYSTEM







In June 1971, Richard Matthew Stallman joined MIT Artificial Intelligence Laboratory
as a programmer where he gained popularity with the hacker community and came
to be known by his now popular name RMS. At that time, all the programmers used
to share their code freely among each other cutting across various institutions.
In 1980, with the advent of portable software - ie software that can be compiled to
run on different computers, a business model emerged where in, the companies
developing the code refused to share the code with their clients and began
restricting copying and redistribution of their software by copyrighting it.
In response to this trend, Stallman, who believed in the principle that software has to
be free always, founded the Free Software Foundation and in 1985, published the
GNU Manifesto. This manifesto outlined his motivation for creating a free OS called
GNU, which would be compatible with Unix.
In the same year (1985), a professor by name Andy Tanenbaum wrote a Unix like
Operating system from scratch based on System V standards POSIX and IEEE for
the Intel i386 platform. He named it Minix.
In 1989, Stallman released the first program independent GNU General Public
Licence now popularly known as GPL or copyleft.
In 1990, A finnish student by name Linus Torvalds studying in the University of
Helsinki came into contact with Andy Tanenbaum's OS, Minix. Linus wanted to
upgrade Minix by putting in more features and improvements. But he was prohibited
by Tanenbaum to do so. Then Linus decided to write his own kernel and released it
under GPL. This kernel is now popularly known as Linux.

Reliability
Linux is known for reliability often referred to as “uptime” and can easily manage the
necessary workloads in today’s business environment. In addition to enterprise
focused applications, the stability and relative low cost of Linux has prompted
companies to integrate Linux technology into consumer devices such as Sony’s
PlayStation 2

Scalability
The release of the 2.4 kernel means the fastest growing OS can handle large
business workloads that once could only be addressed by closed, proprietary
platforms and solutions. Some examples:
- 16-way symmetrical multi-processing
- Network stack and file system modifications to enhance performance and
scalability
- Support for up 64Gb of RAM on Intel-- RAM now limits the number of run-time
processes

Security
Linux is one of the most secure operating systems. “Walls” and flexible file access
permission systems prevent access by unwanted visitors or viruses

Open Source Licencing Model (ROI)
If you develop software that requires knowledge or modification of the operating
system code, Linux’s source code is at your fingertips. Most Linux applications are
Open Source as well.

The central module of an operating system. It is the
part of the operating system that loads first, and it
remains in main memory. Because it stays in memory,
it is important for the kernel to be as small as possible
while still providing all the essential services required
by other parts of the operating system and
applications. Typically, the kernel is responsible for
memory management, process and task
management, and disk management.
A kernel connects the application software to the hardware of a computer.
In a monolithic kernel, all OS services run along with the main
kernel thread, thus also residing in the same memory area.
 This approach provides rich and powerful hardware access.
Some developers, such as UNIX developer Ken Thompson,
maintain that it is "easier to implement a monolithic kernel“ than
microkernels.
 The main disadvantages of monolithic kernels are the
dependencies between system components — a bug in a
device driver might crash the entire system — and the fact that
large kernels can become very difficult to maintain.
 E;g linux






A micro kernel prefers an approach where core functionality is isolated
from system services and device drivers (which are basically just system
services).
For instance, VFS (virtual file system) and block device file systems (i.e.
minixfs) are separate processes that run outside of the kernel's space,
using IPC (Inter-process communication is any mechanism which allows
separate processes to communicate with each other, usually by
sending messages)to communicate with the kernel, other services and
user processes
advantage to a micro kernel is that any failed service can be easily restarted, for instance, no kernel halt if the root file system throws an abort.
disadvantage to a micro kernel is that asynchronous IPC messaging can
become very difficult to debug
E,g minix
Ubuntu
 Mint
 Fedora
 Debian
 openSUSE


CLI (non-graphical Linux) Minimum Requirements

486dx or 100% compatible processor
8mb ram (16mb recommended)
CDROM drive
1.44mb floppy drive (for boot floppy, if needed)
Monochrome (2 color) monitor

Minimum Requirements for with X-window





486dx or 100% compatible processor
16mb ram (24mb recommended)
dual-speed CDROM (quad-speed or better recommended)
1.44mb floppy drive (for boot floppy, if needed)
VGA monitor and video card
a mouse (serial, ps/2, usb)

Recommended Specs











Pentium 200MHz
64MB ram
8x CDROM
1.44mb floppy drive (for boot floppy, if needed)
VGA monitor and video card capable of handling at least 16 bit color
a mouse with a scroll wheel

Minimum
›
›
›

512 MB RAM
750 MB hard disk space for software
750 MB hard disk space for user data
Recommended
›
›
›
›
›
›
›
›
›
512 MB to 4 GB RAM, at least 256 MB per CPU
4 GB hard-disk space
Network interface (Ethernet, wireless or modem)
For Xen virtual host server—atleast 512 MB RAM for each virtual host server
For KVM virtual host server—the limits are equal to those of SUSE Linux Enterprise
Server
For print servers a relatively faster processor or additional processors to improve
server-based printing
For web servers additional RAM to improve caching, and additional processors to
improve web application performance
For database servers—additional RAM to improve caching, and using multiple disks
for parallel I/O
For file servers—additional memory and disks, or a Redundant Array of Inexpensive
Disks (RAID) system to improve I/O throughput
•
Installation from one or more CD-ROMs, DVD
•
From packages located on the hard disk
•
FTP server across the network
•
HTTP web server across the network
•
NFS server across the network
•
SMB server across the network
•
VNC (Virtual Network Computing) server across the
network

Reasons
• To create multiple OS
• To create multiple partitions within an OS
• To differentiate the types of file systems

Methods
• Automatically partitions
• Manual partitioning with graphical partitioning tools
such as Disk Druid
• Use fdisk utility
• Use GNU parted
It is the act or practice of dividing the
storage space of a hard disk drive into
separate data areas known as partitions.
 A partition editor program can be used to
create, delete or modify these partitions.
 Once a disk is divided into several
partitions, directories and files of different
categories may be stored in different
partitions.
 More partitions provide more control but
too many may become cumbersome.


MINIMUM
› Partition for root directory (Primary)
› Partition for virtual memory (swap memory)
Partition
Purpose
/usr
This is where most executable binaries, the kernel source
tree and much documentation go.
/var
This is where spool directories such as those for mail and
printing go. In addition, it contains the error log
directory.
/opt
This directory is reserved for all the software and add-on
packages that are not part of the default installation
/tmp
This is where most temporary data files stored by
applications.
/boot
This is where the kernel images and boot loader
configuration go.
/home
This is where users home directories go.

It is the first software program that runs
when a computer starts.

It is responsible for loading and
transferring control to the kernel software.

Then the kernel, initializes the rest of the
operating system.

which is installed by default

is a very powerful boot loader.

GRUB can load a variety of free OS, as well as
proprietary OS with chain-loading (the
mechanism for loading unsupported operating
systems, such as DOS or Windows, by loading
another boot loader).

is a versatile boot loader for Linux.

It does not depend on a specific file system,

can boot Linux kernel images from floppy
diskettes and hard disks.



loadlin is a Linux boot loaderthat runs under
DOS or Microsoft Windows (95, 98 or Me only). It
allows the Linux system to load and replace the
running DOS/Windows without altering existing
DOS/Windows system files.
loadlin and the Linux kernel are both files on a
file system accessible to DOS/Windows. It loads
the Linux kernel into memory from a file.
It also places various configuration parameters
into memory, and transfers control to the
kernel. The kernel reads these parameters,
initializes and runs, replacing DOS/Windows
completely.
The original SYSLINUX, used for booting
from FAT filesystems (such as floppy disks
and USB drives
 SYSLINUX is not normally used for booting
full Linux installations since Linux is not
normally installed on FAT filesystems
 it is often used for boot or rescue floppy
discs, Live USBs, or other lightweight boot
systems
