Sign In
Not register? Register Now!
Essay Available:
You are here: HomeDissertationTechnology
Pages:
1 page/≈275 words
Sources:
12 Sources
Level:
MLA
Subject:
Technology
Type:
Dissertation
Language:
English (U.S.)
Document:
MS Word
Date:
Total cost:
$ 6.08
Topic:

Analysis Of Linux Operating System Dissertation Writing (Dissertation Sample)

Instructions:

the analyses provides a report of the functionalities, design and capabilities of a linux operating system.

source..
Content:

ANALYSIS OF LINUX OPERATING SYSTEM
.
by
Course
Professor
Institution
City and state
Date
ABSTRACT
This report provides an analysis of the Linux operating system and it examines its design and functionality. Some design principles are discussed, and these principles are notably emphasized in the development, make and how operations are executed, and programs run in this system. Major elements of the key aspects of any other operating systems are explored, examined and discussed in the context of Linux.
The aspects of operating system covered in this report include the process management, the methods used for inter-process communication when utilizing Linux system tools and commands. This report also explores Linux major elements of memory management, scheduling, file system handling, methods for handling I/O functions and the elements of programming interface. Finally, the pros and cons of utilizing this operating system are outlined as well as real life environments where Linux system can be utilized best.
TABLE OF CONTENTS TOC \o "1-3" \h \z \u DESIGN PRINCIPLES PAGEREF _Toc433208205 \h 5UNIX compatibility PAGEREF _Toc433208206 \h 5POSIX documents compatibility PAGEREF _Toc433208207 \h 5Speed, efficiency, and standardization PAGEREF _Toc433208208 \h 5Free software foundation PAGEREF _Toc433208209 \h 6ELEMENTS OF PROCESS MANAGEMENT PAGEREF _Toc433208210 \h 6Process Identity (PID) PAGEREF _Toc433208211 \h 6Process environment PAGEREF _Toc433208212 \h 7Process context PAGEREF _Toc433208213 \h 7Process threads PAGEREF _Toc433208214 \h 8METHODS FOR INTER-PROCESS COMMUNICATION PAGEREF _Toc433208215 \h 8Signals PAGEREF _Toc433208216 \h 8Pipes PAGEREF _Toc433208217 \h 9Sockets PAGEREF _Toc433208218 \h 9ELEMENTS OF MEMORY MANAGEMENT PAGEREF _Toc433208219 \h 10Virtual memory PAGEREF _Toc433208220 \h 10Demand Paging PAGEREF _Toc433208221 \h 12ELEMENTS OF SCHEDULING PAGEREF _Toc433208222 \h 12Scheduling Policy PAGEREF _Toc433208223 \h 13Time slice PAGEREF _Toc433208224 \h 13Process priority PAGEREF _Toc433208225 \h 14Process Preemption PAGEREF _Toc433208226 \h 14ELEMENTS OF FILE SYSTEM HANDLING PAGEREF _Toc433208227 \h 14Structure PAGEREF _Toc433208228 \h 14Permissions and Attributes PAGEREF _Toc433208229 \h 15Locating files PAGEREF _Toc433208230 \h 16METHODS FOR HANDLING I/O FUNCTIONS PAGEREF _Toc433208231 \h 16Redirection using operators PAGEREF _Toc433208232 \h 16Advanced redirections PAGEREF _Toc433208233 \h 17Utilizing filters PAGEREF _Toc433208234 \h 17LINUX PROGRAMMING INTERFACE PAGEREF _Toc433208235 \h 17ADVANTAGES OF LINUX OPERATING SYSTEM PAGEREF _Toc433208236 \h 18Security PAGEREF _Toc433208237 \h 18Open-source distribution PAGEREF _Toc433208238 \h 19Linux in World Wide Web PAGEREF _Toc433208239 \h 19DISADVANTAGES OF LINUX OPERATING SYSTEM PAGEREF _Toc433208240 \h 19Difficult to understand PAGEREF _Toc433208241 \h 19Compatibility issues PAGEREF _Toc433208242 \h 19Alternative programs PAGEREF _Toc433208243 \h 20ENVIRONMENTS FOR LINUX OPERATING SYSTEM PAGEREF _Toc433208244 \h 20CONCLUSION PAGEREF _Toc433208245 \h 21REFERENCES PAGEREF _Toc433208246 \h 21
DESIGN PRINCIPLES
UNIX compatibility
Linux operating system has a multitasking system, and it is a multi-user consisting of a full set of UNIX-compatible tools. The underlying Linux file system ascribes to the traditional UNIX semantics; it notably fully implements the established UNIX networking model. Its programming interface adheres to SVR4 UNIX semantics as opposed to BSD behavior (Tanenbaum, 2009). Linux has implemented more UNIX functionality, and this has been attributed to the growth of more powerful PCs and easy availability of PCs hard disk and memory.
POSIX documents compatibility
Linux operating system is designed such that it complies with the underlying relevant POSIX documents. Currently, two Linux distributions have acquired the official POSIX certification (Mauerer, 2010).
Speed, efficiency, and standardization
This principle is the key major goals of Linux operating system. The current Linux operating system design majorly concentrates on standardization. The diversity of UNIX implementations is available in a source written for one specific system, and it may not necessarily run correctly on another system.
Free software foundation
Defined by the free software foundation, Linux kernel is distributed under the GNU General Public License (GPL) (Kotimäki, 2010). Linux users, as well as individuals considering creating Linux derivative, cannot take the invention propriety. All software released under GPL should include its underlying source code.
ELEMENTS OF PROCESS MANAGEMENT
In the context of Linux operating system, processes are dynamically created and represented by a dynamically task_struct. In Linux, processes are collected by way of the hash table, and this is hashed by the PID value (Love, 2013). The second way is through a circular doubly linked list that is then iterated through task list. The major key elements of Linux process management basically entail the following.
Process Identity (PID)
Under Linux process identity, there is a unique process identifier that specifies processes to the operating system. It is used when an application triggers a system call to modify, wait for another processor signal. In the context of process identity each of the specific processes has their assigned user ID, which determines the underlying rights to access Linux system files and resources (Comer, 2015). Also, each of the Linux processes has their associated personality identifiers that can modify the semantics of certain specific system calls. Personality identifier is used by emulation libraries to request system calls to be compatible with specific UNIX flavors.
Process environment
In Linux operating system, the process environment has two null-terminated vectors embedded in it. The first vector is the argument vector that lists command-line arguments used to invoke running program, and it starts with the program name (Armand et al., 2009). Secondly is the environment vector that is basically a list of "NAME=VALUE" and it plays the role of pairing the associated environment variables with arbitrary textual values. The flexible means of passing information to components of the user mode software is executed by way of passing environmental variables among Linux processes and inheriting variables. Environmental-variable mechanism facilitates customization of Linux operating system enabling it to be set on per-process basis without necessarily configuring the whole system (Muelder, 2009).
Process context
Process context entails the constant change of a running program state at any given time. Linux process context takes into consideration the scheduling context. It involves obtaining the necessary information for running, scheduling or restarting as a process. Linux system maintains accounting information ...
Get the Whole Paper!
Not exactly what you need?
Do you need a custom essay? Order right now:

Other Topics:

Need a Custom Essay Written?
First time 15% Discount!