12

Click here to load reader

Final Project IEEE format

Embed Size (px)

Citation preview

Page 1: Final Project IEEE format

Project Title: ________Issue in distributed system___________________________________________

NAME OF STUDENT: _________Faizan Ahmed_____________________________________________________

Course: _________Operating system__________________________________________________

Submitted: _________Sir Muhammad Hussain_____________________________________________

Student -ID #: _________58579___________________________________________________________

Class -ID #: _________68294___________________________________________________________

Local Phone: _____ _ 0333-3138510 ____________________________________________________

E-Mail Address: _________ [email protected]__________________________________________

Department: _________Computer science_________________________________________________

Campus: _________City Campus______________________________________________________

Page 2: Final Project IEEE format

Issues in Distributed System

Abstract—

The purpose of this paper is to determine the issues that influence distributed system and also how they work in a particular sys-tem. This research is gathered from differ-ent researches from www.scholors.google. Distributed computing becomes more ex-tensive; both in high-energy physics and in other applications, centralized operating systems will gradually give way to distrib-ute ones.

Key words—Distributed system, services, files, tolerance

I. INTRODUCTION

Distributed Systems is going to be a very important part of coming future. A distributed operating system is one that looks to its users like an ordinary centralized operating system but runs on multiple, independent central processing

units (TANENBAUM & RENESSE). It is a structure which consists of hardware and software which is placed at networked computers and message passing converse and synchronize activities of those computers (Coulouris).a system in which a pool of independent computers appear as a single computer to users is known as distributed system (Tanenbaum). There are several types of distributed systems each of those kinds are intended to have different kind of challenges.it is a system of so many independent processors to achieve a common and single goal distributed computer system there are no pipelines and array of processors this system excludes computer networks like internet.

Page 3: Final Project IEEE format

II. LITERATURE REVIEW

Distributed system includes a platform which sometime leads to difficulties just to provide security assurance. Users use group of computers as a single computer. Distributed system plays a vital role in one’s life. The recent innovation in Web-based Applications put a severe impact. Distributed computing is a very vast area with great potential to progress the efficiency of the processes of businesses. (Nadiminti, Assunção, & Buyya)While developing a distributed system there are so many challenges which depend on the necessities of a system. One of the most common issues in distributed system is heterogeneity, there should be numerous objects that are able to interoperate with on another even though they are different in hardware architectures, operating systems, communication protocols, programming languages, software interfaces, security models, and data formats. Another issue which cause problem in system is transparency, the whole system must be act as a single user and the complications and connection between the mechanisms should be unseen to the end user. Fault tolerance and failure management is another problematic issue in distributed system, Failure of one or more components should not Shutdown the whole system and it must be out of the way. Scalability is another part which should be improve in distributed system, the growing number of users and increased resource should enhance the performance of the system through

which the system will work effectively. Next section will discuss the issues and challenges in distributed system and related programs and solution to overcome and solve those particular issues.

III. ISSUES IN DISTRIBUTED SYSTEM

This section will discuss an issue which usually comes in distributed system.

1. Communication primitives,2. Naming and protection,3. Fault tolerance4. Resource management,5. Services to provide

1. Communication primitives:

Those do computers which contain distributed system usually do not share primary memory and the communication which passes memory technique i.e. semaphores and monitors are not applicable. A commonly used framework for message passing system is the ISO OSI reference model it has seven layers with well-defined functions (Zimmerman, 1980)by using this type of model we can connect computers with different operating system.

2. Naming and Protection

Almost all operating system have files, directories, segments, mailboxes, processes, services, nodes, and I/O devices. When any of these processes starts it represent with its names these names are ASCII strings.

Page 4: Final Project IEEE format

Naming as Mapping

Naming is very big issue while mapping two domains like if the directory system in UNIX provides a mapping between ASCII path names and i-node numbers. When an OPEN system call is made, the kernel converts the name of the file to be opened into its I-node number. Internal to the kernel, files are nearly always referred to by i-node number, not ASCII string. Just about all operating systems have something similar. Another example of naming is the mapping of virtual addresses onto physical addresses in a virtual memory system. The paging hardware takes a virtual address as input, and yields a physical address as output for use by the real memory.

Name Servers

If we talk about centralized system the problem of naming handle in an efficient way. The system keeps a table or data base which gives essential name-to-object mappings. A conventional overview of this approach to distributed system is the single name server model.it provides a server that receives names in one domain and maps them into another other domain. For example if a user send a service it will receive in ASCII to the name server and it reply with the node number. File directories for example can be observed as a special case of name service.

3. Fault Tolerance

In the recent years there are two approaches which are found in distributed

system is fault tolerance. They are totally different in orientation, goals and attitude toward the spiritually issue.one approach is based on redundancy and other one is based on atomic transaction.

Redundancy Techniques

Redundancy techniques take advantages of the present multiple processors by replicating critical processes on two or more machines. This technique provides backup of every process on different processor. This processor communicates through massage passing. Whenever user sends any massage it also send the same massage to the backup process. Researcher suggests that this system assures that neither the primary nor the backup can continue running until it has been verified that both have received the accurate massage. The fault tolerance comes when one process crashes due to any hardware fault the other one can continue and the remaining process can replicate itself thus making a new backup to maintain fault tolerance in the future. (al.1983). According to a research a system that put almost no additional load on the processes being backed up (Powell and Presto 1983).In their system, the massages sent on the network are recorded by a special process i.e. recorder., each process check itself onto a remote disk.One disadvantage of duplicating there is extra processors required for every process, another understated problem, is that if messages are exchange by process at a high rate, a significant amount of CPU time take time in keeping the processes

Page 5: Final Project IEEE format

synchronized at each message exchange. (Avizienis)

Atomic Transaction

