You are on page 1of 13

JINKA UNIVERSITY

COLLEGE OF NATURAL AND COMPUTATIONA SCIENCE

DEPARTMENT OF COMPUTER SCIENCE

COURSE TITLE : OPERATING SYSTEM

COURSE CODE : COSC3023

GROUP 4 ASSIGNMENT

NAME ID NO.

1. TEMESGEN YISSFA 0409

2. ADANE KEBEDE 1847

3. GULUMA GUTUFO 1904

4. MEKONNEN MANKECH 0379


5. KEMERIA HUSSIE 1984

6. BELETE LAMORIE 1723

1. Discusse features and characteristics of various operating system.

It is an interface between user and system. This operating system had three types. They are client OS, server

OS, and Android operating system. These three kinds of operating system are described below

A. Client based operating system: The computer desktop is referred to as the single processing unit.

It does not need any external components for the function. This operating system only supports the single user.

The client-based system can able to manage the various components of the device such as printer and monitor.

Each system has a specific kind of operating system.

Features of client OS

The primary features.

I. Start menu - It provides the access for the programs and applications

II. Taskbar & Notification- Under this taskbar three components are there. They are the start, task and notification

page.

III. Snipping tool - This application is used to capture and save the images on the desktop.

IV. Windows explorer- It is the quick link to specify the directories in the hard disk.

B. Server based operating system

The server operating system is designed to run on servers.

It is used to serve regarding the client request.

This kind of operating systems used to enable the server roles like the web server, mail server, and file server.

It is represented as the advanced version of an operating system.

1
It is having required features and capabilities.

The Red hat enterprise Linux is one of the example server based operating system.

The features of the server operating system are described below in this Operating system assignment.

Features

 It can access the server both in the way of GUI and command line interface.

 It executes many processes using OS commands.

 It includes network and software configuration services.

 And used to deploy the web applications.

 Used to monitor the client computers.

C. Mobile operating system

The mobile operating system is designed to run the mobile devices.

It is a software platform and it can run on mobile devices.

Features

 No touch control- Through this android application user able to control their mobiles touch-free.

 Voice based features- Google search using voice is available in the Android mobile devices. These actions are

used to calling and navigation.

 Capturing the screen- In this operating system, the capturing is done by pressing the power and home

button at the same time. It has many alternative methods.

 External storage- Using this we can store more things using the storage slot.

 Widgets- These widgets are used to display the features and the productivity tools are used to remind the

working deadlines.

2: Operating System Administration using Command Line Interface (CLI)

I. Demonstrate the following Unix/Linux commands in the lab and the screen shots of execution in the same

word file.the

i. How do you know if a remote host is alive or not?

2
The ping command is used to check the remote host status. The above screenshot displays the statistics.

Here the packet loss is nothing and the connection establishment is shown. The command is ping –c4 IP

address. Here c4 is mentioned as 4 packets have to send.

ii. How do you find which process is taking how much CPU?

iii. How do you check how much space is left in current drive?

3
iv . How do you find whether your system is 32 bit or 64 bit?

This version of the Ubuntu operating system is found as 64 bit through this output analysis. Here uname –a command

is used to deliver the output.

v. In a file word UNIX is appearing many times. How will you count the number of these occurrence

4
Here the UNIX word is appear in the file as 4 times. I have the file, in that four UNIX strings are there. So it can deliver

the output as 4.

The command such as grep –c UNIX * is used for the establishment.

a.% cat /etc/hosts cat?

The cat command execution is shown. It listed the IP address, local host address and IPV6 capable hosts. The

command is used such as cat /etc/hosts.

b. % echo "Home Directory Is home" uppercase $HOME?

5
The echo command is executed and shown. It is used to print the given input text. So the sentence such as Home

Directory ls home is entered here. The output is same as the input.

c. % who | wc

The wc command is executed with who command. It displayed the line, word and bytes. According to that here 1 line,

5 words and 44 bytes are displayed.

d.% who>logged.users

6
Who command is sued to show the currently logged user. In the output the currently logged user osboxes is shown.

e. %date "+%m/%d/%y"%date

"+%Y%m%d"

