0% found this document useful (0 votes)
37 views40 pages

Unit 1

iOS pdf sbbsnsmsns

Uploaded by

vanshikanath28
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
37 views40 pages

Unit 1

iOS pdf sbbsnsmsns

Uploaded by

vanshikanath28
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 40

UNIT-1

• Need of OS
• Evolution of OS
• Types of OS: Batch Processing,Multiprogramming,Time Sharing,Real
Time, Multitasking,Distributed,Network Operating System
• OS Services
• Concept of GUI
What do you mean by Operating system?
• An Operating System provides an interaction between the users and
computer hardware.
• A user is a person sitting at the computer terminal concerned about
the application rather than the architecture of the computer.
• The user never interacts with the hardware directly.
• To get the services of the hardware, he has to request through the
operating system.
What do you mean by Operating system?
• The operating system is a primary resource manager.
• It manages the hardware, including processors, memory, Input-
Output devices, and communication devices.
Need for Operating System
• OS as a platform for Application programs: The operating system provides a platform, on top of which, other programs, called application
programs can run. These application programs help users to perform a specific task easily. It acts as an interface between the computer and
the user. It is designed in such a manner that it operates, controls, and executes various applications on the computer.
• Managing Input-Output unit: The operating system also allows the computer to manage its own resources such as memory, monitor,
keyboard, printer, etc. Management of these resources is required for effective utilization. The operating system controls the various system
input-output resources and allocates them to the users or programs as per their requirements.
• Multitasking: The operating system manages memory and allows multiple programs to run in their own space and even communicate with
each other through shared memory. Multitasking gives users a good experience as they can perform several tasks on a computer at a time.
• A platform for other software applications: Different application programs are needed by users to carry out particular system tasks. These
applications are managed and controlled by the OS to ensure their effectiveness. It serves as an interface between the user and the
applications, in other words.
• Controls memory: It helps in controlling the computer’s main memory. Additionally, it allows and deallocates memory to all tasks and
applications.
• Looks after system files: It helps with system file management. As far as we are aware, all of the data on the system exists as files. It
facilitates simple file interaction.
• Provides Security: It helps to maintain the system and applications safe through the authorization process. Thus, the OS provides security to
the system.
Evolution of Operating System
• Operating systems (OS) are the backbone of every digital device,
bridging hardware and software. These operating systems are evolved
over the years and cater to the best user experience.

• The journey of operating systems started in 1940 with the beginning


of the digital age. The earliest computer was operated without an
operating system, and the programs were manually written and
executed sequentially.
Evolution of Operating System
• First Generation (Serial Processing)
• Time Period: The 1940s and 1950s marked the start of electronic computers. They were the new
trend, replacing old mechanical ones.
• Size and Cost: These early computers were huge! And they came with a big price tag too.
• Basic Functions: Despite their size and cost, they could only do simple tasks.
• No Operating System: Imagine a computer without an operating system! That’s how they were.
They just did tasks one by one.
• Serial Processing: This means they finish one task before starting the next. No multitasking here!
• Limitations of First Generation
• Wasted Power: The main computer brain, the CPU, often just sat there doing nothing. It waited a lot,
especially during tasks like reading data, which wasted its power.
• One Task at a Time: These systems were like a person who can’t multitask. They could only handle
one job at a time, making things slow.
• Long Wait Times: Imagine giving someone a job and waiting ages to see the result. That’s how these
systems were. You’d give them a task, and it took forever to get the outcome.
Evolution of Operating System
• Second Generation (Batch System)
• Due to the inefficiencies of serial processing, the need for a more optimized
approach became evident. This led to the development of a batch-processing
system. This era (1950-60) is called the second generation of operating systems.
• In a batch system, similar tasks (or jobs) are grouped into batches and then
processed sequentially without any user interaction.
• The goal was to automate the processing of jobs and minimize the setup time.
• A scripting language, Job Control Language (JCL), was introduced to manage
these batches.
• It allows operators to specify the sequence of jobs to be executed.Limitations of
First Generation
Evolution of Operating System
• Second Generation Advantages

• The system optimizes the processing sequence by grouping similar tasks,


reducing the overhead and setup time between jobs.
• It allows for automated processing of tasks, i.e., reduces the need for manual
intervention.
• The system could better utilize CPU and minimum idle time by processing tasks
in batches.
• Second Generation Limitations

• It lacks real-time user interaction, i.e., users have to wait for the entire batch to
be processed.
• If the batches contain multiple tasks, giving output takes a longer time.
• Once the batch is processed, corrections can’t be done.
Evolution of Operating System
• Third Generation (Multi-Programmed Batch System)
• In the previous two generations, the systems ran jobs one at a time in sequence, which was efficient because the CPU
had to wait for I/O operations to complete. To overcome this, multiprogramming was introduced in the next
generations of operating systems.