When multiple users spread over several machines are concurrently updating a distributed data base, and one or more machines crash, the potential for chaos is truly impressive. In a certain sense, the current situation is a step backwards from the technology of the 1950s. The normal way of updating a data base then was to have one magnetic tape, called the "master file," and one or more tapes with updates This scheme had the very real advantage that if the update program crashed, one could always fall back on the previous master tape and the update tapes. In other words, an update run could be viewed as either running correctly to completion, or having no effect at all (Lampson)

4. Resource Management

Resource management is an important part of distributed system and it is totally different from that in centralized system. Centralized systems always have tables which provide comprehensive and up to date status information about all the resources which is being managed. On the other hand distributed system has harder job while finding whether a processor free.

5. Process Management

A set of available processors in distributed system is an important key resource. If these machines are time shared with n process table slots per machines, each

physical processor can be regarded as N virtual processors to be managed.it has been suggested from the theory that tabs on the processors should be organized in a logical hierarchy (Tilborg, 1980). This approach organizes the machines like people in corporate, military, academic, and other real-world hierarchies. Some of the machines are workers and others are managers. For each group of k workers, one manager machine is assigned the task of keeping track of who is busy and who is not.

6. Services

A distributed consist of a function that have usually provided by operating system and offered by user level server processes this approach is reliable kernel and modify new test services. Following section will describe services.

File Service

File service is an important service in distributed system. Research suggests that most of the file services and file servers are implemented from many years and there is a lot of experience presented. and there are many ways to make a file server. Conceptually, one can insulate three components of a file system:- Disk service- Flat file service- Directory service Print Service

Almost every distributed system possess a type of print service, on this service the

Page 6: Final Project IEEE format

customers can share file, file name or ca-pabilities for files which contain all the in-formation required for printing, some text formatting may be needed before printing. Seldom has it happened that the complete file is available on print server in advance, the server has to buffer it. Also in some cases only the file name or capability is given to the print server interpreting the file block by block as required. This tech-nique does not require buffering on the server side but some problem may occur if the file is changed subsequent to the time the print order is sent before the real plan-ning. Clients commonly prefer “call by value” rather than ‘call by reference” for the printers.

Process Service

All the distributed systems require some techniques for building new processes. At the lowest stage, inside the system Kemal, there has to be a new process from begin-ning. One possible way is to have a FORK similarly UNIX have but some other tech-niques may also available. For instance, in Amoeba it is a way to ask the Kemal to ad-just the memory of given size. The caller then read and writes these portions taking them with the text, data and stack parts for a new process. Consequently the caller can send the filled in segments back and ask for a new process built up from these pieces.

Terminal Service

The ways in which the terminals are at-tached to the system rely largely on the system architecture. One way is that if sys-

tem contains few minicomputers each have a clear and stable user population then ev-ery terminal can be hardwired on the com-puter. On the other hand if the system con-tains a large number of processors that are dynamically adjusted as required, the best way is to attach the terminal to one or more terminal server that serves as concen-trators.The terminal server can contain such char-acteristics as local echoing; interline edit-ing, and window management, if desired. Additionally, the terminal server can also disappear the idiosyncrasies of the various terminals that are used by mapping them all onto a standard imaginary terminal.

Mail Service

Electronic mail is very famous application of computers now days. Actually each uni-versity computer science department in the Western world has one or more interna-tional networks for communication. When a website contain a single computer, hav-ing track of mail is quite easy. On the other hand if the website has a large number of computers spread over multiple local net-works. Clients are able to see their mail on any computer that may be logged on to. This desire gives rise to the need for a ma-chine-independent mail service, rather like a print service that can be accessed system wide.

Time Service

To operate the time service there are two ways. The most common and simple tech-nique is to just ask the time. One other way is that time service can present the time

Page 7: Final Project IEEE format

with some intervals, having track of all the other machines in synchronization. The time server can have a radio receiver that changed to WWV or some other transmit-ter that gives the exact time even to the mi-crosecond.

Boot Service The boot service has two functions: pri-marily it build up the system from begin-ning when the machine is on and secondly it manages to survive the core services when their servers crashed. IN both situa-tions it is helping if the boot server may have a hardware mechanism for forcing a recalcitrant machine to go to a program in the balky machine’s own ROM, in order to reset it. The ROM program can simply set in a loop waiting for a message from the boot service. The message would then be loaded into that machine’s memory and executed as a program. The second func-tion presented above is "immortality ser-vice." An important service could register with the boot service, which would then poll it after some interval to see if it were still functioning. If not, the boot service could initiate measures to patch things up, for example, forcibly reboot it or allocate another processor to take over its work. To provide high reliability, the boot service should itself consist of multiple processors, each of which keeps checking that the other ones are still working properly.

CONCLUSION

Most of the researches on distributed oper-ating systems focus on the remote proce-

dure sound as communication primitive. Naming is usually done by specialized name servers, often hierarchically orga-nized. Resource management in a distrib-uted system is an open subject, with a few scheduling and allocation algorithms known, but much work remaining to be done. Fault tolerance can be come up to ei-ther using redundancy techniques, or using atomic actions. Finally, many kinds of servers can be combined into a distributed system to move traditional operating sys-tem functions out of the kernel and into user space, including the file system, process management, and terminal man-agement

REFERENCES

1. Zimmerman. (1980).2. 1980, B. a., 1981, F. a., 1980, S. e.,

& al.1979, S. e. (n.d.).3. al., B. e. (1983).4. Nadiminti, K., Assunção, M. D., &

Buyya, R. (n.d.). Distributed Systems and Recent Innovations: Challenges and Benefits.

5. TANENBAUM, A. S., & RENESSE, R. V. (n.d.). Distributed Operating Systems.

6. Tilborg, W. a. (1980)7. (Avizienis)8. (Lampson)