0% found this document useful (0 votes)
87 views

Maharashtra State Board of Technical Education (Msbte) Govt - Of.maharashtra

The document summarizes a micro project report on the Linux operating system. It includes an introduction to operating systems, descriptions of Linux components like the kernel and system libraries, an overview of process management in Linux including the fork/exec model, and details on process scheduling in the kernel.

Uploaded by

Shaikh Ashraf
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)
87 views

Maharashtra State Board of Technical Education (Msbte) Govt - Of.maharashtra

The document summarizes a micro project report on the Linux operating system. It includes an introduction to operating systems, descriptions of Linux components like the kernel and system libraries, an overview of process management in Linux including the fork/exec model, and details on process scheduling in the kernel.

Uploaded by

Shaikh Ashraf
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/ 13

A

MICRO PROJECT REPORT


ON

Maharashtra State Board of


Technical Education
(MSBTE)
Govt.of.Maharashtra

SHREE SAMARTHA POLYTECHNIC

Sr. No Group Member Enrolment Numbers

1 Dixit Deepak 2114660024

2 Shaikh Ashraf 2114660039

3 Anarase Soham 2114660034

4 Bhosale Dhiraj 2214660197

5 Sale Prem 2114660019


CERTIFICATE

SHREE SAMARTHA POLYTECHNIC


(Mhasnephata – Parner, Ahmednagar)

SHREE SAMARTH POLYTECHNIC

This is to certify that the micro – project report on


TOPIC – LINUX OPERATING SYSTEM
Shree Samarth Polytechnic By
(2022 – 2023)
Computer Dept.(5th Semester of I – scheme)

Sr. Group Members Enrolment


No Numbers

1 Dixit Deepak 2114660024

2 Shaikh Ashraf 2114660039

3 Anarase Soham 2114660034

5 Bhosale Dhiraj 2214660197

6 Sale Prem 2114660019

Above students has been successfully completed this micro project under
the guidance of prof. Bhagannavar.C.P
Date :
Place :

SUB. TEACHER HOD PRINCIPAL


( Prof: Bhagannavar .C.P ) ( Prof: Darode .S.S ) ( Prof: Patare A.M )
ACKNOWLEDGEMENT
An endeavour over long period can be successful only with advice and guidance of
many
well-wishers.

My sincere thanks to the management and Prof. Patare A.M., Principal, of Shree
Samarth Polytechnic, Mhasane phata, Ahmednagar for providing me the opportunity to
conduct my project work.

I am highly indebted to Prof. Darode .S.S Head of Department of Science for his
assistance and constant source of encouragement. I wish to express my profound and
deep sense of Prof. Bhagannavar.C.P Project coordinator for sparing her valuable time
to extent helps in every step of my project work.

I would also like to thank the staff of Science Department for their generous guidance.

Last but not the least we would Like to thank our friends and for their help in every
way for the success of this report.

Name of the Student Signature

1. Dixit Deepak Dilip ……………………………………………….

2. Shaikh Ashraf Gulammustafa …………….…………………………………

3. Anarase Soham Nitin ……………….………………………………

4. Bhosale Dhiraj Ramdas ………………..………………………………

5. Sale Prem ………………..………………………………


 CONTENTS:

1. Introduction to Operating System

2. Linux Components

3. Process Management

4. Process Scheduling

5. Conclusion

6. REFERENCES
INTRODUCTION

An Operating System is a program that acts as an Intermediatery between

the user of a computer and the computer hardware. The purpose of an

operating system is to provide an environment in which a user can execute

programs in a convenient and efficient manner. An Operating System is a

program that manages the computer hardware. It also provides a basis for

application programs. An Operating System is an important part of almost

every computer system. An amazing aspect of operating system is how

varied it is useful in accomplishing the tasks. Mainframe Operating System

are designed primarily to optimize utilization of hardware. Personal

Operating System Support complex games, business applications and

everything in Between. Handheld computer Operating System are designed

to provide an environment in which a user can easily interface with

computer to execute programs

Compiler Assembler Text Editor

System and Application

Operating System

Computer Hardware
LINUX OPERATING SYSTEM LINUX
Linux is modern , free operating system based on UNIX standards. It has
been designed to run efficiently and reliably on common PC hardware, it run
also on a variety of other platforms. It provides a programming interface and
user interface compatible with standard UNIX systems. A Complete Linux
system includes many Components that were independently of Linux. The
core Linux operating-system Kernel is entirely original, But it allows much
existing free UNIX software to run, resulting in an entire UNIX-compatible
operating system free from proprietary code. The Linux kernel is
implemented as a traditional monolithic kernel for performance reasons, but
it is modular enough in design to allow most drivers to be dynamically
loaded and unloaded at a run time. Linux is a multi-user system ,providing
protection between processes and running multiple processes according to a
time-sharing scheduler.

