Assignment of Operating System: Assigned by - Pinki Roy
Assignment of Operating System: Assigned by - Pinki Roy
SYSTEM
Assigned By – Pinki Roy
Topic
CPU Scheduling Algorithms in Windows and Linux and File Management System
Manish Upadhyaya
Scholar Id – 17-15-042
CPU SCHEDULING:
Scheduling basically deals with the selection of a process that exists in the
memory and ready to execute. The selected process is allocated with the CPU.
This function is performed by the CPU scheduler. The CPU scheduler makes a
sequence of “moves” that determines the interleaving of threads.
All processes receive a priority boost after a wait event, but processes that have
experienced a keyboard I/O wait get a larger boost than those that have
experienced a disk I/O wait.
From versions 2.6 to 2.6.23, the kernel used an O (1) scheduler. The Completely
Fair Scheduler is the name of a task scheduler which was merged into the 2.6.23
release of the Linux kernel. It handles CPU resource allocation for executing
processes, and aims to maximize overall CPU utilization while maximizing
interactive performance. It uses that uses red-black trees instead of queues.
The Round Robin and FIFO scheduling algorithms are used to switch between
real-time processes
Windows Linux
1)Process 1) Process is called a Task
a)Address space, handle table, statistics and a)Basic Address space, handle table,
at least one thread statistics
b) Fibers – cooperative user-mode threads b)Tasks can act like Windows threads by
sharing handle table, PID and address
space
The thread time slice (quantum) is 10ms- The thread quantum is 10ms-200ms
120ms
a)Default is 100ms
a)When quanta can vary, has one of 2
values b)Varies across entire range based on
priority, which is based on interactivity
level
12) Windows NT has always had an O (1) 12) The Linux 2.4 scheduler is O(n)
scheduler based on pre-sorted thread
priority queues.
If there are 10 active tasks, it scans 10 of
them in a list in order to decide which
should execute next
In an age where businesses are using cutting-edge technologies like big data,
AI, and even blockchain to enhance different business functions like marketing,
product design, and customer service, the area of document management,
surprisingly, still remains untouched by technology. Businesses, who are
investing thousands, if not millions, in technology to increase the efficiency of
their operations, have somehow failed to recognize the impact of a good file
management system on their organization’s productivity, and are missing out on
saving huge amounts of time and resources.
We must be familiar with Windows Explorer, which enables its users to browse
through the contents of their machine’s hard drive on a single, simple window.
Windows Explorer provides We with the ability to create new files, sort files
according to different criteria, move files between locations, create file copies,
and perform other such file management functions on files. Both, Windows
Explorer and Finder for Mac machines, are quite good in satisfactorily
delivering the file management needs of an average personal user. However,
these default file management systems may not be ideal for business users,
especially if the user deals with a large number of business documents on a
daily basis. This is because, although these file management systems can
differentiate between files of different formats, there’s hardly any differentiation
service that they can offer beyond that.
Businesses usually deal with documents that are in the .doc, .pdf, or.xls formats.
When We have thousands of files in the same format, say .pdf, a basic file
management system cannot differentiate between a .pdf utility bill and a .pdf
customer invoice. To ascertain the exact contents of a document, We’ll have to
open files individually and read the contents. However, an advanced file
management system will be able to differentiate files, based on the contents in
them, no matter what their format.
File
A file is a named collection of related information that is recorded on
secondary storage such as magnetic disks, magnetic tapes and optical disks. In
general, a file is a sequence of bits, bytes, lines or records whose meaning is
defined by the files creator and user.
File Structure
A File Structure should be according to a required format that the operating
system can understand.
A file has a certain defined structure according to its type.
A text file is a sequence of characters organized into lines.
A source file is a sequence of procedures and functions.
An object file is a sequence of bytes organized into blocks that are
understandable by the machine.
When operating system defines different file structures, it also contains
the code to support these file structure. Unix, MS-DOS support
minimum number of file structure.
File Type
File type refers to the ability of the operating system to distinguish different
types of file such as text files source files and binary files etc. Many operating
systems support many types of files. Operating system like MS-DOS and
UNIX have the following types of files −
Ordinary files
These files contain list of file names and other information related to
these files.
Special files
Sequential access
Direct/Random access
Indexed sequential access
Sequential access
A sequential access is that in which the records are accessed in some sequence,
i.e., the information in the file is processed in order, one record after the other.
This access method is the most primitive one. Example: Compilers usually
access files in this fashion.
Direct/Random access
Contiguous Allocation
Linked Allocation
Indexed Allocation
Contiguous Allocation
Linked Allocation
Indexed Allocation
1. Sector :
The smallest physical storage unit on the disk. The data size in bytes is a
power of 2 and is almost always 512 bytes.
2. Cluster :
One or more contiguous (next to each other on the same track) sectors. The
cluster size in sectors is a power of 2.
3. Volume :
A logical partition on a disk, consisting of one or more clusters and used by
a file system to allocate space. At any time, a volume consists of a file
system information, a collection of files, and any additional unallocated
space remaining on the volume that can be allocated to files. A volume can
be all or a portion of a single disk or it can extend across multiple disks. If
hardware or software RAID 5 is employed, a volume consists of stripes
spanning multiple disks.