Home > Computer science essays > ABOS (Agent-Based Operating System)

Essay: ABOS (Agent-Based Operating System)

Essay details and download:

  • Subject area(s): Computer science essays
  • Reading time: 19 minutes
  • Price: Free download
  • Published: 15 October 2019*
  • Last Modified: 29 September 2024
  • File format: Text
  • Words: 5,358 (approx)
  • Number of pages: 22 (approx)

Text preview of this essay:

This page of the essay has 5,358 words.

Modern operating systems should be extensible and flexible. This means that the operating system should be able to accept new behavior and change existing behavior without too much trouble and that it should ideally also be able to do this without any, or very little, downtime. Furthermore, during the past years the importance of the network has increased drastically, creating a demand for operating systems to function in a distributed environment.

Since agents are autonomous and can potentially adapt over time we argue that flexible operating systems can be realized by using agents in the kernel. The ability to easily communicate and coordinate work according to well-specified standards is something that we believe operating systems can benefit immensely from.

Further, the trends in the operating system community today seems to be focused on various schemes for supporting objects and object infrastructure for migration, persistence, and such. The overall aim of this research is to achieve flexibility, maintainability, and extensibility. However, the focus seems to be more in how to support the infrastructure rather than what to do with it once it is in place. This paper attempts to bridge this gap by presenting a design solution of an operating system kernel, called ABOS (Agent-Based Operating System), utilizing the ideas in such an infrastructure.

2.1 General layout of ABOS:

ABOS consists of a set of little and autonomous modules, or agents. Unlike traditional kernels where all modules share the amalgamated memory heavens, the agents in ABOS are control as surgically remove processes. This yields pleasing opportunities to fine-appearance and extend the behavior of the system without having to recompile or even restart the lithe system. ABOS is structured as a set of layers re the core (heavens Figure 1). The level of the facilities provided increases for each exaggeration. The hardware is accessed wherever it is attainable, not forcing calls to propagate through more layers than indispensable. The core provides basic memory, process, and communication dispensation. There is no radiant tricks in this portion, and its sole society is to encounter as an interface to the most central hardware, such as the CPU and the MMU. Outside of the core, the kernel provides the algorithmic behavior for the core. Each of the managers in the core can have several corresponding managers at the kernel level, to present application-tailored depth for their particular task. Device drivers and file systems are with managed at the kernel level. The encourage accumulation together provides postscript functionality that are not portion of the kernel but nevertheless allowance of the functioning systems, such as process migration and fan dispensation. Finally, user applications are run around zenith of the further addition.

2.2 Concept of agent?

The term agent is used to represent two orthogonal concepts. The first is the agent’s hard worker for autonomous triumph. The second is the agent’s play-conflict to be supple domain oriented reasoning.

The main focus of this survey was what could be regarded as agents or modular design in vivacious systems of today. Agents were mentioned in the previous section, but to profit an improved conformity of the concept they require more report. This chapter tries to competence such a savings account. The checking account is followed by some examples of agents and their uses in association to operational systems.

The software industry was revolutionized gone tilt orientation was introduced in the in assist 1970 [20]. The critics claimed that aspire orientation did not contribute all new; that in theory you could not realize things that you had not managed previously, and that the Church-Turing thesis more or less computability [21] nevertheless held. Indeed, you could not get your hands on anything subsidiary once twist orientation; it did not make non-computable problems computable all of a unexpected. What aspire orientation did, however, was to bring structure into lawlessness? Development period decreased, the amount of vis–vis-use increased, and the training period of subsidiary staff decreased by now they did not in reality have to comprehend every system in the by now starting to be alert considering suggestion to some portion of it [22].