Inter-process communication is supported for message queues ,semaphores


and shared memory and BSD’s socket interface. Multiple networking
protocols can be accessed simultaneously through the socket interface. To
the user, the file system appears as a hierarchical Directory tree that obeys
UNIX semantics. Linux uses an abstraction layer to manage multiple
different file system. Device-oriented network and virtual file systems are
supported. Device-oriented file-systems access disk storage through two
caches. The memory management system uses page sharing and copy-on-
write to minimize the duplication of data shared by different processes.
Pages are loaded on demand when they are first referenced, and are paged
back out to backing store according to an LFU algorithm if physical memory
needs to be reclaimed
LINUX COMPONENTS

The Linux System is composed of three main bodies of code

 Kernel
 System Libraries
 System Utilities

KERNEL:- The Kernel is responsible for maintaining all the important


abstractions of the Operating System.

SYSTEM LIBRARIES:- The System Libraries define a set of Standard set of


functions through which applications can interact with kernel and that
implement much of the operating system Functionality that does not need the
full privileges of kernel code.

SYSTEM UTILITIES:- The System Utilities are programs that Perform


individual, specialized management tasks,including Virtual Memory and
processes.

System User Process User Utility Compilers


Management
Programs

System Shared Libraries

Linux Kernal

Loadable Kernal Modules


PROCESS MANAGEMENT

A process is the basic context within which all-user requested Activity is


serviced within operating system. To be compatible with other UNIX systems,
Linux must use a process model similar to those of other versions of UNIX.
Linux operates differently from UNIX in a few key places.

1: THE FORK/EXEV PROCESS MODEL

2: PROCESSES AND THREADS

1: THE FORK/EXEV PROCESS MODEL :- The basic principle of UNIX process


management is to separate two distinct operations: the creation of processes
and the running of the new program. A new process is created by the FORK
system call, and a new program is run after a call to EXEV. These are two
distinctly separate functions. A new process may be created with FORK
without a new program being run the new sub-process simply continues to
execute exactly the same program that first , parent process was running. This
model has the advantage of great simplicity. Rather than having to specify
every detail of the environment of a new program in the system call that runs
that program. If a parent process wishes to modify the environment in which
a new program is to be run, it can Fork and then still running the original
program in a child process , make any system call it requires to modify that
child process before finally executing the new program.

Broadly , Process Properties fall into three groups :


1: PROCESS IDENTITY
2: PROCESS ENVIRONMENT
3: PROCESS CONTEXT
PROCESS SCHEDULING
Scheduling is the job of allocating CPU time to perform different tasks within
an operating system. Normally, we think of scheduling as being the running
and interrupting of processes , but another aspect of scheduling is also
important to Linux : the running of the various kernel tasks. Kernel tasks that
are requested by a running process and tasks that execute internally on behalf
of a device driver.
1: Kernel Synchronization
2: Process Scheduling
3: Symmetric Multiprocessing
1. KERNEL SYNCHRONIZATION :- The way that the kernel schedules its own
operations is fundamentally different from the way that it does process
scheduling. A request for kernel mode execution can occur in two ways. A
running program may request an operating system service, either explicitly
via a system call, or explicitly- for example when a page fault occurs.
Alternately a device driver may deliver a hardware interrupt that causes the
CPU to start executing a kernel-defined handler for that interrupt. The first
part of Linux’s solution to this problem lies in making normal code non-
preemptible. Usually when a timer interrupt is received by the kernel, it
invokes the process scheduler, potentially so that it can suspend execution of
the currently running process and resume running another one.
www.studymafia.org 16 Once a piece of kernel code starts running, it can
gurantee that it will be the only kernel code running until one of the following
action occurs:
 An Interrupt
 A Page Fault
 A Kernel code call to the scheduler itself
Interrupts are a problem only if they contain critical sections themselves.
Timer interrupts never directly cause a process re-scheduler; they just
request that a reschedule be performed later, so any incoming interrupts can
not effect the execution order of non-interrupt kernel code. Once the interrupt
service is finished, execution will simply return to the same kernel code that
was running when the interrupt was taken.
Page faults are a potential problem; if a Kernel routine tries to read/write to
user memory, it may incur a page-fault that requires disk I/O completed and
the running process will be suspended until the I/O completes. When the
process becomes run able again, it will continue to execute in kernel mode,
continuing at the instruction after the call to the scheduler.
Linux implements this architecture by separating interrupt service routines
into two sections: the top half and the bottom half. The Top Half is a normal
interrupt service routine, and runs with recursive interrupts disabled,
interrupts of a higher priority may interrupt the routine, but interrupts of the
same or lower priority are disabled. The Bottom Half of a service routine is
run, with all interrupts enabled, by a miniature scheduler that ensures that
bottom halves never interrupts themselves. The Bottom Half scheduler is
invoked automatically whenever an interrupt service routine exists

