0% found this document useful (0 votes)
48 views22 pages

Operating System For Advanced Processors: DR - Kanthi.M

The document discusses an operating systems course that covers embedded operating systems and real-time operating systems. The course objectives are to describe operating system elements, discuss real-time embedded systems and communication, enumerate embedded and real-time OSes, and analyze scheduling and inter-process communication with real-time OSes. The course plan includes modules on operating system basics, embedded OSes, ARM processors, real-time OSes like RTX and FreeRTOS, and practical sessions.

Uploaded by

Vinit Pk
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)
48 views22 pages

Operating System For Advanced Processors: DR - Kanthi.M

The document discusses an operating systems course that covers embedded operating systems and real-time operating systems. The course objectives are to describe operating system elements, discuss real-time embedded systems and communication, enumerate embedded and real-time OSes, and analyze scheduling and inter-process communication with real-time OSes. The course plan includes modules on operating system basics, embedded OSes, ARM processors, real-time OSes like RTX and FreeRTOS, and practical sessions.

Uploaded by

Vinit Pk
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/ 22

Operating System for Advanced

Processors

Dr.Kanthi.M
Professor, ECE Dept.
MIT, Manipal
COURSE OBJECTIVES

• Describe the elements of operating system.

• Discuss the real time embedded systems and real world communication

• Enumerate embedded operating systems and real time operating


systems.

• Appreciate the different types of scheduling with real time operating


systems.

• Analyze different kernel objects and inter process communication


26-08-2022 Dr.Kanthi.M, Professor, ECE Dept., MIT 2
COURSE PLAN

• Operating system basics

• Embedded operating systems

• Architecture of ARM Cortex processor

• Real time operating systems (RTX, Free RTOS)

• Programming with RTX

• Practical sessions
26-08-2022 Dr.Kanthi.M, Professor, ECE Dept., MIT 3
INTRODUCTION
Operating System Concepts
• Embedded Operating System
• An "embedded system" is any computer system or computing device that
performs a dedicated function or is designed for use with a specific
embedded software application.
• Embedded systems may use a ROM-based operating system or they may use
a disk-based system, like a PC. But an embedded system is not usable as a
commercially viable substitute for general purpose computers or devices.

• Application program written in a RAM space executes sequentially.

26-08-2022 Dr.Kanthi.M, Professor, ECE Dept., MIT 4


Operating System Concepts
Characteristics of Embedded Operating System
• Real-time operation
• correctness of computation depends, in part, on the time at which result is
delivered
• Reactive operation
• needs to consider worst-case conditions in execution in order to respond to
external events that do not occur at predictable intervals
• Configurability
• supports flexible configuration so that only the functionality needed for a
specific application and hardware suite is provided
• e.g., allows to select only the necessary OS modules to load
26-08-2022 Dr.Kanthi.M, Professor, ECE Dept., MIT 5
Characteristics of Embedded Operating System
• I/O device flexibility
• handles devices by using special tasks instead of integrating their drives into the OS kernel
• Streamlined protection mechanisms
• requires limited protection because tested software can be assumed to be reliable
• e.g., I/O instructions need not be privileged instructions that trap to OS  tasks can
directly perform their own I/O
• no use of an OS service call  avoid overhead for saving and restoring the task context
• Direct use of interrupts
• permits user process to use interrupts directly
• no need to go through OS interrupt service routines
• have efficient control over a variety of devices

26-08-2022 Dr.Kanthi.M, Professor, ECE Dept., MIT 6


26-08-2022 Dr.Kanthi.M, Professor, ECE Dept., MIT 7
Operating System Concepts
• Layers of Operating System :
• A program that controls the
execution of application
programs
• An interface between
applications and hardware

26-08-2022 Dr.Kanthi.M, Professor, ECE Dept., MIT 8


Services provided by the operating system

• Program development

• Program execution

• Access to I/O devices

• Controlled access to files

• System access

• Error detection and response

• Accounting

26-08-2022 Dr.Kanthi.M, Professor, ECE Dept., MIT 9


26-08-2022 Dr.Kanthi.M, Professor, ECE Dept., MIT 10
Continued……………..

26-08-2022 Dr.Kanthi.M, Professor, ECE Dept., MIT 11


The operating System as a Resource Manager

• A computer is a set of resources for the movement , storage and processing of data and control of
these functions

• The OS is responsible for managing these resources

The OS functions in the same way as ordinary computer software; is a program or set of programs
executed by the processor

