0% found this document useful (0 votes)
63 views11 pages

Anu - Bogati LCID00017000507 Operating - System

This document provides details about an assignment submitted by Anu Bogati for their Operating System course. It includes a diagram demonstrating deadlock between two programs requesting two resources. It also discusses the five generations of operating systems from 1945 to current, focusing on the development of transistors, batch processing, timesharing, and personal computers. Finally, it defines memory management as the operating system function responsible for efficient use of primary memory by moving processes between main memory and disk storage.

Uploaded by

Anjila
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
63 views11 pages

Anu - Bogati LCID00017000507 Operating - System

This document provides details about an assignment submitted by Anu Bogati for their Operating System course. It includes a diagram demonstrating deadlock between two programs requesting two resources. It also discusses the five generations of operating systems from 1945 to current, focusing on the development of transistors, batch processing, timesharing, and personal computers. Finally, it defines memory management as the operating system function responsible for efficient use of primary memory by moving processes between main memory and disk storage.

Uploaded by

Anjila
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 11

FACULTY OF COMPUTER SCIENCE & MULTIMEDIA

Program : Bachelor of Information Technology (Hons.)

Course : Operating System

Course Code : BIT 235

Submitted by : Anu Bogati

Year/ Semester : II Year /III Semester

Assessment : Assignment

Weightage : 20 Marks

Date : 11thMay2020–Monday

LCID : LC00017000507
Table of Contents
Introduction ................................................................................................................................1

1. Draw a diagram and show deadlock. ....................................................................................2

2. What is Operating system? Explain up to 5th generation of Operation system. ........................3

2.2 The second generation (1955-1965) ...................................................................................4

2.3 The third generation (1965-1980) ......................................................................................5

2.4 The fourth generation (1980-current) .................................................................................5

3. What is memory management?................................................................................................6

3.1 Swapping ..........................................................................................................................6

3.2 Memory Allocation ...........................................................................................................7

3.4 Paging ...............................................................................................................................8

3.5 Segmentation.....................................................................................................................9
BIT 235 Operating System

Introduction

For this coursework, we are supposed to do an in-depth research on operating system and its
history, memory management and deadlock We are required to write and learn about the four
generation of operating system. We are required to research and write about memory management
and its elements. We are also instructed to draw an figure according to the given condition in our
coursework and show whether or not deadlock occurs.

In this coursework, classroom learning will be used as an extensive form of information and open
online information sources as a reference.

1
Anu Bogati
BIT 235 Operating System

1. Draw a diagram and show deadlock.

Here, we have 2 programs and 2 resources. Program 1 requests resources B and is queued up,
pending the release of B. Program 2 requests resources A and is queued up, pending the release of
A. In this case, we can check for cycle in the resource allocation graph. The diagram has single
instance in resource 1 and resource. The cycle come out as R1 → P1 → R2 → P2.

So, Deadlock is Confirmed.

2
Anu Bogati
BIT 235 Operating System

2. What is Operating system? Explain up to 5th generation of Operation system.

A program which acts as an interface between the users and the computer and also manages the
hardware and the software of a computer is known as Operating System. The operating system
acts as an interface so the users only see hardware of a computer and hides the whole complexity
of the software. Operating system is a software that controls all aspects of a computer giving the
users simple manual for use.

An operating system is the base of the device that allows a user to run other applications on a
computing device. Mac, Linux, Windows etc. are some examples of an operating system that do
not have the same structure but most probably share the same components like File, Process, I/O
device management, Memory. Components of Operating System exist so various parts of a
computer system can work together. Even a basic component like mouse and keyboard needs to
be connected to the operating system to work with all the other components that makes a computer.

Here are some of the components of computer system as follows:

1.Kernel

2.Process Execution

3.Interrupt

4. Memory Management

5.Networking

6. Security

7. User interface

Operating system has had their timeline of evolution overtime. We have seen how it built up to the
compact system we are using now. Their evolution can be separated into four generations.

3
Anu Bogati
BIT 235 Operating System

2.1 The first generation (1945-1955)

The first generations consist of vacuum tubes and plugboards. It was around when digital were not
built so mechanical relays were replaced with vacuum tubes. Digital computers were not
constructed until the second world war. The machines at this time were enormous but very slow
in case of usability. The programming languages that we use now were not introduced then.
Mechanical relays were built with calculating engines All of the programming was done by
machine language. Problems that the machines could solve were simple numeric problems.

A small group of people designed built and maintained these machines. There was no concept of
operating system so all the programming was done in machine language. So, by the year 1950
punch cards were invented which was a start at improving the compute system. Programs were
written into cards and read into the system itself instead of using plugboards.

2.2 The second generation (1955-1965)

The second generations of operating system consisted of transistors and batch systems. The
invention of transistors made computers available to the general public who could pay. These
machines were still big in size so they were locked into air-conditioned rooms with staff
maintenance. Batch system was introduced in this generation, in which the first tape that ran had
job and second tape had the output written by the system. To run a program, they would write the
program on a paper known as Fortran or an assembler and the punch them on cards. After a group
of jobs was done, both tapes were removed and the output was printed. To reduce the time waste
of computers the batch system was introduced. Only few of big companies could afford these
multimillion dollar machines.

4
Anu Bogati
BIT 235 Operating System

2.3 The third generation (1965-1980)