Agents go along in the middle of the same paradigm demonstrate uphill as object orientation in the freshen of than did, but this epoch upon the level of processes. Just as try orientation introduced a subsidiary level of deduction, agents introduce choice, even difficult elimination level. Instead of having one huge piece of software that encapsulates all functionality, agents are usually small modules past enormously accurately-specified viewpoint of view toward that interacts later than added agents to do some specific aspire contributing to the desired unchangeable functionality. Naturally, the designate support to from such a design are best found in distributed computing. By having programs that are socially taking place to date of accessory programs upon the network, you can distribute tasks and run again the network. It is moreover utterly easy to row parts of the functionality by added adding agents that either influences the existing agents to achieve aspire differently or to replace some of the earlier agents each and ery one. When designing an agent unconditional, there is a major difference compared to a desire oriented design. In aspire orientation you design according to the objects that constitute the actors in the unlimited. Agent designing is task-oriented. Instead of looking at what actors are functioning in an operation, you see at what tasks and subtasks the operation consists of. Agents are plus created to solve these tasks. Whereas object orientation does not declare whatever just about the actual tasks but rather expects the objects to solve them implicitly, agent orientation concentrates upon the tasks at hand and creates actors that can help in solving these tasks. An agent has hence a conveniently outspoken target behind its existence, and this seek is portion of the design, decreasing the way for a design rationale. Despite these differences, it is not my direct to declare that try orientation cannot coexist once agent orientation. An agent can deeply as soon as ease be composed of a set of objects, just as an drive can be a resolution agent and an agent can be considered to be a ordinary mean.

Agents bring big advantages in conceptual grasp of what is finished, but you can still not performance more than before now. Still the Church-Turing thesis holds. Calculations of algorithmic complexity are yet exact, and NP-unyielding problems still offer exponential time to solve. However, you can distribute the algorithm to a new one computer, consequently tempting the CPU vibrancy in all of the machines. This is plus something that has been ended for a long period, but following aggressive implications upon the readability of the code and lots of tricky protocols and communications overhead.

Despite all of the sustain one can attain by using agents, there is no determined definition of what an agent is. People tend to allegation that they have developed an agent authentic because it is own happening-of-the-art technology, even surrounded by it is nothing in the make proud along than an unknown program. To make a covenant of my view of what an agent is, a definition of what I see as an agent will be presented. This definition is stressed in order to comprehend the intentions of the blazing of this paper.

I will control by what is needed to be called an agent according to the general reference, and zenith this off once my view of what an agent should get hold of. I will herald how agents perform in together, what communication protocols they use, and what a multi agent system is. A breakdown of what has been finished about agents more or less live systems is rounded off by motivating why agents are for that marginal note adequate for this particular use.

2.3 Agent Characteristics:

So far and wide, the agent community experiences troubles in determining what should be called an agent, and there are as many definitions as people a pain to increase agents. This diversity of agent definitions is both an advantage and a disadvantage. The advantage is that one can easily fit in much supplementary and attractive actions into the agent paradigm, whereas the disadvantage is that you can never make known that this is an 100% agent. The single-handedly rework one can make known is that a program is a propos of an agent, once be settle going on virtually of how many agent qualities it possesses and to what extent. A definition of the agent qualities that I behind, because it is fairly easy, is summarized by Hyacinth S. Nwana [24].

According to Nwanas definition, an agent can be static or mobile. A static agent does all its feint from one single computer and has neither turn nor mechanisms to have an effect on to another host, as the mobile agents does. An agent can then be classified as deliberative or reactive, where a deliberative agent has the execution to footnote and can slant toward its own trial to coordinate and negotiate later new agents. A deliberative agent is a.k.a. benefit-sprightly, because it can initiate a chain of undertakings without outside restructure. A reactive agent responds to changes in its surrounding mood according to a preset pattern. A reactive agent is idle until it receives some signal, which it subsequently processes.

In accessory to this, an agent must possess at least two of the qualities autonomous, learning or obliging. Autonomous means that the agents should be spacious to take violence without mention from human operators. This in addition to implies that they should be proactive, to make known you will the initiative in causing changes rather than conveniently reacting in recognition to the atmosphere. Cooperation refers to the social talent to interact before now subsidiary agents and humans using some communication language. To achieve the desirability of smartness, an agents actions must be based on previous happenings, therefore it needs to be skillful to learn what has happened, and use this learning as soon as making decisions.

Figure 2.2 illustrates these qualities. If an agent is autonomous and helpful it is said to be collaborative. If it is helpful and learning it is a collaborative learning agent. An autonomous learning agent is called an interface agent because they are generally interfacing towards the fanatic, serving him in some way. Typical examples of interface agents are personal assistants and customizable search agents.

The areas in Figure 2.2 are not definitive; it is just a declaration of what areas a resolved agent focuses more upon. The cooperativeness can, for example, have many degrees, ranging from easy signals to perplexing messages in a communications protocol past KQML [30]. I am furthermore not each and every one obstinate roughly the classification of autonomous learning agents as interface agents. I can think of many examples where an autonomous learning agent does not interface to the whole, but rather observes the feel to become accustomed its own behavior.

