StudentShare
Contact Us
Sign In / Sign Up for FREE
Search
Go to advanced search...
Free

UNIX Operating System History - Essay Example

Cite this document
Summary
UNIX development history is associated with many organizations for more than 20 years. The first ever version of the UNIX operating system was coded by an employee of AT&T Bell Laboratories employee Ken Thompson in 1969 (Fox 1807-1814)…
Download full paper File format: .doc, available for editing
GRAB THE BEST PAPER93.5% of users find it useful
UNIX Operating System History
Read Text Preview

Extract of sample "UNIX Operating System History"

of the of the 12 March UNIX History UNIX development history is associated with many organizations for more than 20 years. The first ever version of the UNIX operating system was coded by an employee of AT&T Bell Laboratories employee Ken Thompson in 1969 (Fox 1807-1814). Likewise, primary objective of Ken is to provide a user friendly environment to his subordinates who are associated with computing research along with a provision of time sharing environment (Fox 1807-1814). Ken and his subordinates improved the UNIX code for several years by integrating utilities and functionality for enhancing user interface along with rewriting the code in C language (Fox 1807-1814). Moreover, the sixth edition in 1975 was not associated with AT&T and became popular in the academic world because it was bundled with rich features, powerful, free of cost and compatible with common platforms and most importantly possess a complete source code (Fox 1807-1814). Likewise, in the year 1979, Ken was working with his colleague Bill joy and Ozalp Babaoglu at the University of California, Berkeley to improve UNIX that resulted in a new version known as Berkeley Software Distribution (BSD) UNIX (Fox 1807-1814). Moreover, after consolidating all internal research and development versions of UNIX systems to release its own version, AT&T releases its commercial version of UNIX named as UNIX System III. It is possible for an operating system to be matured as well as state of the art simultaneously? If it is UNIX, then the answer would be “Yes.” UNIX has contributed in the Information technology sector for the last 25 years. Millions of installations conducted on various platforms and UNIX has proved to be organized and scalable. Operating systems are compared by their functionality and performance. UNIX has contributed immensely in recent years. UNIX communication capabilities has also contributed in High performance computing sector as a company named Computer Associated International implemented a powerful system “Advantage Gen (release 6.5)”on UNIX platform to speed up the development of J2EE applications and web services ("Ohio Supercomputing Center to Deploy Hp Linux Supercomputer." 7). UNIX back end server support the automatic generation of enterprise java beans facilitated the development teams to develop the J2EE application more efficiently. By the UNIX fast XML proxy support, web services are developed in no time on a distributed system as compared to the previous server architecture. IBM 32 way UNIX servers were also launched in year 2001 with the code name “Regatta”. The microprocessor architecture comprises of 1 GHz 64 Bit Power 4. This UNIX server is capable of self-healing technology and to decrease system failures. The system is capable to divide into 16 virtual servers which enable the businesses to integrate several machines in to one (Popovich 11). The Client-server model of UNIX was the core components for the growth of Internet and reshaping of the distributed systems networks. Inter process communication in the UNIX operating system involves the connection between the system components logically and physically. It supports real time network applications which allow the user to exchange messages in an interactive session. UNIX is known as a command line interface due to nonexistence of a GUI environment Today UNIX is equipped with a GUI along with dynamic communication functionalities. Some of the registered UNIX products are HP-UX, IBM AIX, SCO UnixWare, SGI IRIX, Sun Solaris etc. UNIX Directory Structure UNIX Directory Structure Figure 1.1 UNIX Shells A shell can be defined as an entity that processes user input on the behalf of computer. The bourne shell was the first shell that was programmed by Stephen Bourne deputed at Bell Laboratories (Verma, n.d). Likewise, Bourse shell was an integrated function of the UNIX operating system. Moreover, Kourne shell that was subset of Bourne shell was coded by IBM. However, Kourne shell is not supported by all platforms and is not portable as well. Furthermore, C shell was programmed by Bill joy who is also the inventor of Vi text editors (Verma, n.d). While working at the University of California, he augmented the Bourne shell by integrating more features by modifying some legacy features. Likewise, the C shell cannot be similar to C programming language, as both of them are separate objects. If we compare these three shells the location of each one of them is illustrated below (Verma, n.d): The Bourne shell is located in ‘/bin/sh’ The Korn shell is located in ‘/bin/ksh’ The C shell is located in ‘/bin/csh’ UNIX Communication Mechanism Features Pipe is used to transfer information between two processes. The pipes are also called special files, which only save a limited amount of data. The pipe uses FIFO (First in First Out) mechanism to retrieve data. The data is written at one end of the pipe and can be read on the other end. The system cannot identify the processes at the other end of the pipe. The system also provides synchronization between reading and writing process. The system block the pipes already involved in processing data and constantly monitor the pipes to assure the processes are running at both ends of the pipes. The deadlock prevention is handled by the programmers. Pipes can be divided in to two categories: Named Pipes: They exist in the form of directories with complete permissions. Unrelated processes can use them. Unnamed Pipes: They can only be used by related programs UNIX has limited the pipes to 512 K. Write ( ) un buffered is used to add data to the pipes. The system assured that no interleaving will occur even if the pipes fill on a temporary basis. For the retrieval of data, read ( ) is used. The pipes ( ) call is used to rename un named pipes in UNIX. The command retrieves two pipes supporting bi directional communication. Pipe is used for sending the output of one process to another process as input. When a pipe process in initialized, both processes run concurrently and the system cannot assure on which sequence each process is allowed to run. UNIX communication mechanism manages the producer and the consumer issue, both processes proceed and the system provides automatic blocking when required. Sockets For communication between processes, a channel or interface is required for them to communicate. Sockets provide the link for the processes to interact with each other. The sockets allow “bi directional” communication and follow these steps for communication: Create a Socket Trace the system name, port number of the server Start sending and receiving data Sockets can be divided on to two categories i.e. Stream sockets guarantees the delivery of data, in the same order as it is sent. In the process of stream socket, a connection is established, and the two ends must agree logically before sending the data. Datagram sockets do not guarantee reliable delivery of data. The connection between the two ends is not consistent. Each datagram is sent and processed separately. There is no flow control, and each datagram can use different paths to reach the destination. Socket Functionality in UNIX In the early 1980s, Berkeley introduced a socket interface for UNIX. A comprehensive definition which will give clear understanding is published which states “The Berkeley sockets application programming interface (API) comprises a library for developing applications written in the C programming language that access a computer network” ("Berkeley sockets - Definition). These sockets allow general file system type access routines to be sent/ receive over the network connection. The sockets were totally protocol independent and do not require TCP / IP for communication, as it was a common way of communication. Berkeley’s sockets support asynchronous I/O. Whenever a socket is available, the kernel notify system to use it for the distribution of data. As the sockets supports asynchronous mode, a different methodology is used for using more than one socket for the processes to transit. Select ( ) system call is executed. UNIX with its remarkable features of communication solves the problem of the delaying of data due to non-active sockets while an active socket blocks another I/O transaction to take place. UNIX File Editors In Windows environment we call the directories as “Folder” and in UNIX we call the files and folders “Directories”. These directories may contain sub directories depending on the requirements of the user. One of the major differences between UNIX and Windows is the directory structure. Locating files and folders in UNIX are also unlike as compared to windows. We can compare Windows and UNIX as: UNIX Windows Command Difference /Folder1/subfolder/file.txt “C:\Folder1\subfolder\file.txt” Syntax Difference In UNIX Forward Slashes are used In Windows back slashes are used Drive Letters In UNIX no drive letters are present In Windows drive letters are present Case Sensitive UNIX is case sensitive Windows is not case sensitive Features of UNIX text Editors The most popular editors currently in use are “Vi” and “Emacs” UNIX installs with these two editors. “Vi” is more popular than “Emacs”. A UNIX user cannot rely on the GUI as the role of text editors is essential when GUI is not available to execute commands. “Vi” Text Editor The “Vi” editor has two modes which are I. Command II. Insert The “command mode” works on the inserted commands for the UNIX directory structure to be manipulated and “Insert mode” stores the keystrokes in a file. “Vi” text buffers A text buffer facilitates the user to reuse the commands without typing them again. The “Vi” text buffer contains thirty six buffers for storing the text. A “general purpose” buffer is also used in the process. Sometimes there is no need to employ other buffers as “general purpose” buffer finishes the job. Verifying “Vi” Commands This is an excellent feature for programmers to inspect their codes and for pointing out the mistakes. This command will check the source code for any possible errors or incomplete commands. “Vi” Searching “Vi” editor is equipped with two kinds of searches I. String Search II. Character Search For a string search, “/” and “?” parameters are used for searching the data as per the requirements. Character search checks the character within one line. The “f” and “F” parameters operate where, “f” searches forward and “F” searches backwards. Structure of UNIX File System As the infrastructure of UNIX is flexible, in common, UNIX systems operate on the most fundamental authorization and authentication methods i.e. password files created locally. Likewise, every system maintains a user account in a file locally at ‘/etc/passwd’. Moreover, the file having group information is maintained at ‘/etc/group’. In a corporate network environment, where the workstations are more than 200, this approach is vulnerable. If a new workstation is connected to the network requiring access to all workstation, the 400 passwords and group file must be amended to configure the new user. In order to eliminate this issue, network administrators can implement scripts or synchronize these password and group files. Moreover, if the network is too large, and the synchronization process is too complex, this would lead to users to maintain these password files, which are accessible to them. In addition, if any user has more than one account and access to several systems, user may write down the entire password list for remembrance. As this process is too complex to handle, in some organizations, network administrators grant access to all users on service accounts, which are called a root superstar account. However, granting access on super star account highlights on some disadvantages, as every user knows the password for superstar account. Due to some reasons, if a network administrator modifies the root password, nobody can access the account. The network administrator cannot track if anything goes wrong because everyone is using the root user. More often, network administrators implement synchronization procedures with the help of tools. However, synchronization also supports some flaws. The process requires a password from a password file that can be vulnerable. Moreover, synchronization tools save password rather than the hashes, due to different hashes on different systems, resulting in a vulnerable password file. Furthermore, during the synchronization process, any system that is under the repairing or upgrading phase, will be skipped, and will remain vulnerable. NIS (Network Information Services) defined, as “Network Information Services (NIS), developed by Sun Microsystems with an original name of Yellow Page, is a network naming and administration system to centralize management of UNIX systems. NIS+ is a later version that provides additional security and other facilities. It has now essentially become an industry standard. All major UNIX like systems (Solaris, HP-UX, AIX, Linux, NetBSD, OpenBSD, FreeBSD, etc) support NIS (and NIS+)” ("NIS and NIS+: Network Information System). The Network Information Service is associated with the Client / Server architecture and communicates with the Remote Procedure Call (RPC), which is defined as “a protocol for requesting a service from a program located in a remote computer through a network, without having to understand the underlayer network technologies. RPC presumes the existence of a low-level transport protocol, such as TCP or UDP, for carrying the message data between communicating programs” ("Rpc." 1). It is a service to share password files, which are locally present at each UNIX workstation. The significant difference of using NIS is that, is allows configuration of passwords on a single password file, rather than all the files available at each workstation. The NIS clients take updates by communicating to NIS server in order to configure password files. Whenever, the workstation requires passwords, NIS client extracts the password from the NIS server over the network. On the other hand, NIS implementation contains some flaws, as NIS incorporates encryption technique called as DES hashes which is not utilized in modern standard capacity. If an attacker establishes a brute force attack from NIS client, and breaks the DES hash encryption, he will gain access to the password file stored on the server. However, NIS + updates version for NIS provides more security and features as compared to the previous version, is not implemented to the mark due to complex implementation and configuration. UNIX Basic Functions For creating and managing the directory structure, various commands are executed in the command prompt. Figure 2.1 For creating a new directory we used the command “MKDIR” In figure 1.2 the name of the new directory is Accountant. Figure 2.2 (a) Figure 2.2 (b) In figure 2.2 (a) and 2.2 (b) files are created in CLI mode of UNIX for better understanding GUI snapshot is also attached. Four new files are created in the directory of “Accountant”. Names of the files are Account Payable, Account receivable, Customer File, General ledger. Figure 2.3 In Figure 2.3 we used “ls” command to view the sub directories of the directory “Accountant”. The sub directories are Account Payable, Business Reports, General Ledger, Account Receivable, and Customer file. Figure 2.4 In figure 2.4 the contents of the file are displayed in a GUI environment Figure 2.3 We have used a command “cp” for copying files from one directory to another. The directory “Accountant” was copied to the directory “Documents” Figure 2.4 For moving the directory from one to another directory “mv” command is used. In figure 2.4 “Document” has been moved to “Accountants” Figure 2.5 For deleting a directory, “rmdir” command is used. In Fig 2.5 the directory named as ‘temporary’ has been deleted. File security in UNIX UNIX contains three levels of security 1. Read 2. Write 3. Execute And respectively three different levels for directories 1. Owner / User 2. Group 3. Others The group ‘Accountant’ is created with two group members, 1. Accountant 2. Company Owner Figure 3.1 As shown in figure 3.1 the group and the group members can clearly be seen. Apart from the group members, no one else can access the contents of the files created by the owner. “Chmod” grants permissions to access the files created by the owner of the group. The users present in this group can read, write and execute files. The commands executed are: “chmod g+rwx” Accounts Payable “chmod g+rwx” Accounts Receivable “chmod g+rwx” General Ledger “chmod g+rwx” Customer File UNIX E-Mail Utility Unix Email program can only send text messages. It does not support binary files for example images, word documents. For sending binary files other email programs can be used. UNIX consists of two kinds of programs that handle emails: User Agent: This program provides the interface and interacts with the users for sending and receiving emails. The message sending and retrieval is connected to the transfer agent. Transfer Agent: This program does not interact directly with the user. It routes the messages to the required destinations. The Talk Command UNIX supports a simple chat feature which is implemented by a talk command. It means UNIX users can communicate with the UNIX users. The status of the users can be checked via “Finger” command. The command syntax is “talk (name of the user)” to initiate a chat session at the source side. The recipient should respond back with the same command including his username for establishing a connection. Once a session is created, the message will appear in the command prompt “Connection established”. Common UNIX Commands ‘ls’ This command lists the files in a directory. ‘pwd’ Parent working directory shows where currently the user is within the directory tree. ‘mkdir’ This command create a new directory ‘touch’ Easiest command to creates new empty files, change time stamps of the most recent access files. ‘rm’ rm command is use to delete a file ‘who’ This command displays the information regarding the users who is logged in, from how long, and how many users are logged in. ‘ps’ This command lists the processes which are currently running. ‘man’ This command extracts the title from the online reference manuals. ‘cat’ Extracts the contents of the file on the screen ‘grep’ This command is used for searching files ‘su’ Used to create a shell with a specific used id Work Cited Fox, Christopher. "Unix." Encyclopedia of Software Engineering, Volume 2 2 (2002): 1807-14. Print. "Ohio Supercomputing Center to Deploy Hp Linux Supercomputer." UNIX Update 13.12 (2002): 7. Print. Popovich, Ken. "IBM's New 32-Way Unix Server Turns Heads." eWeek 18.38 (2001): 11. Print. Verma, Archna. Unix and Shell Programming . Laxmi PublicationsPrint. "Berkeley sockets - Definition | WordIQ.com "Web. 3/19/2012 . "NIS and NIS+: Network Information System | NetworkDictionary "Web. 3/19/2012 . "Rpc." Computer Desktop Encyclopedia (2011): 1. Print. Read More
Cite this document
  • APA
  • MLA
  • CHICAGO
