Professional Documents
Culture Documents
OS Docs
OS Docs
OS Docs
resources were used effectively, but it did not provide for user interaction with computer
systems. Time-sharing is a logical extension of multiprogramming. The CPU performs many
tasks by switches that are so frequent that the user can interact with each program while it is
running. A time-shared operating system allows multiple users to share computers
simultaneously. With each action or order at a time the shared system becomes smaller, so
only a little CPU time is required for each user. As the system rapidly switches from one user
to another, each user is given the impression that the entire computer system is dedicated to
its use, although it is being shared among multiple users.
In the above figure the user 5 is active state but user 1, user 2, user 3, and user 4 are in a
waiting state whereas user 6 is in a ready state.
1. Active State – The user’s program is under the control of the CPU. Only one
program is available in this state.
2. Ready State – The user program is ready to execute but it is waiting for its turn to
get the CPU. More than one user can be in a ready state at a time.
3. Waiting State – The user’s program is waiting for some input/output operation.
More than one user can be in a waiting state at a time.
Advantages
1. Each task gets an equal opportunity.
2. Fewer chances of duplication of software.
3. CPU idle time can be reduced.
Disadvantages
1. Reliability problem.
2. One must take care of the security and integrity of user programs and data.
3. Data communication problem.
The Batch operating system is a real-time operating system designed for batch processing.
It features a modular architecture, which allows for the addition of new modules without
affecting the existing codebase.
A batch processing operating system (bpos) is a computer operating system that processes
large amounts of data in batches. This type of system is typically used by businesses and
organizations that need to process large amounts of data quickly and efficiently. Batch
processing systems are generally faster and more efficient than traditional interactive
systems, which can make them ideal for businesses that need to process large amounts of
data on a regular basis.
Features of BPOS:
Batch OS includes a library for scheduling tasks. This library allows tasks to be scheduled in
a hierarchical manner, which makes it easy to manage and schedule tasks across a network
of computers. The user interface allows users to view and manage tasks in a graphical
manner.
Batch OS is designed to simplify the process of managing and scheduling tasks. It includes
a command line interface, a library for scheduling tasks, and a user interface for managing
tasks. Batch OS is designed to simplify the process of managing and scheduling tasks
across a network of computers.
Working: The Batch operating system is a new, open-source operating system that is being
developed by the Berkeley Open Infrastructure for Network Computing (BOINC) project.
Batch is a modular operating system that can be assembled from smaller pieces, allowing it
to be customized to specific needs.
The Batch project is led by Berkeley computer scientist Pieter Abbeel, who is also the
project’s primary code contributor. The batch is designed to be lightweight and efficient and
is intended to be used primarily in grid computing environments.
The Batch project is currently in the development stage, and there is still a lot of work to be
done before the operating system is ready for use. However, progress has been made in
recent months, and the project is expected to be completed within the next year.
There are many types of batch operating systems. One popular type is the scheduled batch
system. This type of system is used to control the execution of a series of tasks or jobs.
Other types of batch systems include the interactive batch system, the real-time batch
system, and the concurrent batch system.
1. Efficient use of resources: Batch processing operating systems allow for the
efficient use of computing resources, as jobs are processed in batches and
scheduled to run when resources are available.
2. High throughput: Batch processing operating systems can process a large
number of jobs quickly, allowing for high throughput and fast turnaround times.
3. Reduced errors: As batch processing operating systems do not require user
intervention, they can help reduce errors that may occur during manual job
processing.
4. Simplified job management: Batch processing operating systems simplify job
management by automating job submission, scheduling, and execution.
5. Cost-effective: Batch processing operating systems can be cost-effective, as they
allow for the efficient use of resources and can help reduce errors and processing
time.
6. Scalability: Batch processing operating systems can easily handle a large number
of jobs, making them scalable for large organizations that require high-volume
data processing.
Disadvantages:
● Limited functionality: Batch systems are designed for simple tasks, not for more
complex tasks. This can make them difficult to use for certain tasks, such as
managing files or software.
● Security issues: Because batch systems are not typically used for day-to-day
tasks, they may not be as secure as more common operating systems. This can
lead to security risks if the system is used by people who should not have access
to it.
● Interruptions Batch systems can be interrupted frequently, which can lead to
missed deadlines or mistakes.
● Inefficiency: Batch systems are often slow and difficult to use, which can lead to
inefficiency in the workplace.
Here the system is connected to an external event, whenever that event is completed a
signal is sent to the system with the help of a sensor. Now that signal is communicated to the
system as an interrupt. After the operating system receives an interrupt, it initiates a process
that is associated with it. Once the interrupt is completed, the operating system handles the
power back to the CPU. Now since all this is happening in real-time and there's a need for a
quick response from the system speed is very important here.
A hard real-time operating system is used when we need to complete tasks by a given
deadline. If the task is not completed on time then the system is considered to be failed.
For example, the pacemaker. A pacemaker has flexible, insulated wires (leads) that are
placed in one or more chambers of the heart. These wires deliver electrical pulses to adjust
the heart rate. And these wires require a hard real-time operating system.
A soft real-time operating system is used where few delays in time duration are acceptable.
That is if the given task is taking a few seconds more than the specified time then also no
critical damage takes place.
For example,, telephone switches, the sending or receiving of the call can take some time. It
will not be considered a failure.
A firm real-time operating system lies between the hard and soft real-time operating system.
A firm real-time system is one in which a few missed deadlines will not lead to total failure,
but missing more than a few may lead to complete or catastrophic system failure. However,
unlike a hard real-time task, even if a firm real-time task is not completed within its deadline,
the system doesn’t fail but the late results are merely discarded.
● The response time of RTOS is highly predictable. That is we can guess the time
system will take to complete the task.
● All the interrupt requests go to the Kernel. The kernel is responsible for making all the
decisions.
● Kernel saves the state of each task and decides which task to execute next. Task
management and task scheduling are done by the kernel.
● After the interrupt task is executed, the kernel gives control back to the CPU. Then
CPU carries on with other processes.
● RTOS occupies very little space. Since the size of programs used in RTOS is small.
● RTOS consumes very less resources. Since maximum utilization of resources
(memory, registers, clocks, etc.) happens in RTOS, we can also start our system with
fewer resources.
1. Security Since the real-time application needs to be connected to the internet most of the
time, security becomes the most important factor in selecting RTOS.
2. Environment It's very important to check whether the RTOS that we are using goes well
with our other systems. We should consider the latest RTOS with good support features.
3. Features Before selecting an RTOS, it is advised to look into all of its specifications. Like
memory allocations, resources required, number of tasks to be processed, etc., and should
select the one which matches our requirements.
4. Middleware In order to integrate the RTOS into our present system, we need some
middleware. Middleware is software that lies between an operating system and the
applications running on it. Thus good middleware can save our time and make the
integration fast.
5. Performance Since RTOS is all about real-time application performance becomes a very
important criterion it. The better the performance, the better the system.
● PCOS: RTOS is widely used in embedded applications and PCOS is one example of
embedded RTOS.
● RT Linux: RT Linux stands for Real-time Linux. It operates on a Linux system. The
real-time operating system is used between the Linux system and the hardware.
● Lynx: Lynx is a microkernel-based RTOS that is fully Linux-compatible, a Linux
program’s binary image can be effectively run on Lynx.
● Costly: The hardware requirements like device drivers are a bit expensive.
● Complex: The algorithms and programs used in real-time systems are complex.
● Limited Tasks: The tasks or programs that real-time systems can process at a given
time are limited.
Effective communication channels like high-speed buses and telephone lines connect all
processors, each equipped with its own local memory and other neighboring processors.
Due to its characteristics, a distributed operating system is classified as a loosely coupled
system. It encompasses multiple computers, nodes, and sites, all interconnected through
LAN/WAN lines. The ability of a Distributed OS to share processing resources and I/O files
while providing users with a virtual machine abstraction is an important feature.
2. Peer-to-Peer Systems
3. Middleware
4. Three-Tier
Development is made easier because client data is saved in the intermediate tier rather than
the client itself. Online applications are where this kind of architecture is most frequently
found.
5. N-Tier
N-tier systems are utilized when a server or application has to send requests to other
corporate services over a network.
● Solaris: The SUN multiprocessor workstations are the intended use for it.
● OSF/1: The Open Foundation Software Company designed it, and it works with
Unix.
● Micros: All nodes in the system are assigned work by the MICROS operating
system, which also guarantees a balanced data load.
● DYNIX: It is created for computers with many processors, known as Symmetry.
● Locus: It can be viewed simultaneously from both local and distant files without
any location restrictions.
● Mach: It permits the features of multitasking and multithreading.
● It can increase data availability throughout the system by sharing all resources
(CPU, disk, network interface, nodes, computers, and so on) between sites.
● Because all data is replicated across all sites, it reduces the probability of data
corruption because users can access data from another operating site in the
event that one site fails.
● Data transfer from one site to another is accelerated by it.
● Since it may be accessible from both local and remote sites, it is an open system.
● It facilitates a reduction in the time needed to process data.
● The majority of distributed systems are composed of multiple nodes that work
together to provide fault tolerance. Even if one machine malfunctions, the system
still functions.
● Which tasks need to be completed, when they need to be completed, and where
they need to be completed must be determined by the system. The restrictions of
a scheduler might result in unpredictable runtimes and unused hardware.
● Since the nodes and connections in DOS need to be secured, it is challenging to
establish sufficient security.
● Comparing a DOS-connected database to a single-user system, the latter is
easier to maintain and less complex.
● Compared to other systems, the underlying software is incredibly sophisticated
and poorly understood.
1. Since the development of handheld computers in the 1990s, the demand for
software to operate and run on these devices has increased.
2. Three major competitors have emerged in the handheld PC world with three
different operating systems for these handheld PCs.
3. Out of the three companies, the first was the Palm Corporation with their
PalmOS.
4. Microsoft also released what was originally called Windows CE. Microsoft’s
recently released operating system for the handheld PC comes under the name
of Pocket PC.
5. More recently, some companies producing handheld PCs have also started
offering a handheld version of the Linux operating system on their machines.
1. Palm OS
2. Symbian OS
3. Linux OS
4. Windows
5. Android
1. Less Cost.
2. Less weight and size.
3. Less heat generation.
4. More reliability.