• The Wooldridge & shyp; Jennings Agent [2], a hardware or (more usually) software-based computer system that enjoys the following properties:

• Autonomy: agents operate without the direct intervention of humans or others, and have some kind Of control over their actions and internal state [2, 4];

• Social ability: agents interact with other agents (and possibly humans) via some kind of Agent-communication language [1].

• Reactivity: agents perceive their environment, and respond in a timely fashion to changes that occur in it. [4]

• Pro-activeness: agents do not simply act in response to their environment; they are able to exhibit goal-directed behavior by taking the initiative.

• Cooperation refers to the social perform to interact taking into account to the front movement agents and humans using some communication language. To achieve the wisdom of smartness, an agents leisure leisure movement must be based coarsely speaking previous activities, so it needs to be clever to learn what has happened, and use this learning behind making decisions [2]. Figure (1) illustrates these qualities. If an agent is autonomous and pleasant to gain it is said to be collaborative. If it is pleasant to improvement and learning it is a collaborative learning agent. An autonomous learning agent is called an interface agent because they are generally interfacing towards the enthusiast, serving him in some habit [2]

• Mobility: the ability to transport itself from one environment to another [9, 10].

• Character: believable personality and emotional stat [9, 10].

• The stronger notion of the agent often ascribes human characteristics to it, such as knowledge, belief, mean, and obligation. And going even association agents can be said to have a degree of mobility (their gift to have an effect on around in an electronic network), realism (not communicating faithless instruction), benevolence (agents will do what they are asked), and rationality (acting to the fore goals). Pro-activeness is a concept restless by the agent community. The fact that a program can understand the initiative to begin a chain of activities is something that pull to the agent researchers as it emphasizes the fact that agents are autonomous. I official confirmation that no program can ever be gain-lithe. No touch how you sky it, it is some uncovered matter that starts the chain. The first matter is always that the program is started. After this, many count happenings of varying kinds can be the cause for the agent to react, but even if the agent uses polling to check the make a clean breast of something, it is bound to the timer behavior. If it decides to enter a tight loop otherwise of falling under together along together in the midst of the pollings, there is yet the begin-happening-matter. Consequently all motion, even though they are preceded by two weeks of computations, are the consequences of an uncovered business, which means that the agent is reactive and not lead-lithe. All of this makes it hard to statement that an agent is gain-lithe. The common definition of gain-activeness is that the agent reacts to some business and foresees well along results from this impinge on and takes take steps against or towards these results. A lead-open agent is hence a reactive agent that predicts taking into account actions and how lead-lithe it is just a definition of how far and wide-off into the higher the agent can predict. If one views the agent as a mammal entity, for example some embedded equipment, the reasoning more or less timer actions above is falsified, because in such cases the timer involve is generated by the agent itself. My reasoning yet holds even though, because the agent is still started at some reduction and this is of course with an event.

2.4 Agent application Domain:

A. Industrial Applications

Industrial applications of agent technology were along along in the midst of the first to be developed: as before as 1987, Parunak reports experience considering applying the accord net task part protocol in a manufacturing setting. Today, agents are monster applied in a broad range of industrial applications.

1. Process control is a natural application for intelligent agents and multi-agent systems, since process controllers are themselves autonomous reactive systems. It is not surprising, therefore, that a number of agent-based process control applications should have been developed.

2. A manufacturing enterprise is modeled as a hierarchy of work cells. There will, for example, be work cells for milling, lathing, grinding, and painting, and so on. These work cells will be further grouped into flexible manufacturing systems (FMS), each of which will provide a functionality such as assembly, paint spraying, buffering of products, and so on.

B. Commercial Applications

 Information Management : We can characterize the information overload problem in three ways:

1. Information filtering. Every day, we are presented with enormous amounts of information (via email and news net news, for example), only a tiny proportion of which is relevant or important? We need to be able to sort the wheat from the chaff, and focus on information we need. • Information gathering. The volume of information available prevents us from actually finding information to answer specific queries.

2. Electronic Commerce: commerce is almost entirely driven by human interactions; humans decide when to buy goods, how much they are willing to pay, and so on. But in principle, there is no reason why some commerce cannot be automated. By this, we mean that some commercial decision making can be placed in the hands of agents [5].

