File Directory

 Directory  is a location for storing files on your computer. Directories are found in a hierarchical file system, such as Linux, MS-DOS, OS/2, and Unix.

A.a Single-level directory

Single level directory is simplest directory structure.In it all files are contained in same directory which make it easy to support and understand.

A single level directory has a significant limitation, however, when the number of files increases or when the system has more than one user. Since all the files are in the same directory, they must have the unique name . if two users call their dataset test, then the unique name rule violated.

A.b Two-level directory

As we have seen, a single level directory often leads to confusion of files names among different users. the solution to this problem is to create a separate directory for each user.

In the two-level directory structure, each user has there own user files directory (UFD). The UFDs has similar structures, but each lists only the files of a single user. system’s master file directory (MFD) is searches whenever a new user id=s logged in. The MFD is indexed by username or account number, and each entry points to the UFD for that user.

A.c Tree-structured directory

Once we have seen a two-level directory as a tree of height 2, the natural generalization is to extend the directory structure to a tree of arbitrary height.
This generalization allows the user to create there own subdirectories and to organize on their files accordingly.

A.d Acyclic graph directory

An acyclic graph is a graph with no cycle and allows to share subdirectories and files. The same file or subdirectories may be in two different directories. It is a natural generalization of the tree-structured directory.

It is used in the situation like when two programmers are working on a joint project and they need to access files. The associated files are stored in a subdirectory, separating them from other projects and files of other programmers, since they are working on a joint project so they want the subdirectories to be into their own directories. The common subdirectories should be shared. So here we use Acyclic directories.

It is the point to note that shared file is not the same as copy file . If any programmer makes some changes in the subdirectory it will reflect in both subdirectories.

A.e General graph directory structure

In general graph directory structure, cycles are allowed within a directory structure where multiple directories can be derived from more than one parent directory.
The main problem with this kind of directory structure is to calculate total size or space that has been taken by the files and directories.

Reference:

geeksforgeeks.Retrieved(2019).fromhttps://www.geeksforgeeks.org/structures-of-directory-in-operating-system/.

File Sharing

File sharing is public or private sharing of data in a network with separate levels of accessibility. Depending on the accessibility permissions, file sharing allows a select number of people to read, view or edit the file based on the level of authority the file sharer has provided. File sharing services typically allocate a certain amount of file storage per user per account.

A.a File transfer protocol programs (FTP):

The most common file transfer system on the internet to date is known as the File Transfer Protocol or FTP. FTP is used to access or edit files among a set number of users with a password. The users can then gain access to the files shared from an FTP server site. Many FTP sites offer public file sharing or allow users to view or download files using a public password.

A.b Peer-to-peer networks:

Peer-to-peer networking involves computer hardware and software to communicate without the need for a central server. This type of file sharing indicates the direction of digital files over a p2p network where the files are located on one’s computer and shared with other members rather than on the main server.

A.c Removable storage media:

This involves anything that can be removable from a device or computer. The user can transfer or insert files from their device onto the removable storage media and then physically hand it to whomever they would like to share the files with. These can include an FTP server for security purposes, asking for a valid login and password from others to allow access.

A.d Online file sharing services:

Online file sharing services include web services that allow users to store or share data on the internet for personal or professional use. One member may upload photos, documents, PDFs, etc. to an online file sharing platform which allows others to download these files using the same platform.

Reference:

panda security.com.Retrieved November 13,2019 2:29 PM>.from https://www.pandasecurity.com/mediacenter/panda-security/secure-file-sharing/

Priority

Image result for priority of  OS image

In case of priority scheduling the priority is not always set as the inverse of the CPU burst time, rather it can be internally or externally set, but yes the scheduling is done on the basis of priority of the process where the process which is most urgent is processed first, followed by the ones with lesser priority in order.

Processes with same priority are executed in FCFS manner.

The priority of process, when internally defined, can be decided based on memory requirementstime limits ,number of open filesratio of I/O burst to CPU burst etc.

Whereas, external priorities are set based on criteria outside the operating system, like the importance of the process, funds paid for the computer resource use, makrte factor etc.

Reference:

https://www.studytonight.com/operating-system/priority-scheduling.(2019).Wikipedia.Retrieved(2019).

Round Robin (RR)

Image result for round robin of  OS image

Round-robin scheduling (Figure 7.151) allocates each task an equal share of the CPU time. In its simplest form, tasks are in a circular queue and when a task’s allocated CPU time expires, the task is put to the end of the queue and the new task is taken from the front of the queue. Round-robin scheduling is not very satisfactory in many real-time applications where each task can have varying amounts of CPU requirements depending upon the complexity of processing required. One variation of the pure round-robin scheduling is to provide priority-based scheduling, where tasks with the same priority levels receive equal amounts of CPU time. It is also possible to allocate different maximum CPU times to each task. An example project is given later on the use of round-robin scheduling.

Reference:

https://www.sciencedirect.com/topics/computer-science/round-robin-scheduling .(2019).Wikipedia.Retrieved.(2019).

Shortest Remaining Time(SRT)

Image result for Shortest REMAINING TIME OF OS

Shortest remaining time, also known as shortest remaining time first (SRTF), is a scheduling method that is a preemptive version of shortest job next scheduling. In this scheduling algorithm, the process with the smallest amount of time remaining until completion is selected to execute. Since the currently executing process is the one with the shortest amount of time remaining by definition, and since that time should only reduce as execution progresses, processes will always run until they complete or a new process is added that requires a smaller amount of time.

Shortest remaining time is advantageous because short processes are handled very quickly. The system also requires very little overhead since it only makes a decision when a process completes or a new process is added, and when a new process is added the algorithm only needs to compare the currently executing process with the new process, ignoring all other processes currently waiting to execute.

Reference:

 Harchol-Balter, Mor; Schroeder, Bianca; Bansal, Nikhil; Agrawal, Mukesh (2003). “Size-Based Scheduling to Improve Web Performance”. ACM Transactions on Computer Systems. 21 (2): 207–233. CiteSeerX 10.1.1.25.1229. doi:10.1145/762483.762486.(22 February 2019).Wikipedia.Retrieved(2019).

Shortest Process Next(SPN)

Image result for shortest process next OS

Shortest Process Next (SPN) scheduling, also called Shortest Job First (SJF) scheduling, assigns the process estimated to complete fastest to the CPU as soon as CPU time is available.

This method falls prey to the halting problem. The halting problem is unsolvable, but basically states that given a program and a particular input, can we determine if it will ever finish? With a simple program we could try to run it, and if it completes then we know it will finish, but if it doesn’t complete in a given time, perhaps we just didn’t wait long enough.

There is no way to determine which process is going to run in the least amount of time unless you allow all processes to run and record their execution times or take input from the user.

This method also allows for live lock with many short processes locking a longer process out from the CPU.

Reference:

https://en.wikibooks.org/wiki/Operating_System_Design/Scheduling_Processes/SPN(January 2018).Wikipedia.(2019)

Design a site like this with WordPress.com
Get started