%date +'%-4.4h %2.1d %H:%M'

 The date command is used to print the date. Date is displayed in three formats. In first it displayed in the

way of date, month and year. In the second it displayed in the way of year, month and date. In the third one,

the command is used to print the time

7
3. Discuses following point using the concepts of process and process management, memory management, device
management and file management.
1. Define virtual machine

 virtual machine (VM) is a digital version of a physical computer. Virtual machine software can run
programs and operating systems, store data, connect to networks, and do other computing functions, and
requires maintenance such as updates and system monitoring.
What are VMs used for?

Here are a few ways virtual machines are used:

 Building and deploying apps to the cloud.

 Trying out a new operating system (OS), including beta releases.

 Spinning up a new environment to make it simpler and quicker for developers to run dev-test scenarios.

 Backing up your existing OS.

 Accessing virus-infected data or running an old application by installing an older OS.

 Running software or apps on operating systems that they weren't originally intended for.

 What are the benefits of using VMs?


 Cost savings,Agility and speed,Lowered downtime,Scalability and.Security.
2. Define system boot

 IS referred to as boot up or sometimes start up,

 booting is the process of powering on a computer and getting into the Operating system.

3. What is Process Scheduling?

Process Scheduling is an OS task that schedules processes of different states like ready, waiting, and running.

Process scheduling allows OS to allocate a time interval of CPU execution for each process. Another important reason for
using a process scheduling system is that it keeps the CPU busy all the time. This allows you to get the minimum response
time for programs.
4. Define threading issues

There are several threading issues when we are in a multithreading environment. In this section, we will discuss the
threading issues with system calls, cancellation of thread, signal handling, thread pool and thread-specific data.

5. Explain thread scheduling

Many computers have only one CPU, so threads must share the CPU with other threads. ...
 Each thread has a numeric priority between MIN_PRIORITY and MAX_PRIORITY (constants defined in the Thread
class). …

8
 When all the Runnable threads in the system have the same priority, the scheduler arbitrarily chooses one of them to
run.
6. Discuss Peterson’s solution

Peterson’s Solution is a classical software based solution to the critical section problem.

In Peterson’s solution, we have two shared variables: boolean flag [i] :Initialized to FALSE, initially no one is
interested in entering the critical section.

7. Explain semaphores

In computer science, a semaphore is a variable or abstract data type used to control access to a common resource by
multiple threads and avoid critical section problems in a concurrent system such as a multitasking operating system

Semaphores are compound data types with two fields one is a Non-negative integer S.V and the second is Set of
processes in a queue S.L. It is used to solve critical section problems, and by using two atomic operations, it will be
solved. In this, wait and signal that is used for process synchronization

8. Explain file concept.

A file, in general, is a sequence of bits, bytes, lines, or records defined by its owner or creator. The file has a structure
defined by its owner or creator and depends on the file type.

 Text file – It has a sequence of characters.


 Image file – It has visual information such as photographs, vectors art and so on.
 Source file – It has subroutines and function that are compiled later.
 Object file – It has a sequence of bytes, organized into bytes and used by the linker.
 Executable file – The binary code that the loader brings to memory for execution is stored in
an exe file.
9. Define RAID

RAID (Redundant Array of Independent Disks) is an acronym first used in a 1988 paper by Berkeley researchers
Patterson, Gibson and Katz. It described array configuration and applications for multiple inexpensive hard disks,
providing fault tolerance (redundancy) and improved access rates.

10. Define disk management

Disk Manager is a quick fix tool for the users who are having problems when installing a hard drive on older computers.
It intends to help you bypass the BIOS limitation and access the entire disk space with minimum effort
Disk Management is an extension of the Microsoft Management Console that allows full management of the disk-based
hardware recognized by Windows. It's used to manage the drives installed in a computer—like hard disk drives (internal and
external ), optical disk drives, and flash drives.
11. Explain deadlock detection and recovery

In the previous post, we have discussed Deadlock Prevention and Avoidance. In this post, Deadlock Detection and
Recovery technique to handle deadlock is discussed.
Deadlock Detection
1. If resources have single instance:
In this case for Deadlock detection we can run an algorithm to check for cycle in the Resource Allocation Graph.

9
2. Presence of cycle in the graph is the sufficient condition for deadlock.