• Multiprogramming allows multiple jobs to reside in the main memory at once, i.e., the CPU could switch to another
job if one job needs to wait for I/O operation. Due to multi-programming CPU could process more jobs in a given
amount of time.
• Since multiple jobs are done at once, there was a need for more advanced memory management. These memory
needs led to the development of concepts such as memory partitioning, paging, and segmentation.
• Since multiple jobs are done at a time, it is important to decide which job to execute first, second, or last. Algorithms
like First-Come-First-Serve, Shortest Job Next (SJN), and Round Robin are developed.
• The complexity of the OS was increased, and system utilities were developed to help manage files, devices, and other
system resources.
• Operating systems were accompanied by hardware like Integrated Circuit, which allowed for smaller, faster, and more
reliable computers.
Evolution of Operating System
• Fourth Generation (Time-Sharing Operating System)
• The fourth-generation operating system was more commonly associated with programming
languages that were close to human language and often used for database-related tasks.

• The fourth generation has features like:

• Graphical User Interface that allows users to interact with the system using windows, icons, and
menus.
• Ability to run multiple applications simultaneously.
• Built-in capabilities to connect to and function on networks, including the Internet.
• Automatically recognize and configure hardware devices.
• Advanced security mechanism to protect against malware, unauthorized access.
• Compatibility with a wide range of hardware devices and architecture.
• The OS allocates a small time slice or quantum to each task.
Types of Operating Systems
• Operating System is a type of software that works as an interface between the system program and the hardware.
There are several types of Operating Systems many of which are mentioned below.
• Types of Operating Systems
1. Batch Operating System
2. Multi-Programming System
3. Multi-Processing System
4. Multi-Tasking Operating System
5. Time-Sharing Operating System
6. Distributed Operating System
7. Network Operating System
8. Real-Time Operating System
Types of Operating Systems
• 1. Batch Operating System
• This type of operating system does not interact with the computer directly. There is an operator which takes similar jobs having
the same requirements and groups them into batches. It is the responsibility of the operator to sort jobs with similar needs.
Batch Operating System is designed to manage and execute a large number of jobs efficiently by processing them in groups.
• Advantages of Batch Operating System
• Multiple users can share the batch systems.
• The idle time for the batch system is very less.
• It is easy to manage large work repeatedly in batch systems.
• Disadvantages of Batch Operating System
• Batch systems are hard to debug.
• It is sometimes costly.
• The other jobs will have to wait for an unknown time if any job fails.
• In batch operating system the processing time for jobs is commonly difficult to accurately predict while they are in the queue.
• It is difficult to accurately predict the exact time required for a job to complete while it is in the queue.
• Examples of Batch Operating Systems: Payroll Systems, Bank Statements, etc.
Types of Operating Systems
• 2. Multi-Programming Operating System
• Multiprogramming Operating Systems can be simply
illustrated as more than one program is present in the
main memory and any one of them can be kept in
execution.
• This is basically used for better utilization of resources.
• Advantages of Multi-Programming Operating System
• Multi Programming increases the Throughput of the
System.
• It helps in reducing the response time.
• Disadvantages of Multi-Programming Operating System
• There is not any facility for user interaction of system
resources with the system.
Types of Operating Systems
• 3. Multi-Processing Operating System
• Multi-Processing Operating System is a type of
Operating System in which more than one CPU is
used for the execution of resources.
• It betters the throughput of the System.
• Advantages of Multi-Processing Operating
System
• It increases the throughput of the system.
• As it has several processors, so, if one processor
fails, we can proceed with another processor.
• Disadvantages of Multi-Processing Operating
System
• Due to the multiple CPU, it can be more complex
and somehow difficult to understand.
Types of Operating Systems
• 4. Multi-Tasking Operating System
• Multitasking Operating System is simply a multiprogramming
Operating System with having facility of a Round-Robin
Scheduling Algorithm.
• It can run multiple programs simultaneously.
• There are two types of Multi-Tasking Systems which are listed
below.
• Preemptive Multi-Tasking
• Cooperative Multi-Tasking
• Advantages of Multi-Tasking Operating System
• Multiple Programs can be executed simultaneously in Multi-
Tasking Operating System.
• It comes with proper memory management.
• Disadvantages of Multi-Tasking Operating System
• The system gets heated in case of heavy programs multiple times.
Types of Operating Systems
• 5. Time-Sharing Operating Systems
• Each task is given some time to execute so that all the tasks work smoothly. Each user gets the time of the CPU
as they use a single system. These systems are also known as Multitasking Systems.
• The task can be from a single user or different users also.
• The time that each task gets to execute is called quantum.
• After this time interval is over OS switches over to the next task.
Advantages of Time-Sharing OS
• Each task gets an equal opportunity.
• Fewer chances of duplication of software.
• CPU idle time can be reduced.
• Resource Sharing: Time-sharing systems allow multiple users to share hardware resources such as the CPU, memory, and
peripherals, reducing the cost of hardware and increasing efficiency.
• Improved Productivity: Time-sharing allows users to work concurrently, thereby reducing the waiting time for their turn to
use the computer. This increased productivity translates to more work getting done in less time.
• Improved User Experience: Time-sharing provides an interactive environment that allows users to communicate with the
computer in real time, providing a better user experience than batch processing.
Types of Operating Systems
• Disadvantages of Time-Sharing OS
• Reliability problem.
• One must have to take care of the security and integrity of user programs and data.
• Data communication problem.
• High Overhead: Time-sharing systems have a higher overhead than other operating systems due to the need for scheduling, context
switching, and other overheads that come with supporting multiple users.
• Complexity: Time-sharing systems are complex and require advanced software to manage multiple users simultaneously. This complexity
increases the chance of bugs and errors.
• Security Risks: With multiple users sharing resources, the risk of security breaches increases. Time-sharing systems require careful
management of user access, authentication, and authorization to ensure the security of data and software.
• Examples of Time-Sharing OS with explanation
• IBM VM/CMS : IBM VM/CMS is a time-sharing operating system that was first introduced in 1972. It is still in use today, providing a virtual
machine environment that allows multiple users to run their own instances of operating systems and applications.
• TSO (Time Sharing Option) : TSO is a time-sharing operating system that was first introduced in the 1960s by IBM for the IBM System/360
mainframe computer. It allowed multiple users to access the same computer simultaneously, running their own applications.
• Windows Terminal Services : Windows Terminal Services is a time-sharing operating system that allows multiple users to access a
Windows server remotely. Users can run their own applications and access shared resources, such as printers and network storage, in
real-time.
Types of Operating Systems
• 6. Distributed Operating System
• These types of operating system is a recent advancement in the world of computer technology and are being widely accepted all over the
world and, that too, at a great pace.
• Various autonomous interconnected computers communicate with each other using a shared communication network.
• Independent systems possess their own memory unit and CPU.
• These are referred to as loosely coupled systems or distributed systems .
• These systems’ processors differ in size and function.
• The major benefit of working with these types of the operating system is that it is always possible that one user can access the files or
software which are not actually present on his system but some other system connected within this network i.e., remote access is
enabled within the devices connected in that network.
• Advantages of Distributed Operating System
• Failure of one will not affect the other network communication, as all systems are independent of each other.
• Electronic mail increases the data exchange speed.
• Since resources are being shared, computation is highly fast and durable.
• Load on host computer reduces.
• These systems are easily scalable as many systems can be easily added to the network.
• Delay in data processing reduces.
Types of Operating Systems
• Disadvantages of Distributed Operating System
• Failure of the main network will stop the entire communication.
• To establish distributed systems the language is used not well-defined yet.
• These types of systems are not readily available as they are very expensive. Not only that the underlying software is highly complex and
not understood well yet.
• Examples of Distributed Operating Systems are LOCUS, etc.
• Issues With Distributed Operating Systems
• Networking causes delays in the transfer of data between nodes of a distributed system. Such delays may lead to an inconsistent view of
data located in different nodes, and make it difficult to know the chronological order in which events occurred in the system.
• Control functions like scheduling, resource allocation, and deadlock detection have to be performed in several nodes to achieve
computation speedup and provide reliable operation when computers or networking components fail.
• Messages exchanged by processes present in different nodes may travel over public networks and pass through computer systems that
are not controlled by the distributed operating system. An intruder may exploit this feature to tamper with messages, or create fake
messages to fool the authentication procedure and masquerade as a user of the system.
Types of Operating Systems
• 7. Network Operating System
• These systems run on a server and provide the capability to manage data, users, groups, security, applications, and other networking
functions.
• These types of operating systems allow shared access to files, printers, security, applications, and other networking functions over a small
private network.
• One more important aspect of Network Operating Systems is that all the users are well aware of the underlying configuration, of all other
users within the network, their individual connections, etc. and that’s why these computers are popularly known as tightly coupled
systems .
Types of Operating Systems
• Advantages of Network Operating System
• Highly stable centralized servers.
• Security concerns are handled through servers.
• New technologies and hardware up-gradation are easily integrated into the system.
• Server access is possible remotely from different locations and types of systems.