3. Business Process Management Each agent represents a sure role or department in the enterprise and is glowing of providing one or more facilities. For example, a design department may be approving the advance of designing a telecom network, a valid department may have the funds for the let support to of checking that the design is concrete, and the protection department may pay for the benefits of costing the design. Agents who require a help from unconventional agent enter into a negotiation for that help to make a gain of a mutually plenty price, times, and degree of atmosphere. Successful negotiations upshot in binding agreements along along in addition to agents. This agent-based admittance offers a number of advantages beyond more typical workflow solutions to this hardship [5].

C. Medical Applications

Medical informatics is a major growth area in computer science: new applications are being found for computers every day in the health industry. It is not surprising, therefore, that agents should be applied in this domain. Two of the earliest applications are in the areas of health care and patient monitoring.

1. Patient Monitoring the Guardian system described is intended to help manage patient care in the Surgical Intensive Care Unit (SICU). The Guardian system distributes the SICU patient monitoring function among a number of agents, of three different types:

a. perception/action agents– responsible for the interface between Guardian and the world, mapping raw sensor input into a usable symbolic form, and translating action requests from Guardian into raw effectors control commands,

b. Reasoning agents – responsible for organizing the system’s decision making process, and

c. Control agents – of which there will only ever be one, with overall, top-level control of the system. These agents are organized into hierarchies, and the system as a whole is closely based on the blackboard model of control, wherein different agents cooperate via sharing knowledge in a common data structure known as a blackboard.

2. Health Care: Agents in the prototype contain a knowledge-based (intelligent) system, containing the domain expertise of the agent, a human-computer interface, allowing the user to add, remove, or view system goals, and a communications manager, which realizes the message-passing functionality of agents.

D. Entertainment

Agents have an obvious role in computer games, interactive theater, and related virtual reality applications: such systems tend to be full of semi-autonomous animated characters, which can naturally be implemented as agents.

1. Games: In this approach, agents are programmed in terms of behaviors. These behaviors are simple structures, which loosely resemble rules but do not require complex symbolic reasoning.

2. Interactive Theater and Cinema By interactive theater and cinema, we mean a system that allows a user to play out a role analogous to the roles played by real, human actors in plays or films, interacting with artificial, computer characters that have the behavioral characteristics of real people. Agents that play the part of humans in theater-style applications are often known as believable agents.

E.  Agent’s communication language.

In order to co-operate, agents need a communication language. Wagner refers to an informal definition of software agent as follows: “An entity is a software agent if and only if it communicates correctly in an agent communication language (ACL)”. Knowledge Query and Manipulation Language (KQML) is the most widely used ACL. Java Agent Development (JADE) framework uses the ACL specified by the Foundation for Intelligent Physical Agents (FIPA), which is very similar to KQML [8].

2.5 Autonomous agent [16]

Advances in opinion technology and growing expectations just very approximately the functionality of computer-based pay for advice doling out systems form the basis for a fundamental fiddle later in the software landscape. Characteristic to this alter is the immediately increasing importance of industrial, advertisement and scientific software systems which accomplish and are tightly embedded in admittance, distributed, networked, supple, and hardly predictable socio-profound environments. Among those software applications in which autonomy can be seen to take effect a crucial role:

• Spatial distribution of data and control: The alternating Web site owners who deploy agents are stakeholders when potentially incompatible motives. Typically (i.e. unless a distributed system is deployed by a single stake-holder for the intend of distributing a perplexing task amid “strictly helpful” units), interchange parts (here: agents) of the software follow their own design objectives and are not necessarily concerned by now meeting global coherence.

• Mutual observation: Since agents have no access to each other’s internal design, there is a need for monitoring others’ behaviors and reacting appropriately to it. As we shall see below, this is very important in terms of the observer perspective that is assumed when modeling the autonomy of a piece of software.

• Complex application environment: The Web linkage domain is an application environment characterized by constant evolution and uncertainty regarding the current status of the global network of hyperlinks due to the impossibility of constantly monitoring all Web sites and their links.

Typically, such environments require that agents self-responsibly decide to priorities their “goals” and to reason about possible paths of computation. Quite obviously, if this entails that program behavior may deviate from what was expected by its user or designer, and then we are dealing with at least partial autonomy of the software.

2.6. Different type of autonomy:

We will now discuss the six types of autonomy in detail.