In the above diagram, resource 1 and resource 2 have single instances. There is a cycle R1 → P1 → R2 → P2. So, Deadlock
is Confirmed.
3. If there are multiple instances of resources:
Detection of the cycle is necessary but not sufficient condition for deadlock detection, in this case, the system may or
may not be in deadlock varies according to different situations.
Deadlock Recovery
A traditional operating system such as Windows doesn’t deal with deadlock recovery as it is time and space consuming
process. Real-time operating systems use Deadlock recovery.
Recovery method

1. Killing the process: killing all the process involved in the deadlock. Killing process one by one. After killing each
process check for deadlock again keep repeating the process till system recover from deadlock.
2. Resource Preemption: Resources are preempted from the processes involved in the deadlock, preempted resources
are allocated to other processes so that there is a possibility of recovering the system from deadlock.
12. Explain deadlock prevention and avoidance

1. Deadlock Prevention
Deadlock prevention means to block at least one of the four conditions required for deadlock to occur. If we are able to
block any one of them then deadlock can be prevented.
The four conditions which need to be blocked are:-
1. Mutual Exclusion
2. Hold and Wait
3. No Preemption
4. Circular Wait
Spooling and non-blocking synchronization algorithms are used to prevent the above conditions.In deadlock
prevention all the requests are granted in a finite amount of time.
3. Deadlock Avoidance : The deadlock Avoidance method is used by the operating system in order to check
whether the system is in a safe state or in an unsafe state and in order to avoid the deadlocks, the process
must need to tell the operating system about the maximum number of resources a process can request in order
to complete its execution.
13 . Explain memory management without swapping or paging
 Hardware-wise, swapping can be performed without any memory management HW whatsoever, although
the early machines employed a simple memory mapping scheme (e.g. base and bound, or a simple one level
fixed size page mapping table (e.g. divide the 64 KB data address space into 8, 8KB pages in a larger physical
address space (256 KB... 4 MB)).

10
 Program execution is the main propose of computer system .During execution programs are together
with the data they access with in main memory. To keep track of what memory is in use and what
memory is free is called memory management. Allocate the free memory to the process when any
process needed the free space and de-allocates it when they don’t need the free space.
Ideally, programmers want memory that is
 Fast
 Large
 Nonvolatile
 There are two classes of memory management systems, those that transfer processes to and from
disk during execution are the swapping or paging .And those that don’t are the simple and might find
this scheme in embedded device, phone, smart card, or PDA.

14. Explain page replacement algorithms

Page Replacement Algorithms is an algorithm that decides which memory page is to be replaced.


The process of replacement is sometimes called swap out or write to disk.
Page replacement is done when the requested page is not found in the main memory (page fault).

Page Replacement Algorithms :


1. First In First Out (FIFO) –
This is the simplest page replacement algorithm. In this algorithm, the operating system keeps track of all pages in the
memory in a queue, the oldest page is in the front of the queue. When a page needs to be replaced page in the front of
the queue is selected for removal.

2. Optimal Page replacement –


In this algorithm, pages are replaced which would not be used for the longest duration of time in the future.
Optimal page replacement is perfect, but not possible in practice as the operating system cannot know future requests.
The use of Optimal Page replacement is to set up a benchmark so that other replacement algorithms can be analyzed
against it.
3. Least Recently Used –
In this algorithm page will be replaced which is least recently used.
15. Explain application I/O interface

Character-stream or block. A character-stream, device transfers bytes one by one, whereas a block device transfers a block
of bytes as a unit.
 Sequential or random-access. ...
 Synchronous or asynchronous. ...
 Sharable or dedicated. ...
 Read-write, read only, or write only. ...
 Give the current time.
 Give the elapsed time.
 Set a timer to trigger operation X at time T. ...

11
Explain access matrix

16. Access Matrix is a security model of protection state in computer system. It is represented as a matrix. Access
matrix is used to define the rights of each process executing in the domain with respect to each object. The rows
of matrix represent domains and columns represent objects. Each cell of matrix represents set of access rights
which are given to the processes of domain means each entry(i, j) defines the set of operations that a process
executing in domain Di can invoke on object Oj.

12

You might also like