• Disadvantages of Network Operating System


• Servers are costly.
• User has to depend on a central location for most operations.
• Maintenance and updates are required regularly.

• Examples of Network Operating Systems are Microsoft Windows Server 2003, Microsoft Windows Server 2008, UNIX,
Linux, Mac OS X, Novell NetWare, BSD, etc.
Types of Operating Systems
• 8. Real-Time Operating System
• These types of OSs serve real-time systems. The time interval required to process and
respond to inputs is very small.
• This time interval is called response time. Real-time systems are used when there are
time requirements that are very strict like missile systems, air traffic control systems,
robots, etc.

• Types of Real-Time Operating Systems


• Hard Real-Time Systems: Hard Real-Time OSs are meant for applications where time
constraints are very strict and even the shortest possible delay is not acceptable. These
systems are built for saving life like automatic parachutes or airbags which are required
to be readily available in case of an accident. Virtual memory is rarely found in these
systems.
• Soft Real-Time Systems: These OSs are for applications where time-constraint is less
strict.
Types of Operating Systems
• Advantages of RTOS
• Maximum Consumption: Maximum utilization of devices and systems, thus more output from all the resources.
• Task Shifting: The time assigned for shifting tasks in these systems is very less. For example, in older systems, it takes about
10 microseconds in shifting from one task to another, and in the latest systems, it takes 3 microseconds.
• Focus on Application: Focus on running applications and less importance on applications that are in the queue.
• Real-time operating system in the embedded system: Since the size of programs is small, RTOS can also be used in
embedded systems like in transport and others.
• Error Free: These types of systems are error-free.
• Memory Allocation: Memory allocation is best managed in these types of systems.
Types of Operating Systems
• Disadvantages of RTOS
• Limited Tasks: Very few tasks run at the same time and their concentration is very less on a few applications to avoid errors.
• Use heavy system resources: Sometimes the system resources are not so good and they are expensive as well.
• Complex Algorithms: The algorithms are very complex and difficult for the designer to write on.
• Device driver and interrupt signals: It needs specific device drivers and interrupts signal to respond earliest to interrupts.
• Thread Priority: It is not good to set thread priority as these systems are very less prone to switching tasks.
• Examples of Real-Time Operating Systems are Scientific experiments, medical imaging systems, industrial control systems,
weapon systems, robots, air traffic control systems, etc.
Operating system services
• The operating system provides the programming environment in which a
programmer works on a computer system.
• The user program requests various resources through the operating system.
• The operating system gives several services to utility programmers and users.
• Applications access these services through application programming
interfaces or system calls.
• By invoking those interfaces, the application can request a service from the
operating system, pass parameters, and acquire the operation outcomes.
Operating system services
• Following are the services provided by an operating system -
• Program execution
• Control Input/output devices
• Program creation
• Error Detection and Response
• Accounting
• Security and Protection
• File Management
• Communication
Operating system services
• Program execution
• To execute a program, several tasks need to be performed. Both the instructions and
data must be loaded into the main memory. In addition, input-output devices and files
should be initialized, and other resources must be prepared. The Operating structures
handle these kinds of tasks. The user now no longer should fear the reminiscence
allocation or multitasking or anything.