(“UNIX Operating System History Essay Example | Topics and Well Written Essays - 2500 words”, n.d.)
Retrieved from https://studentshare.org/information-technology/1396004-unix-operating-system-history
(UNIX Operating System History Essay Example | Topics and Well Written Essays - 2500 Words)
https://studentshare.org/information-technology/1396004-unix-operating-system-history.
“UNIX Operating System History Essay Example | Topics and Well Written Essays - 2500 Words”, n.d. https://studentshare.org/information-technology/1396004-unix-operating-system-history.
  • Cited: 0 times

CHECK THESE SAMPLES OF UNIX Operating System History

INFERNO Operating System

The following paper “INFERNO operating system” aims at describing an operating system, which performs a range of activities such as code conversion, memory allocation, interprocess communication, security enforcement and display: INFERNO OS.... hellip; The author states that INFERNO is an operating system designed for building distributed systems on a network of varied computer systems.... It can run as either a stand-alone operating system or as an application under the regular operating systems such as Windows and Linux (Dorward, Pike, Pressotto, Ritchie, Trickey and Winterbottom, 2002)....
6 Pages (1500 words) Assignment

What an Operating System Is

This paper ''Operating Systems'' tells that Few people exist today that do not know, at least on a fundamental level, what an operating system is.... All this is due to the operating system on every computer.... But what is an operating system, what does it do, and where did it come from?... The truth is, without an operating system installed all computers would be useless for anything short of being rather large paperweights (Business line, 2005)....
7 Pages (1750 words) Essay

