Friday, May 15, 2020
Doubts and Queries
Thursday, February 27, 2020
Disk Scheduling
Monday, February 17, 2020
Linux Directory Structure
Sunday, February 16, 2020
vi Editor
The vi editor is visual editor used for creating and editing text files containing data, document or programs.
It is like Notepad we use in Windows.
It display content of files on the screen and allows user to add, insert, delete or change text.
Some of the other editors for Linux are
ed (line editor)
emacs(edit macros editor)
red (restricted line editor) etc.
Starting vi editor
SYNTAX: vi filename <Enter>
EXAMPLE: [root@localhost student]# vi msg.txt
- - - - - - - - - - “msg.txt” [New
File] |
To end insertion or append mode, Press <Esc> and type vi editors command.
Commands of vi editor
The vi editor works in two mode insert mode and append mode. After starting vi editor, Press I to add text. The other commands are
:wq<Enter> save all changes and quit
:w<Enter> save file
:e<filename><Enter> open specified file
yy or y marks current line as line to be copied
p paste marked text after current cursor position
P paste marked text before current cursor position
Functions of vi editor
1. Vi editor allow user to create a file and write data to it.
2. It allow user to open existing file, modify content and save changes in file.
3. It allows user to copy and paste text from one position in a file to another.’
4. It allow searching for a particular expression or word.
5. Large amount of data can also be handled using vi editor.
Tuesday, February 11, 2020
The History of Linux
1991: Linus Torvalds
announced Linux
Linux Torvalds, a student of
Helsinki University, Finland, introduced linux in 1991. He worked on the Linux
project and write the source code for the Linux kernel. He made Linux available
on the Internet. Many programmers added to the code, changed it and built in
support for all kinds of hardware. Linux 0.02 was introduced in 1991.
On 25 August 1991 sent a
mail to a newsgroup on Usenet. He talked about developing a free operating
system.
1992: Linux became Open
Source
Linux was not always Open
Source. The first few licenses of Linux forbid commercial redistribution. It
was with version 0.12 in February’92 that Linux Kernel was released under GPL.
1993: Slackware Linux
released
The oldest currently (as of
2018) existing Linux distribution, Slackware version 1.0 was released
for the first time on 17th July 1993. Later in the same year, the Debian
project is established. Today it is the largest community distribution.
1994: Someone registered
Linux trademark and it was not Linus Torvalds
Torvalds and hundreds of
developers from across the world worked on it and in March 1994, version 1.0 of
Linux kernel was released.
Linux trademark was
registered in 1994 by a William R. Della Croce, Jr.
1995: First Linux Expo
First Linux specific
tradeshow and conference series was launched by people at North Carolina State
University. This became one of the most attended annual Linux show for next
several years.
Linux is also ported to the
DEC Alpha and to the Sun SPARC.
1996: Tux gets to be the
symbol of Linux
Linus Torvalds recommended a
penguin as the mascot of Linux. Tux was created by Larry Ewing in 1996. Tux has
been unchanged for last 19 years.
Version 2.0 of the Linux
kernel is released. The kernel can now serve several processors at the same
time using symmetric multiprocessing (SMP), and thereby becomes a serious
alternative for many companies.
1997: GNOME Project is born
GNOME is one of the most
successful open source projects. It has been crucial to the spread of desktop
Linux. It has given us a number of programs that we use today on desktop Linux.
1998: KDE 1.0 released. Many major companies such as IBM, Compaq and Oracle announce
their support for Linux.
2000:
Dell announces that it is now the No. 2 provider of Linux-based systems
worldwide and the first major manufacturer to offer Linux across its full
product line.
2002: Red Hat Enterprise
Linux released
The first commercial Linux
for Business IT was released in the year 2002. RHEL is one of the few Linux
distributions that changed Linux forever.
2003: Attempt to install
backdoor in Linux kernel
An attempt was made to
insert a backdoor in the Linux kernel source. Disguised as an innocuous error
checking routine, the backdoor was designed to obtain root privileges under
specific conditions. Linux Kernel maintainers caught it before it could made to
mainline Linux kernel.
2004: Ubuntu 4.10 released
On 20th October 2004, Ubuntu
4.10 was released. This new Linux distribution marketed itself as Linux for
human being.
2005: Linus Torvalds created
Git
In 2005, BitKeeper decided
to not provide the free version to the community anymore. This forced Linus
Torvalds to work on his own version control system and thus Git was born.
2006:
Oracle releases its own distribution of Red Hat Enterprise Linux. Novell and
Microsoft announce cooperation for a better interoperability and mutual patent
protection.
2007: Linux powered netbook
arrived
In a time when Windows came
pre-installed on majority of personal computers, Asus launched Eee PC, a lower
end, lightweight netbook series. It came preinstalled with a custom version of
Linux called Xandros. Dell also started distributing laptops with Ubuntu
pre-installed on them.
2008: Android version 1.0
released
With the release of Android,
a mobile operating system based on Linux Kernel, Linux took the first step in
the world of mobile OS. While desktop Linux might not have been that big a
sucess, with Android, Linux is dominating the world of mobile OS.
2009: Google announced
Chrome OS
Google announces its
own desktop operating system Chrome OS,
based on Linux kernel. Later on, Google also started releasing Chromebooks,
dedicated devices to run Chrome OS. Chromebooks have grown in popularity in
recent years and last year it outsold MacBooks in the US.
Red Hat's market
capitalization equals Sun's, interpreted as a symbolic moment for the
"Linux-based economy".
2010: Red Hat became first
billion dollar open source company
Red Hat Linux became the
first billion dollar open source company in 2010. The success of Red Hat breaks
the myth that open source companies cannot make money.
2011: Version 3.0 of the
Linux kernel is released.
2012: The aggregate Linux server
market revenue exceeds that of the rest of the Unix market.[60]
2013: Ubuntu Phone announced
2014: Ubuntu claims 22,000,000
users.
Microsoft’s new CEO Satya
Nadella shocked the tech world with his “Microsoft loves Linux” remark. As we
see later that this was just the beginning of Microsoft’s grand design to rule
cloud world. However, this actually brought a shift in Microsoft policies and
for the first time Microsoft started open sourcing its products and bringing it
to Linux.
2015: Version 4.0 of the Linux
kernel is released
Microsoft has its own
version of Linux. A of software meant for network switches that required Linux.
2019: Version 5.0 of the
Linux kernel is released.
Friday, January 31, 2020
Page Replacement Algorithm
Demand Paging
Friday, January 24, 2020
Virtual memory
Tuesday, January 21, 2020
Paging
Structure of Page Table
Fragmentation
Wednesday, October 6, 2010
What is Operating System ?
ऑपरेटिंग सिस्टम नियंत्रण और स्मृति के बाह्य उपकरणों से इनपुट पहचानने और कंप्यूटर को दर्शाता है उत्पादन प्रसारण के लिए आवंटन से सब कुछ के लिए जिम्मेदार हैं.
Operating System are designed to
1. Convenience: Operating system makes computer more convenient to use.
2. Efficiency: Operating system allows computer resources to be used in the efficient manner.
3. Ability to evolve: Operating system permits efficient development, testing and introduction of new system without interfering with current provided services.
आपरेटिंग सिस्टम design किया गया
1. सुविधा: ऑपरेटिंग सिस्टम कंप्यूटर का उपयोग अधिक सुविधाजनक बनाता है.
2. क्षमता: ऑपरेटिंग सिस्टम कम्प्यूटर संसाधनों का प्रभावी ढंग से प्रयोग की जाने की अनुमति देता है.
3. विकसित करने की योग्यता: ऑपरेटिंग सिस्टम> वर्तमान प्रदान की गई सेवाओं के साथ हस्तक्षेप किए बिना कुशल विकास, परीक्षण और नई प्रणाली का परिचय दे सकते हैं.
EVOLUTION OF OPERATING SYSTEM
Operating system has evolved through various stages of its development like Serial Processing, Batch Processing, Multi Programming and Time Sharing System.
1. Batch Systems: In this system, the user did not interact directly with the computer system. The user prepared a job which consisted of the program, the data and some control information and submitted it to the computer operator. This job is in the form of punch cards. After some time, the output appeared. To speed up processing, operators batched together jobs with similar needs and ran them as a group. In this environment, the CPU is often idle because the speeds of the I/O devices are slower than CPU.
2. Multiprogrammed Systems: A single user cannot keep either CPU or the I/O devices busy all the times. In multiprogrammed system, the operating system keeps several jobs in memory simultaneously. When one program needs I/O, that job is suspended and the other job whose data is ready and in main memory and waiting for CPU is taken up for execution. In this way, multiprogramming, organizes job so that CPU always has one to execute and thus increases CPU utilization.
Multiprogrammed सिस्टम: एक single user CPU को हमेशा व्यस्त नहीं कर सकते. Multiprogrammed प्रणाली में, ऑपरेटिंग सिस्टम memory में कई jobs एक साथ रहते है। जब एक प्रोग्राम मैं I/O की जरुरत होती हे, उस काम को निलंबित कर दिया जाता है और दूसरे काम जिसका डाटा तैयार है और main memory में है और CPU के इंतज़ार कर रही है उसे CPU दे दिया जाता है. इस तरह, multiprogramming, jobs organizes करता है जिसमे हमेशा एक job exeute होता है और सीपीयू उपयोग बढ़ता है।
3. Time Sharing Systems: Time Sharing or Multitasking is an extension of Multiprogramming. In this, CPU executes multiples jobs by switching among them. A time-shared operating system allows many users CPU scheduling and multiprogramming to provide each user with a small potion of time shared computer. Each command in a time shared system tends to be short know as quantum only little CPU time is needed for different process. As the system switches rapidly from one user to the next, each user is given the impression that the entire computer is dedicated to her use even though it is shared among many users process.
Time Sharing operating systems are more complex than multiprogramming operating systems. To ensure orderly execution of process, the system must provide mechanisms for concurrent execution of process , process synchronization and communication.
Time Sharing या Multitasking, multiprogramming का ही विस्तार है. इसमें, सीपीयू jobs में स्विच करके सारे jobs execute करता है।एक बार ऑपरेटिंग सिस्टम साझा कई प्रयोक्ताओं की अनुमति देता है CPU समयबद्धन और समय का एक छोटा सा औषधि कंप्यूटर साझा के साथ एक उपयोगकर्ता प्रदान बहु क्रमादेशन. एक साझा प्रणाली के समय में प्रत्येक आदेश को कम ही थोड़ा CPU समय मात्रा के रूप में जानते अलग प्रक्रिया के लिए जरूरी है जाता है. के रूप में प्रणाली एक उपयोगकर्ता से अगले, प्रत्येक उपयोगकर्ता धारणा है कि पूरे कंप्यूटर उसे इस्तेमाल करने के लिए समर्पित हालांकि यह प्रक्रिया कई प्रयोक्ताओं के बीच साझा किया है दी गई है तेजी से स्विच.
समय साझा ऑपरेटिंग सिस्टम विविध ऑपरेटिंग सिस्टम की तुलना में अधिक जटिल है. प्रक्रिया को व्यवस्थित करने के क्रियान्वयन सुनिश्चित करने के लिए प्रणाली की प्रक्रिया के समवर्ती निष्पादन, प्रक्रिया तुल्यकालन और संचार तंत्र के लिए प्रदान करनी चाहिए.
Types of Operating System
1. Single User OS
–Single-user operating systems have no facilities to distinguish users, but may allow multiple programs to run in tandem
2. Single Tasking OS
–A single-tasking system can only run one program at a time
•Features of Single User and Single Tasking OS
–MS-DOS and Palm OS
–Take up little space on disk
–Run on inexpensive computer
3. Multi Taskin (Time Sharing) OS
Multiprocessing and Multitasking are used interchangeable BUT
–multiprocessing sometimes implies that more than one CPU is involved.
–The ability to execute more than one task at the same time is called as multitasking.
Multi-tasking operating system allows more than one program to be running in concurrency.
In multitasking, only one CPU is involved, but it switches from one program to another so quickly that it gives the appearance of executing all of the programs at the same time.
This is achieved by time-sharing, dividing the available processor time between multiple processes that are each interrupted repeatedly in time slices.
Examples: Linux, Scolaris, Windows NT, AmigaOS
4. Multi User OS
A multi-user operating system extends the basic concept of multi-tasking with facilities that identify processes and resources belonging to multiple users, and the system permits multiple users to interact with the system at the same time.
Gives illusion that each user has his own machine.
Each user has a unique session.
5. Distributed System
A distributed operating system manages a group of distinct computers and makes them appear to be a single computer.
A distributed computer system is a collection of autonomous computer systems capable of communication and cooperation via their hardware and software interconnections.
Advantages of distributed System
Resources Sharing
Computation speed up
load balancing
Scalability
Reliability
Fail-Safe
6. Real time systems
Real time systems are used in time critical environments where data must be processed extremely quickly because the output influences immediate decisions.
Real time systems are used for space flights, airport traffic control, scientific experiments industrial processes, sophisticated medical equipments, telephone switching etc
Each process is assigned a certain level of priority that corresponds to the relative importance of the event that it services.
The processor is normally allocated to the highest-priority process among those that are ready to execute.
7. Embedded Systems
OS embed on the System itself
Fast, Application specific
Examples Processor in modern washing machines, Cell phones, Control systems etc…
Booting Process
- The BIOS performs Power on Self Test (POST) that checks to see whether the devices in the system are in perfect order.
- After the BIOS is done with the pre boot activities, it searches for the Master Boot Record in the first physical sector of the bootable disk. When it finds one, it implies that it is the bootable partition, and, the Operating System loader, also called the boot strap loader is loaded from that partition onto the memory. A boot strap loader is a special program that is present in the boot sector of the bootable drive.
- MS DOS Operating system comprises of the following files
- IO.Sys
- MSDOS.Sys
- Command.Com
- Config.Sys
- Autoexec.bat
- The boot strap loader first loads the IO.SYS file. The IO.Sys file as the name suggests, is responsible for Input Output in the DOS environment.
- The next file that is loaded is the MSDOS.SYS which is the core of the DOS operating system. The MSDOS.Sys file is responsible for Memory management and Processor Management in the DOS environment.
- The MSDOS.SYS file now searches to find the name of the command interpreter in the CONFIG.SYS file and when it finds one, it loads the same onto the memory.
- If no command interpreter is specified in the CONFIG.SYS file, the COMMAND.COM file is loaded as it is the default command interpreter of DOS Operating system.
- The last file to be loaded and executed is the AUTOEXEC.BAT file that contains a sequence of DOS commands.
- Now, the prompt is displayed and you can see the drive letter of the bootable drive displayed on your screen indicative of the fact that the Operating System has been loaded successfully from that drive.
Command Interpretation
IO.SYS
- Loads the rest of itself into memory.
- Initializes each default device driver in turn.
- Loads the DOS kernel and calls its initialization routine. The kernel is stored in MSDOS.SYS with MS-DOS and in IO.SYS with Windows 9x.
- Processes the MSDOS.SYS file with Windows 9x.
- Processes the CONFIG.SYS file.
- Loads command.com
- Displays the bootsplash in Windows 9x.