• Control Input/output devices


• As there are numerous types of I/O devices within the computer system, and each I/O
device calls for its own precise set of instructions for the operation. The Operating
System hides that info with the aid of presenting a uniform interface. Thus, it is
convenient for programmers to access such devices easily.
Operating system services
• Program execution
• To execute a program, several tasks need to be performed. Both the instructions and data must be
loaded into the main memory. In addition, input-output devices and files should be initialized, and
other resources must be prepared. The Operating structures handle these kinds of tasks. The user
now no longer should fear the reminiscence allocation or multitasking or anything.

• Control Input/output devices


• As there are numerous types of I/O devices within the computer system, and each I/O device calls
for its own precise set of instructions for the operation. The Operating System hides that info with
the aid of presenting a uniform interface. Thus, it is convenient for programmers to access such
devices easily.

• Program Creation
• The Operating system offers the structures and tools, including editors and debuggers, to help the
programmer create, modify, and debugging programs.
Operating system services
• Error Detection and Response
• An Error in a device may also cause malfunctioning of the entire device. These include hardware
and software errors such as device failure, memory error, division by zero, attempts to access
forbidden memory locations, etc. To avoid error, the operating system monitors the system for
detecting errors and takes suitable action with at least impact on running applications.
• While working with computers, errors may occur quite often. Errors may occur in the:
• Input/ Output devices: For example, connection failure in the network, lack of paper in the
printer, etc.
• User program: For example: attempt to access illegal memory locations, divide by zero, use
too much CPU time, etc.
• Memory hardware: For example, Memory error, the memory becomes full, etc.
• To handle these errors and other types of possible errors, the operating system takes appropriate
action and generates messages to ensure correct and consistent computing.
Operating system services
• Accounting
• An Operating device collects utilization records for numerous assets and tracks
the overall performance parameters and responsive time to enhance overall
performance. These personal records are beneficial for additional upgrades and
tuning the device to enhance overall performance.