The OS frequently relinquishes control and must depend on the processor to allow it to regain
control

26-08-2022 Dr.Kanthi.M, Professor, ECE Dept., MIT 12


The operating System as a Resource Manager

26-08-2022 Dr.Kanthi.M, Professor, ECE Dept., MIT 13


Operating System Concepts

• History of an Operating System :


• Two major versions of UNIX developed, System V, from AT&T, and BSD, (Berkeley
Software Distribution) from the University of California at Berkeley (1977)

• To write programs that could run on any UNIX system, IEEE developed a standard for
UNIX, called POSIX

• in 1987, the author released a small clone of UNIX, called MINIX, for educational
purposes. Functionally, MINIX is very similar to UNIX, including POSIX support

• Linux system was developed on MINIX and originally supported various MINIX features
like MINIX file system

• IBM PC/AT came out in 1983 with the Intel 80286 CPU.

26-08-2022 Dr.Kanthi.M, Professor, ECE Dept., MIT 14


Operating System Concepts
• History of an Operating System :
• Bell Labs found they needed an operating system for their computer center which at the time was
running various batch jobs. The BESYS operating system was created at Bell Labs to deal with these
needs. (1957)
• 1969 Unix was developed. First edition of Unix released 11/03/1971.
• Two major versions of UNIX developed, System V, from AT&T, and BSD, (Berkeley Software
Distribution) from the University of California at Berkeley (1977)
• To write programs that could run on any UNIX system, IEEE developed a standard for UNIX, called
POSIX
• in 1987, the author released a small clone of UNIX, called MINIX, for educational purposes.
Functionally, MINIX is very similar to UNIX, including POSIX support
• Linux system was developed on MINIX and originally supported various MINIX features like MINIX
file system
• IBM PC/AT came out in 1983 with the Intel 80286 CPU.
• In 1994 Red Hat Linux is introduced.
• IRIX 6.5 the fifth generation of SGI Unix is released July 6, 1998.

26-08-2022 Dr.Kanthi.M, Professor, ECE Dept., MIT 15


Operating System Concepts

• Component of an Operating System :


• Process Management
• Memory Management
• File Management
• I/O Management
• Network Management

26-08-2022 Dr.Kanthi.M, Professor, ECE Dept., MIT 16


Memory Management tasks
• All programs executed in RAM. OS keeps track of RAM for allocation
and de allocation.

• Keeps track of secondary storage and allocate space as required.

• The most important is implementation of virtual memory.

• Process isolation; Automatic allocation and management; support of modular


programming; protection and access control; long term storage

26-08-2022 Dr.Kanthi.M, Professor, ECE Dept., MIT 17


Operating System Concepts
• The Kernel
• Monolithic Kernel
• A monolithic kernel is one single program that contains all of the code necessary to perform
every kernel related task.
• Since there is less software involved it is faster.
• Example is Microsoft Windows, Unix, Linux , Solaris, OpenVMS

• Monolithic kernel supports modularity. Modules can be statically linked at compile


time.
• Modules can also be dynamically loaded. Device drivers are installed as LKM.
• Note that finally these modules becomes part of kernel

26-08-2022 Dr.Kanthi.M, Professor, ECE Dept., MIT 18


Operating System Concepts

• The Kernel
• Microkernel
• Only the most fundamental of tasks are performed such as being able to access some (not
necessarily all) of the hardware, manage memory and coordinate message passing between the
processes.

• Some processes of kernel are separated out and designated as servers. Most important servers
runs in kernel space. Others in user space.

• IPC is needed for communication between servers (making the operation slower but modularity
prevents ‘total crash’).

• Example: QNX, minix, Symbian, Mac OS X, L4Linux, Integrity, K42, etc

26-08-2022 Dr.Kanthi.M, Professor, ECE Dept., MIT 19


Operating System Concepts

• Tasks/Processes
• Process States
• New
• Ready
• Running
• Blocked
• Exit
• Process Control Block
• Multitasking
• Task Scheduling
• CPU and IO Bound Tasks
• Scheduling Algorithms

26-08-2022 Dr.Kanthi.M, Professor, ECE Dept., MIT 20


The computer hardware and software structure

26-08-2022 Dr.Kanthi.M, Professor, ECE Dept., MIT 21


Three key interfaces in a typical computer system

26-08-2022 Dr.Kanthi.M, Professor, ECE Dept., MIT 22

You might also like