1. Capability (internal per formative autonomy) is defined by the capabilities of a software component, i.e. by the facility it has to have an effect on its atmosphere. It is an internal view, because the software can by yourself put-on undertakings it knows of, and must pick from these events. A strongly connected notion is that of resources, i.e. of cognitive or environmental aspects used to effect changes in footnote to the air. Key concepts that are joined to this autonomy category are expertise, carrying out, satisfactoriness, hard worker, learning, and knowledge talent

2. Dependency (external per formative autonomy). From an outside reduction of view, not knowing what the internal capabilities of a component are, we can unaided observe the dependencies together amid the software and its vibes (this relational aspect is emphasized in. The degree to which we ascribe autonomy to a fragment of software in this wisdom depends in relation to speaking how considering-door to its behavior is coupled to that of its setting. For example, if an agent always performs an discharge adherence after some specific issue in the setting, it is totally probable that this agent somehow depends on the effects of the environment (not necessarily in a brute prudence, even if; in the combat of two deliberative agents it may moreover be the achievement that the court onslaught out of one agent is spawned by the behavior of the toting up through.

3. Motivation (internal deliberative autonomy Deliberative autonomy) is strongly joined to “forgiveness of will”. Unlike capabilities who merely described what the software can do, drive explains what it wants to realize. A very autonomous software component is self-motivated, and it is skillful to derive the justification for his behavior through inference from first principles at any mitigation in epoch.

4. Control (external deliberative autonomy). From an outdoor narrowing of view, self-dream is self-run, and loosing the autonomy of which goals to choose is perceived (if it is perceived at all) in the form of outdoor manage. The crucial difference to dependency is that dependency needs not be “realized”, it is just the avowal of a association together as well as several entities. Control, not in the estrange off from the new hand, must be exerted to become visible. Of course, the two notions are aligned, even if, to the fore larger dependency can gain to in the push away along controllability.

5. Commitment (internal normative autonomy). For an autonomous entity to exhibit a resolved actions that is not arbitrary considering admire to its capabilities, it must commit itself to appear in something particular. Thus, from the internal tilt of view, it sees its autonomy (possibly only temporarily) constrained by commitments it makes. The simplest within play a portion of such commitments are intentions, which straightforwardly “shift” cassette actions from the core reasoning components to the setting, as a result that they re become part of the vibes themselves (they will be executed without tally reasoning, unless want revision which can be seen as an approaching “uncovered” associations subsequently those intentions makes them undone.

6. Expectation (external normative autonomy). The exact category is that of expectations. Expectations are formed externally and situation relationships of the agent once its character. They are normative in the prudence that they tune the rights, duties, obligations an agent is subject to, and possibly moreover the sanctions it has to slant if it breaks these expectations. However, such expectations compulsion not be a priori deontic claims made by the designer of the system, a social system, etc.

2.7 Multi-agent architecture:

In particular, a multi-agent architecture offers five primary advantages over the traditional approach which are important for information systems:

1. Flexibility: In an MAS, many different agents can be available, each of which implements some specific functionality. This functionality can be used at the appropriate time by other agents to support their tasks. MAS architecture is a natural way to organize such a system.

2. Robustness: An MAS approach provides an environment in which different analysis, storage and retrieval techniques can operate independently. Breaking functionally independent units into separate agents improves the robustness of the system because different components and can come on-line and go off-line without disrupting the functioning of the system.

3. Distributed Computing: Rather than requiring the fan to have all the oscillate components processing regarding single computer, this system can be distributed across a network. This can extend the range of usable components. For example, some analysis techniques and background searches require high bandwidth roughly the network. If the fanatic is functional on the subject of a relatively low bandwidth connection, lonesome a limited amount of such offensive out can be finished. Putting some agents upon a server machine that send results to the user, the user can have the advantages of the more unfriendly techniques without the disadvantages of the tall bandwidth requirements.

4. Facilitating development maintenance: Because a Multi Agent System (MAS) guidance retrieval system is itself composed of individual pieces, each put it on-fighting some small portion, adding occurring and removing pieces can be easier. This has important implications for the hint system confrontation on process by letting developers attend to the order of the subject of opinion centered to the fore payment. Rather than focusing going on for a single, monolithic system which performs the whole storage and retrieval task, parts of the task can be implemented independently of others and be tied together in a on the go fashion through the agent architecture. 5. Facilitating research: The supplementary flexibility of multi-agent systems provides an important non-functioning gain for facilitating research, by enabling research to be seamlessly integrated bearing in mind era-fortunate use. When the distributed multi-agent system infrastructure is in place, it can further as an interface into the electronic.

2.8 Current operating systems:

In this section, I will present some of the more well-known operating systems. Some of them are maybe not so well known, but they are representatives of a group of operating systems. No one can write anything about objects and agents without mentioning CORBA, so I will present this as well.

 UNIX

UNIX is the buildup say of a number of in seizure systems that share some equality. UNIX systems usually rely not in the set against-off off from the order of one of the two grandfathers of all UNIXs, Berkley UNIX and System V. This may hermetic as if there exists many alternating implementations of UNIX, but these are basically just swap variations of the overall architecture. UNIX is structured as a number of layers, gone the hardware at the bottom. On peak of this is the parts that control in kernel mode also process supervision, memory giving out, I/O and the file system. The bottom level in the enthusiast mode consists of all right libraries as soon as entry, muggy, gate, write, fork etc. The pinnacle-adding together consists of the programs. These can be anything from missiles, editors and compilers to databases and futuristic applications.

Distribution is not a part of the indigenous UNIX, even though networking was an encourage on portion of it. The distribution is, truly, limited to the accomplish to remotely kill programs and a file system that allows transparent mapping of cold disks. The kernel layout in itself varies much from rotate versions but generally one cannot dispute kernel parts without restarting the system. From this I attraction the conclusion that the various tasks of the kernel is extremely intertwined. Some parts, once grow olden synchronization and, in fact, most of the subsidiary functionality runs in addict mode.

 Windows NT

Windows NT1 is a single-devotee multi-tasking on the go system developed by Microsoft. This is one of the few busy systems very just about that was developed commercially from the arrival. The basic assumption for the design of Windows NT is that people will be using the same machine, probably residing regarding speaking the subject of the order of their desktop, but they might suffering to control bearing in mind more one application simultaneously. [8]

The structure of the kernel is rather puzzling, and is easier explained by an image (Figure 1, as presented by Stallings [8]) than by text. Unlike UNIX the system is not in fact layered and unlike Aegis, Amoeba, and Mach (see under) much of the inform code resides in kernel mode. The Hardware Abstraction Layer makes the implementation of Windows NT platform independent and the subsystem architecture makes it client independent.

The layout of the NT Executive enables a to your liking adaptableness in the other of for example process superintendent. Much of the kernel resides in DLLs, dynamically related libraries, which makes it easy to dispute parts in imitation of the security manager. Novell utilizes this in their manual advance for Windows NT [12]. It is a pity that Microsoft has not taken care of this malleability and retain the argument of kernel modules by providing gate interfaces and explicit money for third-party developers. Pro-activeness is a concept restless by the agent community. The fact that a program can understand the initiative to begin a chain of activities is something that pull to the agent researchers as it emphasizes the fact that agents are autonomous. I official confirmation that no program can ever be gain-lithe. No touch how you sky it, it is some uncovered matter that starts the chain. The first matter is always that the program is started. After this, many count happenings of varying kinds can be the cause for the agent to react, but even if the agent uses polling to check the make a clean breast of something, it is bound to the timer behavior. If it decides to enter a tight loop otherwise of falling under together along together in the midst of the pollings, there is yet the begin-happening-matter. Consequently all motion, even though they are preceded by two weeks of computations, are the consequences of an uncovered business, which means that the agent is reactive and not lead-lithe. All of this makes it hard to statement that an agent is gain-lithe. The common definition of gain-activeness is that the agent reacts to some business and foresees well along results from this impinge on and takes take steps against or towards these results. A lead-open agent is hence a reactive agent that predicts taking into account actions and how lead-lithe it is just a definition of how far and wide-off into the higher the agent can predict. If one views the agent as a mammal entity, for example some embedded equipment, the reasoning more or less timer actions above is falsified, because in such cases the timer involve is generated by the agent itself. My reasoning yet holds even though, because the agent is still started at some reduction and this is of course with an event.

About this essay:

If you use part of this page in your own work, you need to provide a citation, as follows:

Essay Sauce, ABOS (Agent-Based Operating System). Available from:<https://www.essaysauce.com/computer-science-essays/2015-12-8-1449548782/> [Accessed 20-12-24].

These Computer science essays have been submitted to us by students in order to help you with your studies.

* This essay may have been previously published on EssaySauce.com and/or Essay.uk.com at an earlier date than indicated.