• Security and Protection


• Operating device affords safety to the statistics and packages of a person and
protects any interference from unauthorized users. The safety feature counters
threats, which are published via way of individuals out of doors the manage of
the running device.
Operating system services
• File management
• Computers keep data and information on secondary storage devices like magnetic
tape, magnetic disk, optical disk, etc. Each storage media has its capabilities like
speed, capacity, data transfer rate, and data access methods.
• For file management, the operating system must know the types of different files
and the characteristics of different storage devices. It has to offer the proportion
and safety mechanism of documents additionally.

• Communication
• The operating system manages the exchange of data and programs among
different computers connected over a network.
• This communication is accomplished using message passing and shared memory.
Concept of GUI
• A graphical user interface (GUI) is a digital interface in which a user interacts with
graphical components such as icons, buttons, and menus.
• In a GUI, the visuals displayed in the user interface convey information relevant to
the user, as well as actions that they can take
History of GUI
• In the year of 1981, Alan Kay, Douglas Engelbart, and other researchers at Xerox
PARC (Palo Alto Research Centre) developed the GUI technology.
• A GUI-equipped Lisa computer was later released by Apple as per requirement on
January 19, 1983.
• Before there was a graphical user interface, communication was done via the
command-line interface, or CLI to manage the overall system.
• The end users did not find the CLI particularly enjoyable to use and modify, so
they were unfamiliar with all of the user-beneficial commands.
• Thus, the interface was put into place to fill this required gap.
• One of the most important techniques or features, as the GUI highlights, is “ease
of use.”
• The individual system of Xerox 8010 Information System served as the first GUI-
centric machine operating model in the technology.
Components of GUI
• Pointers: The pointer appears on the user’s screen as a marking symbol. The
pointer moves on to choose instructions and objects as per requirement.
• Icons: Icons allude to tiny visual representations of windows, documents, actions,
and other things on the display screen to simplify. A pointer and pointing device
can be used by the user to carry out the initial tasks for the overall processes.
• Pointing tool: At the initial stages, the pointing tool enables the user to select
and move the required pointer items on the screen, including a trackball or
mouse. It is the most beneficial tool in GUI.
• Desktop: The desktop is the screen that is contained within the icons and user
beneficial.
Features of GUI
• The graphical user interface (GUI) is very easy to use and the user can modify and
simplify the requirements.
• The required software, documents, or a few relevant programs are reflected in
the icons on the user interface to control the overall processes properly.
• A graphical user interface (GUI) has several features as per requirement, such as
tabs, a menu, pointers, and various other types of things to simplify and process
smoothly.
Pros and Cons of Graphical User Interface
Advantages and Disadvantages of GUI
• Advantages of GUI
• A graphical user interface (GUI) is basically seen as more intuitive for users than a text-based
command-line interface as per requirement, such MS-DOS or the Unix-like operating system shell
process.
• It is incredibly user-friendly and readily available to all and for novices, the user interface is rather
easy to understand and uncomplicated as per requirement.
• GUI represents the now-hidden lines of command with the required graphic elements.
• The end users must commit required instructions to memory for the software to function properly.
• Disadvantages of GUI
• An interface which is very much difficult to use will make the required tasks more difficult for the
user to complete and less effective overall processes.
• Gamers are still much affected negatively by a poor interface or surface system, therefore it
remains a problem for them to control the overall system.
Graphical User Interface vs. Character User
Interface
Graphical User Interface vs. Character User
Interface
FAQ
• What is an example of a GUI?
• An example of a GUI is the Windows desktop on your PC, where you click on icons to
open programs or files.
• Why is the GUI important?
• The GUI is important because it lets you use pictures and buttons to control a computer,
making it easier to understand and use.
• What is the difference between a UI and a GUI?
• A user interface (UI) is how you talk to your computer or phone. A GUI is a kind of UI that
uses pictures and symbols instead of words to make it easier to use your computer or
phone.
• What are GUI tools?
• GUI tools are programs that use pictures and buttons to help you use your computer
easily.

You might also like