In this generation there were two types of computer: word-oriented and character-oriented. IBM
attempted to solve this by introducing the system/360. Which was designed to handle both
scientific and commercial computing. Although they were big in size, they satisfied the customers.
But since programs had to wait for the first one to complete, the idle time was long so that’s when
the concept of multiprogramming came. They could multiprogram with three programs in a
memory. Quick response was desired so it paved the way for timesharing, it is a variant of
multiprogramming in which every user has one exact terminal. Another major accomplishment of
the third generation was the advancement of mini computers which gave birth to a whole new
industry of computer manufacturing. After that UNIX operating system became popular in
professional fields.

2.4 The fourth generation (1980-current)

The fourth generation was an era of personal computers. With the large-scale integrated circuits
development and the progression of chips containing thousands of transistors on a square
centimeter of a silicon, the era of personal computers thrived and were easy to create with such
development. Personal computers were initially called minicomputers. Silicon chips that contained
thousands of transistors in a small space made it possible for microcomputers to be more affordable
than minicomputers. Slowly the growth of minicomputers ownership led to growth of network.
Users were now able to log in to remote machines, copy files and connect to a network while using
a network operating system.

5
Anu Bogati
BIT 235 Operating System

3. What is memory management?

Memory management is one of the functions of operating system which is responsible for primary
memory and moving of processes back and forth between main memory and disk for process
execution. Memory management makes sure that memory on the device are used in more efficient
manner. Its is a process of controlling computer memory, assigning blocks of processes to optimize
memory, either free or allocated. It efficiently works to make overall system performance better.
It determines how memory is allocated, which process gets the memory, how, when, and how
much they are allowed. It also keeps track of which memory is processing, which one is free or
unallocated and works accordingly for distribution.

Main memory is that physical memory in our computer which is also known as RAM. Every
program we execute and the files we access must be from secondary or external memory to main
so that we are able to change the data. All programs are loaded in the main memory for execution.
Sometimes only part of the program is loaded in the main memory only when it is called by the
program, this activity is known as Dynamic loading. In other case when a program is dependent
on other program so the CPU links the dependent program to main executing program, this activity
is called Dynamic linking.

3.1 Swapping
Swapping is a mechanism in which a process is brought in main memory, running it for a while
and the is put back to the disk. A process can be swapped temporarily out of min memory to
secondary storage and make that memory available to other processes, late the process is swapped
back to main memory from secondary memory by the system. It is a known technique for memory
compaction. It may cause device performance to be slower but it helps in running multiple
processes parallelly. The total time taken by swapping process includes the time includes the time
it takes to move the entire process to a secondary disk and then copy the process back to memory
as well as the time taken to regain main memory.

6
Anu Bogati
BIT 235 Operating System

3.2 Memory Allocation


In this process memory is divided into fixed sized blocks of partitions. Sections of memory is set
aside in a program to use to store variables, and instances of structures and classes. There are
mainly two types of memory allocation, Static memory allocation and Dynamic memory allocation

7
Anu Bogati
BIT 235 Operating System

3.3 Fragmentation

In case of operating system, fragmentation is a wastage or loss of memory which happens when
the system is not able to reuse the free memory available or not being able to allocate the demands
by a process. It is a big disadvantage as our objective of memory utilization is not being met.

Internal fragmentation: This happens when the memory is split into mounted size blocks. The size
blocks are allocated when a process requests for memory. Size is of allocated memory is greater
than the requested memory so difference of memory is wasted. The difference between memory
requested and allocated memory is called internal fragmentation.

External fragmentation: This happens when there is sufficient quantity of memory to satisfy the
request of a process. But because the memory is offered during a non-contiguous manner the
process’s memory request cannot be fulfilled. You have to apply either first-fit or best-fit strategy
or it will cause an external fragmentation. It was a severe issue because of which we had to switch
to non-contagious allocation policy.

And now in non-contagious allocation policy, we have majorly two approaches available they are
paging and segmentation.

3.4 Paging

Paging s a memory management mechanism where a process is divided into equally sized pages
and put into main memory frames. It is a method of writing and reading data from secondary
storage eliminating the need for contagious memory allocation of physical memory. This
mechanism allows the physical address space of a process to be non-contagious. The concept of
paging is that each process is divided in form of pages. Pages can be stored in different memory
location but finding the contagious frame is the priority. The divided pages are brought into the
main memory when it is required otherwise, they stay in the secondary storage.

8
Anu Bogati
BIT 235 Operating System

Advantages of paging is that they are easy to use memory management algorithm, there is no need
for external Fragmentation and swapping is easy between equal-sized pages and page frames.

Disadvantages of paging are that they may cause Internal fragmentation. They have very complex
memory management algorithm. Its page tables consume additional memory and multi-level
paging may lead to memory reference overhead. (Anon., n.d.)

3.5 Segmentation

Segmentation is a process in which a process will be divided and put into main memory, the same
concept as paging. The memory is divided into variable sized parts. It is a memory technique in
which, the memory is divided into variable size parts. Each part is known as segment and can be
allocated to a process.

Segmentation is closer to OS than the user. The operating system doesn’t care about the users view
of the process. It might divide the same function into different pages and those pages might or
might not load at the same time into the memory which decreases the efficiency of the system. It
is better to have segmentation which divides process into segments. The details about each segment
are stored in a table called as segment table they are stored in one of the many segments:

Base – base address of the segment

Limit – length of the segment

Some advantages of segmentation are that offer protection within segments, doesn’t offer internal
fragmentation, and segment tables use lesser memory than paging. Also, you can achieve sharing
by segments viewing an example of multiple processes.

The biggest disadvantage of segmentation is it a costly memory management system. In this


method, process are loaded form the main memory, the free memory space is separated into small
pieces which may cause external fragmentation.

9
Anu Bogati

You might also like