Professional Documents
Culture Documents
LEARNING MODULE
COMPILED BY
MARIA RODELYN S. TIBON
2020
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
VISION
MISSION
QUALITY POLICY
CORE VALUES
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
TABLE OF CONTENTS
............................. 5
REFERENCES ........................................................................................................................... 38
LEARNING GUIDE(WEEK4) ..................................................................................................... 39
EXPECTED COMPETENCIES ..................................................................................................... 39
CONTENT/TECHNICAL INFORMATION ................................................................................... 39
PROGRESS CHECK ................................................................................................................... 47
REFERENCES ........................................................................................................................... 72
LEARNING GUIDE(WEEK6-7) .............................................................................................. 51
EXPECTED COMPETENCIES ..................................................................................................... 39
CONTENT/TECHNICAL INFORMATION ................................................................................... 39
PROGRESS CHECK ................................................................................................................... 47
REFERENCES ........................................................................................................................... 72
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
LEARNING GUIDE(WEEK8-10) .............................................................................................. 51
EXPECTED COMPETENCIES ..................................................................................................... 56
CONTENT/TECHNICAL INFORMATION ................................................................................... 56
PROGRESS CHECK ................................................................................................................... 63
REFERENCES ........................................................................................................................... 64
LEARNING GUIDE(WEEK11-13) .............................................................................................. 65
EXPECTED COMPETENCIES ..................................................................................................... 65
CONTENT/TECHNICAL INFORMATION ................................................................................... 65
PROGRESS CHECK ................................................................................................................... 71
REFERENCES ........................................................................................................................... 72
COURSE DESCRIPTION
This course gives the overview of the basic concepts and functions
common
to all operating systems. Students will learn how the development of the different
computer systems and the increasing demand of the user has driven the
improvements and updates of the operating system. Along with this, the course will
include topics on the various features, capabilities and design of the different
operating for different types of platforms.
The course will cover the different types of Operating Systems for
different
platforms like of the desktop, mobile and network operating systems. These
different operating systems will be gauged according to the following features: user
interface capability, process management, memory management, and file systems
and support for distributed systems.
Particular emphasis will be given to components, functionality, and
features
of the current popular operating systems in the industry.
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
COURSE OUTCOMES
By the end of the course, the students will be able to do the following:
LO2: Differentiate the different operating systems used in the different platforms.
LO4: Use the desktop operating system and customize user interfaces, file system and
other components
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
DURATION
This module can be undertaken under a self-phased learning; however,
the learner should also take note that the course may have total time
duration to accomplish. It is therefore encouraged that the learner should
properly read, analyze concepts and ideas presented, and reflect on them.
PRE ASSESMENT
At the start of the module, the learner is advised to take a personal
preassessment test to gauge the knowledge and skills requirements to
understand the course.
ASSESSMENT
At the end of every module the Activities and Progress-Check Questions
will help the learner assess their own progress on the course.
Assessment Tasks may be individual or by group. Group work is
indicated before the assignment. It is advised to have at least 2 members
with stable internet connection
Each individual or group may also be provided with a folder using
GOOGLE DRIVE where they can drop their outputs for each
assessments.
Use the File format when uploading or sending files via the net:
ModuleNo_AssessmentNo_FileNo_GroupNo ex. M01_A01_F01_G01.
Include the List of References/URL Links/Resources in your document
Use the available resources, installed software and search engine to do
research on the given topics.
These activities and assessments may be written on the module and may
also be submitted online within a specified due date. Note: Please
inform the teacher ahead on the preferred submission method.
POST ASSESMENT
At the end of the course, a post evaluation will be given as a summary of
the overall performances of the learner in the course.
Students are expected to maintain complete honesty and integrity in their
academic work. Acts of academic dishonesty, such as cheating,
plagiarism, or inappropriately using the work of others to satisfy course
requirements, will not be tolerated and may result in failure of the
affected assignments and/or failure of this class.
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
LEARNING EVIDENCES/COURSE OUTPUTS
COURSE EVALUATION:
Evaluation of the level of performance in the learning evidences shall be based on the grading
criteria as follows:
Term percentage distribution
o Prelim (Week No. 1 -
Week: 4 weeks) o Midterm (Week No. 6 -
(Allotted Lecture Week: 3 weeks) o Finals (Week No. 10 - Week No.
Assessments may be given (within the prescribed allotted week) as part of the grade of a
student. Assessments in a form of either of the following:
o Online Quizzes/Written Quizzes /Researches o Recorded Practical Activity
(Individual / Group) /Projects
GRADING SYSTEM
The student will be graded according to the following:
o Average of written/online examinations - 50% o
Average of written/online assessment - 50%
Prelim Grade : [(Prelim Exam x 0.50) + (Assessment x 0.50)]
Midterm Grade : [(Midterm Exam x 0.50) + (Assessment x 0.50)] End
term Grade : [(Final Exam x 0.50) + (Assessment x 0.50)] Final Grade:
(Prelim Grade x 0.30) + (Mid-Term Grade x 0.30 + (End Term Grade x 0.40) The
passing grade for this course is 5.0.
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
LEARNING GUIDE
Week No.: __1__
TOPIC/S
COMPUTER SYTEM COMPONENTS
AND THE OPERATING SYSTEMS: OVERVIEW
EXPECTED COMPETENCIES
1. Distinguish the elements of the computer system including the operating
system 2. Associate the Operating System with the function of the
hardware and software
CONTENT/TECHNICAL INFORMATION
- Users/Other devices
Figure 1
Computer System
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
1. Computer Hardware
These are computer system components that can be touched by the human
hand. Examples include:
Display monitor.
Keyboard.
Mouse.
Motherboard.
Memory modules. Disk drive.
These parts are housed within the laptop or the desktop system-unit. For the
desktop, however, the keyboard and mouse are attached and used externally
Figure 2
Computer Hardware
2. Humanware
Figure 3
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
Users
3. Computer Software
Figure 4
Software
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
Application Software
This is designed for end users to perform a specialized assignment in
order to output useful information.
An example would be a word processing application used to compose
letters or brochures, such as Microsoft Word.
Other popular examples include Adobe Photoshop, Corel Draw, and
AutoCAD.
A collection of application software is bundled in a package that is
commonly known as a software suite. A typical suite includes software
for word processing, presentation, graphic design, and spreadsheet.
Examples include Microsoft Office, OpenOffice, and iWork.
Software is written in computer languages such as Visual Basic, C, and
Java. Malicious Software
Malware, is short for malicious software, which is a generic term that
refers to exploitative code designed by criminals and black hat hackers
to maim normal operations of a computer. Malware attack will result in
data loss and hacker access to private information.
Affected computers can also be converted into zombies and used in a
bigger mission of criminal activities like launching denial of service
attack and spreading spam.
Malware scripts are delivered to the computer as viruses, trojans,
rootkits, keyloggers, worms, or through email and websites as adware,
spyware, ransomware and scareware. Programming Software
These are tools used by developers to create all kinds of software like
Windows OS and Word processing. Also called languages, they are used
to write source codes, debug errors, maintain and create new software
for computers and write malicious scripts like viruses and trojans.
Popular examples of high-level languages are Java, Javascript, BASIC,
PHP, Visual Basic, Visual C++, Visual Basic, Python, Ruby, Perl, Java.
System Software
The system manages other software and devices inside the computer.
The foremost example of system software is the operating system (OS).
In a typical setup, the operating system is like the motherboard for
software. It is the first thing that is installed, followed by applications
and other software. Three popular operating systems for traditional
computers include Windows, Mac OS X, and Linux.
Popular mobile operating systems include Android OS, iPhone OS,
Windows Phone OS, and Firefox OS.3
Looking back
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
software that
Today, operating system is a broad term that may
not only encompass the control of hardware but can control and manage
vastly different remote systems in a more powerful, efficient and portable
means.4
Figure 5
Operating System Functions
PROGRESS CHECK
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
ANSWER WITH TRUE OR FALSE
REFERENCES
Textbook/s :
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
Silberschatz A., Galvin P.B. Operating System Concepts, 5 th
Edition, John Wiley and Sons. Dhamdhere D.M., Tata. Systems
Programming and Operating
Systems, 2nd Revised Edition, McGraw Hill Publishing Company Ltd.,
New
Delhi.
Laboratory Manuals:
On-Line Resources:
1. https://www.learncomputerscienceonline.com
2. http://ssc.xaam.in
3. https://turbofuture.com
4. http://ssc.xaam.in
5. https://medium.com
6. http://www.vvitengineering.com
7. https://wps.prenhall.com
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
LEARNING GUIDE
EXPECTED COMPETENCIES
1. Comprehend the primary functions of Operating Systems
2. Differentiate and categorize the key functions of an operating system
(OS).
CONTENT/TECHNICAL INFORMATION
Operating system as the program that make the hardware and the other
application software useable.
It is defined as the set of programs that controls, manages and govern a
computer system.
An Operating system is the software that makes the it possible for the User
to use the Software and Hardware according to purpose.
Figure 6
Operating System as Intermediary System
All the computers need basic software known as an Operating System (OS)
to function.
The OS acts as the platform interface between the User, Application
Programs, Hardware and the System Peripherals. The OS is the first
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
software to be loaded when a computer starts up. The other application
programs are loaded and permitted to run
only after the OS activates.6
Figure 6.1
Operating System Diagram7
OS can also be viewed as a control program, used to control the various I/O
sending output to the display screen. Keeping track of files and directories
on the disk. Running peripheral devices such as disk drives and printers.
Figure 7
Functions of operating system
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
Overall, the role of the OS is to manage system resources. A
computer system has many resources as mentioned on the previous module.
Since there can be many conflicting requests for the resources, the OS must
decide which requests are to be allocated resources to operate the computer
system fairly and efficiently.
Figure 7.1
Resource Allocator
Figure 8
Memory Management Function
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
Provides mechanisms for process synchronization for sharing of
resources amongst concurrent processes.
Decide which process will have a chance to use the processor; the
job scheduler chooses from all the submitted jobs and decides which
one will be allowed into the system. If multiprogramming, decide
which process gets the processor, when, for how much of time. The
module that does this is called a process scheduler.
Keep track of the I/O devices, I/O channels, etc. This module is
typically called I/O traffic controller.
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
Decide what is an efficient way to allocate the I/O resource. If it is
to be shared, then decide who gets it, how much of it is to be
allocated, and for how long. This is called I/O scheduling.
Reclaim device as and when its use is through. In most cases I/O
terminates automatically.
Figure 10
I/O Management Function16
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
22
Keeps track of the information, its location, its usage, status, etc. The
module called a file system provides these facilities. 7
Figure 11
File Management Function18
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
23
Figure 12
Network Management Function
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
24
Figure 12
Network Operating Systems
Figure 13
Summary Of Operating Functions
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
25
PROGRESS CHECK
b) Processor management
c) I/O management
d) File management
REFERENCES
Textbook/s :
William Shay (Author). An Introduction to Operating Systems.
Prentice Hall (January 14, 1997)
Operating System Concepts, 5th Edition, Silberschatz A., Galvin
P.B., John Wiley and Sons.
Systems Programming and Operating Systems, 2 nd Revised
Edition, Dhamdhere D.M., Tata McGraw Hill Publishing
Company Ltd., New Delhi.
Laboratory Manuals:
On-Line Resources:
1. https://medium.com
2. http://www.vvitengineering.com
3. https://wps.prenhall.com
4. https://www.unf.edu
5. https://sea.pcmag.com
6. http://www.ddegjust.ac.in
7. https://procodersp.blogspot.com
8. https://www.kullabs.com
9. https://www.cs.uic.edu
10. https://www.enterprisestorageforum.com
11. https://www.computerscienceeducationhub.in
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
27
LEARNING GUIDE
EXPECTED COMPETENCIES
1. Comprehend how the Operating System features evolve and improve
through time and need.
2. Compare the different types of operating systems
CONTENT/TECHNICAL INFORMATION
A major OS will evolve over time for a number of reasons: 21
Figure 13
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
28
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
29
and functions from the users, applications and processes. Thus, the operating system
should also evolve to cater to the development.
Figure 14
Evolution of OS and the hardware
Serial Processing
In early computer from late 1940 to the mid-1950, every computer system
may be programmed in its machine language, with no systems software support.
Programming of the bare machine was customary for early computer systems.
Programs for the bare machine can be developed by manually translating
sequences of instructions into binary or to some mnemonic code Instructions. 18
During the first stage of computing ages, data are then entered into the computer
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
30
Figure 15
Serial Processing
The disadvantage of this process is when syntax errors are detected, the
whole process must be repeated from the beginning. Another program called the
debugger detects the errors.16
Batch Processing
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
31
The processing time was reduced when storage devices were invented.
The batch processing relied on stack of punched cards or tape for the input, but
the jobs are still processed serially, without the interaction of the user. Each user
prepares his job on an offline device like punch cards and submits it to the
computer operator. To speed up processing, jobs with similar needs are batched
together and run as a group. The programmers leave their programs with the
operator and the operator then sorts the programs with similar requirements into
batches. The users of a batch operating system do not interact with the computer
directly. 16
Figure 16
Batch Processing23
The efficiency of these systems was measured in the number of jobs completed in
a given amount of time called as throughput.
Multiprogramming
Figure 16
Multiprogramming system
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
33
2. cooperative- each program can control the CPU for as long as it needs it.
If a program is not using the CPU, however, it can allow another program
to use it temporarily. (Microsoft Windows, MultiFinder)
Figure 17
Multitasking vs Multiprocessing
Multiprocessing
In multitasking, only one CPU is involved, but it switches from one
program to another so quickly that it gives the appearance of executing all of the
programs at the same time. 24
Multiprocessing sometimes implies that more than one CPU (multicore)
is
share data and programs.
Figure 18
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
34
Multiprocessor System
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
35
Multithreading
Allows different parts of a single program to run concurrently. The programmer must
carefully design the program in such a way that all the threads can run at
the same time without interfering with each other. 27 Figure
19
Time-sharing system
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
36
Figure 20
Time Sharing System
Real-time systems
Real time systems are used in time critical environments where data must
be processed extremely quickly because the output influences immediate
decisions.
Real time systems are used for space flights, airport traffic control, industrial
processes, sophisticated medical equipment, telephone switching etc.
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
37
Figure 21
Real Time System
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
38
PROGRESS CHECK
Features Types Of OS
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
39
REFERENCES
Textbook/s :
Laboratory Manuals:
On-Line Resources:
5. https://medium.com
6. http://www.vvitengineering.com
7. https://wps.prenhall.com
8. https://www.unf.edu
9. https://sea.pcmag.com
10. http://www.ddegjust.ac.in
11. https://procodersp.blogspot.com
12. https://www.kullabs.com
13. https://www.cs.uic.edu
14. https://www.enterprisestorageforum.com
15. https://www.computerscienceeducationhub.in
16. http://cs.wellesley.edu
17. https://ecomputernotes.com
18. https://medium.com
19. http://www.idc-online.com/technical_references
20. https://www.geeksforgeeks.org/differencebetweenmultita
skingmultithreading-and-multiprocessing/
21. https://www.tutorialspoint.com
22. https://www.coursehero.com
23. https://www.researchgate.net
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
40
24. http://faculty.salina.k-state.edu
25. https://diffzi.com
26. https://prepinsta.com
27. http://digitalthinkerhelp.com
28. https://www.geekboots.com 29. https://study.com
LEARNING GUIDE
TOPIC/S:
DISTRIBUTED OPERATING SYSTEMS MODERN
OPERATING SYSTEMS
EXPECTED COMPETENCIES
1. Recognize functions of distributed operating systems
2. Appreciate how the operating system has evolved for mobility
Distributed Operating
Systems
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
41
Figure 21
Client-Server System
Server Systems can be broadly categorized as: Compute Servers and File
Servers31.
Peer-to-Peer Systems
While the client server has one central management system that caters to
other components, peer to peer systems consist of a collection of processors
that do not share memory or a clock. Instead, each processor has its own
local memory. The processors communicate with one another through
various communication lines, such as highspeed buses or telephone lines.
These systems are usually referred to as loosely coupled systems (or
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
42
With resource sharing facility, a user at one site may be able to use the
resources available at another.
Speedup the exchange of data with one another via electronic mail.
If one site fails in a distributed system, the remaining sites can potentially
continue operating.
Better service to the customers.
Reduction of the load on the host computer.
Reduction of delays in data processing.31
Clustered Systems
Every node of a cluster system has cluster software which is responsible
for monitoring the operations of the cluster system. In case any of the cluster
nodes fails, then the rest of the nodes takes control of all its storage and resources
and restarts the functioning of the cluster system.
A layer of cluster software runs on the cluster nodes. Each node can
monitor one or more of the others. If the monitored machine fails, the monitoring
machine can take ownership of its storage, and restart the application(s) that were
running on the failed machine. The failed machine can remain down, but the users
and clients of the application would only see a brief interruption of service.
Asymmetric Clustering - In this, one machine is in hot standby
mode while the other is running the applications. The hot standby
host (machine) does nothing but monitor the active server. If that
server fails, the hot standby host becomes the active server.
Symmetric Clustering - In this, two or more hosts are running
applications, and they are monitoring each other at the same time.
Parallel Clustering - Parallel clusters allow multiple hosts to
access the same data on the shared storage using special versions
of software and special releases of applications.26
The rapid development of technology has shifted the demand from huge devices
installed in specific spot to handheld devices/ mobile devices.
The innovation in the phone industry has capacitated the small device with
features that were once seen in personal and office computing devices. Along
with the increase processing and storing features of mobile phones, software has
played a big role in making the small devices work like any other processing
devices.
For mobile phones, OSs have been developed to enable users to use phones
in much the same way as personal computers were used 1 or 2 decades ago. The
most well-known mobile OSs are Android, iOS, Windows phone OS, and
Symbian. The market share ratios of those OSs are Android 47.51%, iOS
41.97%, Symbian 3.31%, and Windows phone OS
2.57%. There are some other mobile OSs that are less used (BlackBerry, Samsung, etc.)
[46]. In the next section, we will briefly explain each of these OSs.33 iOS
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
44
Apple's very own operating system, iOS runs the company's iPod, iPad,
iPhone, and Apple Watch devices. It is only available on Apple products and
responds to commands from the user's fingertips. iOS features iTunes for music
and the App Store for everything else. One of the benefits of the Apple operating
system is its built-in video chatting and Apple Music capabilities. Figure 23 iOS
Android
Figure 24
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
45
Android
Windows
BlackBerry OS
A lesser known, but still used, OS is the one designed for BlackBerry
devices, common among business users. The BlackBerry operating system is
well-liked for its enhanced security and safety measures. It was the phone of
choice for former President Barack Obama! BlackBerry has been far more
successful with an operating system that requires a trackball (like a computer
mouse) and a physical keyboard than a touch screen device like the iPhone .34
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
46
Figure 26
BlackBerry
Figure 27
Popular Mobile Systems (1999-2019), Gartner reports, companies SEC filings
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
47
Microkernel architecture:
Assigns only a few essential functions to the kernel, including address spaces,
interposes communication, and basic scheduling.
Multithreading:
Thread:
Thread is a dispatchable unit of work.
It includes a processor context program counter and stack pointer and its
own data storage for the stack. It executes sequentially and is
interruptable.
Process
Collection of one or more threads and associated system resources are
known as processes.
Symmetric multiprocessing:
o Standalone computer with multiple processors that share the same
memory and I/O facilities connected by a communication bus.
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
48
Object-oriented design:
More sophisticated and advance systems may require different features from
different types of operating systems as discussed.
Different applications may run on the same platforms. They may need the
combined and comprised set of services.
Thus, modern operating system may play between computational power, speed,
resource management, efficiency and reliability. 31
PROGRESS CHECK
Research on the development of mobile phones, include the development in the mobile
operating systems. Print Screen their graphical user interfaces. Give a short review.
Fill out the table below for at least three (3) OS MOBILE:
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
49
Compare the common features of the mobile OS listed above with the features of the
personal computer OS in terms of speed, reliability, security and resource efficiency.
Textbook/s:
William Shay (January 14, 1997). An Introduction to Operating Systems. Prentice Hall
Silberschatz A., Galvin P.B. Operating System Concepts, 5th Edition, John Wiley and Sons.
Dhamdhere D.M., Tata. Systems Programming and Operating Systems, 2 nd Revised Edition,
McGraw Hill Publishing Company Ltd., New Delhi.
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
50
Laboratory Manuals:
On-Line Resources:
19. https://www.geeksforgeeks.org/differencebetweenmultita
skingmultithreading-and-multiprocessing/
20. https://www.tutorialspoint.com
21. https://www.coursehero.com
22. https://www.researchgate.net
23. http://faculty.salina.k-state.edu
24. https://diffzi.com
25. https://prepinsta.com
26. http://digitalthinkerhelp.com
27. https://www.geekboots.com
28. https://study.com
29. https://www.ni.com
30. https://www.studytonight.com
31. https://smallbusiness.chron.com
32. https://www.sciencedirect.com
33. https://study.com/academ
34. https://www.ques10.com
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
51
LEARNING GUIDE
TOPIC/S:
PROCESSES and PROCESS STATES
EXPECTED COMPETENCIES
1. Define Process
2. Analyze process states
3. Demonstrate communications on client server systems
CONTENT/TECHNICAL INFORMATION
I. Process Concept
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
52
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
53
Information associated with each process (also called task control block)
Accounting information CPU used, clock time elapsed since start, time
limits
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
54
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
55
PROGRESS CHECK
What is a process?
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
56
TOPIC/S:
CPU Scheduling Scheduling Algorithms
EXPECTED COMPETENCIES
1. Introduce the basic CPU scheduling concepts
2. Analyze how jobs are executed in ordered
3. Evaluate the different scheduling algorithms
CONTENT/TECHNICAL INFORMATION
Preemptible: processor or I/O channel. Can take resource away, use it for
something else, then give it back later.
Non-preemptible: once given, it cannot be reused until process gives it back.
Examples are file space, terminal, and maybe memory.
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
57
CPU Scheduling
Processes may be in any one of three general scheduling states:
Running.
Ready. That is, waiting for CPU time. Scheduler and dispatcher determine
transitions between this and running state.
Blocked. Waiting for some other event: disk I/O, message, semaphore, etc.
Transitions into and out of this state are caused by various processes.
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
58
CPU Scheduler
Selects from among the processes in ready queue, and allocates the CPU
to one of them
Queue may be ordered in various ways.
CPU scheduling decisions may take place when a process:
1. Switches from running to waiting state (preemptive) 2. Switches from running to
ready state (nonpreemptive)
3. Switches from waiting to ready (preemptive)
4. Terminates (nonpreemptive)
Dispatcher
Dispatcher module gives control of the CPU to the process selected by
the shortterm scheduler; this involves:
switching context
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
59
Dispatch latency time it takes for the dispatcher to stop one process and start
another running.
Scheduling Criteria
CPU utilization keep the CPU as busy as possible
Throughput # of processes that complete their execution per time unit
Turnaround time amount of time to execute a particular process
Waiting time amount of time a process has been waiting in the ready queue
Response time amount of time it takes from when a request was submitted
until the first response is produced, not output (for time-sharing environment)
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
60
Solution: limit maximum amount of time that a process can run without a context
switch.
This time is called a time slice.
Round Robin: run process for one time slice, then move to back of queue.
Each process gets equal share of the CPU. Most systems use some variant of
this. What happens if the time slice is not chosen carefully?
Originally, Unix had 1 sec. time slices. Too long. Most timesharing systems today use
time slices of 10,000 - 100,000 instructions.
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
61
Even round-robin can produce bad results occasionally. Go through example of ten
processes each requiring 100 time slices.
STCF: shortest time to completion first with preemption. This minimizes the average
response time.
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
62
Give newly runnable process a high priority and a very short time slice. If
process uses up the time, slice without blocking then decrease priority by 1 and
double time slice for next time.
Go through the above example, where the initial values are 1ms and priority
100.
Techniques like this one are called adaptive. They are common in interactive
systems.
Two queues: one with active (eligible to run) processes and with expired (not
eligible to run) processes.
140 priority levels, but the top 100 are reserved for "real time" processes.
Always choose a process from the highest non-empty priority level.
Priority level is the sum of its static priority and its dynamic priority bonus,
which the scheduler assigns as an estimate of its interactivity.
Static priorities range from 0-39 (number of queues) and dynamic priority
bonuses range from -5 to +5.
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
63
Time slices assigned based on static priority, giving higher-priority tasks larger
time slices and lower-priority tasks shorter time slices.
A task might not use all of its time slice at once, since it could block or be
preempted before it finishes, but eventually it consumes the entire amount.
When that happens, the task is usually placed on the expired array with a new
time slice and a recalculated priority.
An interactive task receives the same time slice as others at the same static
priority, but the slice is divided into smaller pieces. When it finishes a piece, the
task will round robin with other tasks at the same priority level. Execution
rotates more frequently among interactive tasks of the same priority, but higher-
priority tasks will run for longer before expiring
PROGRESS CHECK
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
64
What are the two bases for the OS to make decisions about resources?
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
65
TOPIC/S:
EXPECTED COMPETENCIES
CONTENT/TECHNICAL INFORMATION
Process Synchronization
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
66
Processes have to be scheduled to ensure that concurrent access to shared data does
not create inconsistencies.
A race condition occurs when two or more operations are executed at the same
time, not scheduled in the proper sequence, and not exited in the critical section
correctly. 40
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
67
1. Mutual Exclusion
Out of a group of cooperating processes, only one process can be in its critical
section at a given point of time.
2. Progress
If no process is in its critical section, and if one or more threads want to
execute their critical section then any one of these threads must be allowed to
get into its critical section.
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
68
4. Bounded Waiting
After a process makes a request for getting into its critical section, there
is a limit for how many other processes can get into their critical section, before
this process's request is granted. So after the limit is reached, system must grant
the process permission to get into its critical section.
5. Semaphore
A semaphore is simply a variable that stores an integer value. This
integer can be accessed by two operations: wait() and signal(). When a process
enters the critical section, P(s) is invoked and the semaphore s is set to 1. After
the process exits the critical section, s is re-initialized to 0.
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
69
DEADLOCKS
A set of processes is in a deadlock state if every process in the set is waiting for an
event (release) that can only be caused by some other process in the same set
In the above diagram, the process 1 has resource 1 and needs to acquire resource
2. Similarly process 2 has resource 2 and needs to acquire resource 1.
Deadlock Detection
Deadlock Prevention
Deadlock Avoidance
Basic Facts
PROGRESS CHECK
LIST OF REFERENCES
Textbook/s:
Laboratory Manuals:
Please see separate laboratory module
On-Line Resources:
1. https://www.learncomputerscienceonline.com
2. http://ssc.xaam.in
3. https://turbofuture.com
4. http://ssc.xaam.in
5. https://medium.com
6. http://www.vvitengineering.com
7. https://wps.prenhall.com
8. https://www.unf.edu
9. https://sea.pcmag.com
10. http://www.ddegjust.ac.in
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
72
11. https://procodersp.blogspot.com
12. https://www.kullabs.com
13. https://www.cs.uic.edu
14. https://www.enterprisestorageforum.com
15. https://www.computerscienceeducationhub.in
16. http://cs.wellesley.edu
17. https://ecomputernotes.com
18. https://medium.com
19. http://www.idc-online.com/technical_references
20. https://www.geeksforgeeks.org
21. https://www.tutorialspoint.com
22. https://www.coursehero.com 23.
https://www.researchgate.net
24. http://faculty.salina.k-state.edu
25. https://diffzi.com
26. https://prepinsta.com
27. http://digitalthinkerhelp.com
28. https://www.geekboots.com
29. https://study.com
30. https://www.ni.com
31. https://www.studytonight.com
32. https://smallbusiness.chron.com
33. https://www.sciencedirect.com
34. https://study.com/academ
35. https://www.ques10.com
36. http://www.cs.kent.edu/~farrell/osf03/lectures/ch4-2.pdf
37. http://www.facweb.iitkgp.ac.in/~isg/OS/SLIDES/ch3Processe
s.pdf
38. http://pages.cs.wisc.edu/~bart/537/lecturenotes/s11.html
39. http://www2.latech.edu/~box/os/ch05.pdf
40. https://www.unf.edu/public/cop4610/ree/Notes/PPT/Silbe
r/ch5.pdf
41. https://study.com/search/text/academy.html?q=+deadlock
s&src=studyAnswer&pageType=lesson#/topresults/%20d
eadlocks
42. https://www.tutorialspoint.com/process-deadlocks-
inoperating-system
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.
73
This module is a property of Technological University of the Philippines Visayas and intended for
EDUCATIONAL PURPOSES ONLY and is NOT FOR SALE NOR FOR REPRODUCTION.