Top Half Handlers

Bottom Half Interrupt Handlers

Kernal-System Routine(Not Preemptible

User-Mode Programs(Preemptible

PROCESS SCHEDULING :- Once the kernel has reached a rescheduling point


– either a rescheduling interrupt has occurred or a running kernel process has
blocked waiting for some wakeup signals-it must decide what process to run
next. Linux has two separate process scheduling algorithms.
1: TIME SHARING Algorithms for preemptive scheduling
2: TIME SHARING Algorithms for real-time tasks
Part of every process identity is a scheduling class, that defines which of these
algorithms to apply to the process. The scheduling classes used by Linux are
defined in the POSIX standard’s extensions for real-time computing. For time-
sharing processes, Linux uses a prioritized, credit-based algorithm. Each
process possesses a certain number of scheduling credits, when a new task
must be chosen to run, the process with the most credits is selected. Every
time that a time interrupts occurs, the currently running process loses one
credit when its credits reaches zero, it is suspended and another process is
chosen. If no run able processes have any credits, then Linux performs a re-
crediting operation, adding credits to every process in the system, rather than
to just the run-able ones, according to the following rule:
Credits = (Credits /2) + Priority
This algorithm tends to mix two factors, the process’ history and priority. The
use of the process priority in calculating new credits allows the priority of a
process to be fine-tuned. Background batch jobs can be given a low priority,
hence will receive a smaller percentage of the CPU time than will smaller jobs
that have higher priorities. Linux’s real-time scheduling is simpler still. Linux
implements the two real-time scheduling classes required by POSIX.1b: First
come, First serve (FCFS) and Round-robin. Linux’s real-time scheduling is
soft-rather than hard-real time.
SYMMETRIC MULTIPROCESSING :- The Linux 2.0 kernel was the first stable
Linux kernel to support Symmetric Multiprocessor (SMP) hardware. Separate
processes or threads can execute in parallel on separate processors. The
implementation of SMP in this kernel imposes the restriction that only one
processor at a time can be executing kernel-mode code. SMP uses a single
kernel spin lock to enforce this rule. This spin lock does not pose a problem
for computation-bound tasks, but tasks that involve a lot of kernel activity can
become seriously bottlenecked. The development kernel 2.3 seems to have
completely removed the single-kernel spin lock.
CONCLUSION
The Latest LINUX Operating System therefore a recently developed system
which has proved the more convenient and efficient operating system from
the processing point of view and from the addition of latest soft-wares point
of view. It has been considered as consisting of an advance technology than
WIN-98 and Windows-XP.
REFERENCES
www.google.com
www.wikipedia.org
www.studymafia.org
Teacher Evaluation Sheet for the Micro Project

Name of Student ……………………………………………………………………………………………………………….

………………………………………………………………………………………………………………………………………….
…………………………………………………………………………………………………………………………………………..
Enrollment No: ..………………………………………………………………………………………………………………
Course Title and Code: ……………………………………………………………………………………………………..
Semester: ………………………………………………………………………………………………………………………….

Title of Project: ………………………………………………………………………………………………………………….


…………………………………………………………………………………………………………………………………………..
Cos addressed by Micro Project
A) ………………………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………………………………..
B) ………………………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………………………………..
C)……………………………………………………………………………………………………………………………………….
…………………………………………………………………………………………………………………………………………..

Major Learning outcomes achieved by doing the Project:

(a) Practical Outcomes


………………………………………………………………………………………………………………………………
………………………………………………………………………………………………………………………………
(b) Unit Outcomes (in Cognitive domain)
………………………………………………………………………………………………………………………………
………………………………………………………………………………………………………………………………
(c) Outcomes in Affective Domain
………………………………………………………………………………………………………………………………
………………………………………………………………………………………………………………………………

pg. 1
Evaluation as per suggested Rubric for Assessment of Micro-Project

Sr. Characteristics to be assessed Poor Average Good Excellent


No. (Marks 1-3) (Marks 4-5) (Marks 6-8) (Marks 9-10)
1 Relevance to the course
2 Literature survey/Information
3 Project Proposal
4 Completion of the target as per project
proposal
5 Analysis of Prototype/Model
6 Quality of Data & Representation
7 Report Presentation
8 Presentation
9 Defence

Micro-Project Evaluation Sheet


Process Assessment Product Assessment

Part A-Project Project Part B-Project Individual


Proposal Methodology Report/Working Presentation/Viva Total Marks 10
(2 Marks) (2 Marks) Model (4 Marks)
(2 Marks)

Comments/Suggestion about team work/Leader/Leader/leadership/inter-personal


Communication (if any)

…………………………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………………………………
Any other Comment
…………………………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………………………………

Name and designation of the Faculty Member …………………………………………………………………..


Signature …..………………………………………………………………………………………………………………………

pg. 2

You might also like