Operation Systems

Just like most computer systems, UNIX can be used for a variety of purpose which is why it is popular in research institutions, government agencies, banks,… According to Williams and Sawyer, the usability of UNIX lies on its multitasking operating system.... DOS, which stands for disk operating system, was initially developed by Microsoft in 1982.... Although it is difficult to use, it became a popular operating system because of the popularity of Microsoft computers (Williams and Sawyer 147)....
5 Pages (1250 words) Research Paper

Comparison of Operating System Kernels

The modern day digital colored screened computers that we see around us in form of laptops, desktops, mobile phone (operating system enabled), and tablets, all have a complete set of body inside them.... This body is known as the operating system.... This operating system itself is a… Each of these components facilitates the core unit to operate and provide us with what we see outside.... Kernel is one of the important parts of the operating system and it can be termed as the core unit and heart of operating system....
11 Pages (2750 words) Essay

Development and History of Unix and Linux

This coursework "Development and history of Unix and Linux" focuses on the significance of UNIX certification regarding Linux, which is considered a non-issue.... hellip; In order to explore more on the history and development of UNIX, it is paramount to check on the various milestones of the initial UNIX.... Additionally, the (USG) Unix system Group, provided the internal support.... The version has the following components: a fork (), ed, roff and a file system....
7 Pages (1750 words) Coursework

Different Operating Systems

The first traces of the unix operating system can be stretched back to 1969-1970 when under trial and laboratory conditions in Bell laboratory it was introduced (Ritchie & Thompson, 1974).... here is a number of salient features and advantages that are served by the unix operating system.... The layman may know little about the operating system but it makes up for the backbone and heart of the entire computer system.... Even the small cell phones that we carry in hand have an operating system embedded within....
8 Pages (2000 words) Essay

UNIX Operating Systems

n the fall of the 1970s and 1980s, UNIX systems developed into academia's standard operating system.... This essay "unix operating Systems" focuses on UNIX systems that have brought about great impact in the world of operating systems in entirety.... Part one selects and discusses one aspect of computer systems (unix operating systems).... A number of IT professionals who came across a UNIX system in the past found the system somewhat uncompromising (Haldar & Aravind 2010)....
6 Pages (1500 words) Essay

Microkernel Operating Systems - Approaches to Operating System Design

This paper "Microkernel Operating Systems - Approaches to operating system Design" looks at the meaning of the microkernel operating system; approaches to operating system design; examples of microkernel OS; security and reliability concerns of the current OS; the future of microkernels in mainstream OS.... The userspace contains actual services of the operating system such as user interface, device drivers, file systems, and protocol stacks....
12 Pages (3000 words) Essay
sponsored ads
We use cookies to create the best experience for you. Keep on browsing if you are OK with that, or find out how to manage cookies.
Contact Us