Skip to main content

OS Theory Concept Map/ Final Project Week 5

 

Categorize, describe, and give examples of the major functions of operating systems.

According to Operating System Concepts Essentials (2014), operating systems' primary

functions include CPU scheduling, memory management, communication management,

synchronization, error detection, resource allocation, accounting, and protection and security.

Also, the explanation of algorithms, structures, and threads. The functionalities are interface (UI)

is what the user sees and interacts with to natural processes on the computer. The UI can be a

command line, batch interface, or a graphical user interface (GUI) (Silberschatz, Galvin,

Gagne, 2014). Program execution refers to the ability to start and stop a program. A program

first needs to be loaded to the main memory to execute and can then be terminated normally or

through an error. I/O operations are managed through the operating system so as not to introduce

user error when a program calls for input or output from/to a device. In addition, the operating

system provides file management capabilities to the user(s) so that they can create or delete files

or rename them. In some cases, the operating system also controls access to the files so that only

a specific group of users has permissions (Silberschatz, Galvin, & Gagne, 2014). The basic

functions of the O.S. are managing machine resources, coordinate the hardware and organize

files and directories on storage devices. Multi-user, Single-User, Multiprocessor, Multitasking,

Single-tasking, and real-time.

The three main purposes are:

• To provide an environment for a computer user to execute programs

on computer hardware in a convenient and efficient manner.

• To allocate the separate resources of the computer as needed to

solve the problem given. The allocation process should be as fair

and efficient as possible.

• As a control program it serves two major functions: (1) supervision

of the execution of user programs to prevent errors and improper use

of the computer, and (2) management of the operation and control of I/O devices.

Protection refers to the controlled access to a system by users, while security refers to

the authentication of users, defending I/O devices, and recording breach attempts (Silberschatz,

Galvin, & Gagne, 2014).

Illustrate the hierarchy of subsystems, components, or subcomponents of operating systems

and explain how they interact with one another.

According to Silberschatz, Galvin, & Gagne, the hierarchy of system has multiple

functions. To name a few: GUI, user interface, program execution, I/O operations, filesystem

management, etc. GUI: the GUI allows the user the ability to control the system. Another method

is called monolithic and refers to the fact that all the operating system's functionalities are

bundled into one space instead of being stored in multiple sections. The GUI gives all authorized

users the ability to add or delete files, share information via synchronization and program

execution. Also, the data can be retrieved at any later date by users. Memory hierarchy has

several levels starting from inexpensive and slow disk technology to DRAM main memory and

SRAM CPU caches all the way to the registers (Silberschatz, Galvin & Gagne, 2014).

 Operating System Components



Describe the process, process state, and process control block. Compare single- and multi-

threaded motivations and models. Describe the critical-section problem and explain a

software solution that resolves this problem.

The process assigns a process identification number (PID) to each process as the system

processes one at a time. Each process is only permitted to enter crucial variables when granted

permission and all others are completed with their task at hand. The process control block is the

datum, the process is as sounds, "the state the process is currently running (Silberschatz, Galvin,

& Gagne para 3.5)" A Process Control Block for each process is a data structure in the operating

system kernel containing the information needed to manage a particular process. A PCB is

created in the kernel whenever a new approach progresses and completes. The OS maintains a

queue of PCBs, one for each process, which encloses all the information about the process. It is a

data structure. (Studytonight Technologies, 2021), (Shenoy, P., 2013) A thread is “a flow of

control within a process.” (Silberschatz, Galvin, & Gagne, 2014). Multiple thread source code,

data, files, memory, registers, a program counter, and a “stack which contains the execution

history” (Tutorials Point, 2018) "Threads represent a software approach to improving

performance of operating system by reducing the overhead thread is equivalent to a classical

process" (Tutorials Point, para. 1) Process is the unit of work in a modern time-sharing system

(Silberschatz, Galvin, & Gagne, 2014) This is in place to make sure that the processes are

executed one at a time.

The solution to fix the problem: The algorithms must be true to work and correct the problem.



OS Theory Concept Map – Section 2




Outline the objectives and functions of memory management in operating systems.

(Resource: Leverage Figures 7.1, 7.2, 7.3, and 7.4 from the textbook.)

Compare and contrast the physical address space with the virtual address space as they

relate to different memory mapping techniques in operating systems.

Memory management in operating systems has five main purposes: Its function is to

allocate memory for action or program. It is used to create virtual addressing space while also

sharing resources. It is meant to swap between memory management resources for datum and is

used for the static or dynamic memory location (Silberschatz, Galvin & Gagne, 2014).

 Static Relocation must be relocated before or during the loading of a process into memory. The

the program must always be loaded into the same address space in memory or the relocator must be

rerun.

Dynamic Relocation - can be freely moved around in memory—virtual-to-physical address space

mapping completed at run-time.

Protection- write protection to prevent data and instructions from being over-written. Read

security to ensure the privacy of data and instructions.

 

Sharing, Logical Organization of Memory: Logical organization - processes are composed of

modules of varying sizes, modules independently compiled, modules with different protection

needs even to the degree of sharing. Physical organization - typically a two-level organization:

main memory and secondary memory. (Silberschatz, Galvin & Gagne, 2014).

Virtual Memory, Dynamic Address Translation Mechanism - transforms virtual addresses into

physical addresses. Virtual address space can be smaller or the same size as PM.

Address Translation Mechanism: physical, real, or binary address is a memory address

represented in the form of a binary number on the address bus circuitry to enable the data bus to

access a particular storage cell of main memory or a register of (Wikipedia) memory mapped I/O

device.

Virtual address space is the maximum amount of address space available to an

application, (People) depending on the architecture, e.g., CPU register size. Virtual memory

enables each process to have its (Wikipedia) unique view of a computer's memory. "Virtual

address space (VAS) or address space is the set of ranges of virtual addresses that an operating

system makes available to a process." (Wikipedia) The content of virtual addresses usually starts

at a low address. It can extend to the highest address allowed by the computer's instruction set

architecture and is "supported by the operating system's pointer size implementation, which can

be 4 bytes for 32-bit or 8 bytes for 64-bit OS versions. This provides several benefits, one of

which is security through process isolation assuming each process is given"(Wikipedia) separate

address space.

In computer architecture, the memory hierarchy separates computer storage into an order

based on response time. Since response time, complexity, and capacity are related, (Wikipedia)

their performance and control technologies may also distinguish the levels. (Wikipedia)

 OS Theory Concept Map WEEK 3

Outline the objectives and functions of file systems management and the supported

operations, including their reliability and performance.

Outline the objectives and functions of file systems management and the supported

operations, including their reliability and performance.

Multi-level structure directory stops the issues of overlap of "name collision problems."

Consider two programmers are working on a joint contract, they each have their own file and can

share their files with one another. An acyclic graph is a graph with no cycles which prohibits the

sharing of files or directories. With a copy of a file, there is an original, and the programmers

have access to two different copies, one programmer can make a change, the change will not

show up on the other programmer's file. But with a shared file the changes are made and visible

for the other programmer. (Silberschatz, Galvin, Gagne 2014, 10.3.6) There is an absolute and

relative pathname this gives defines a path from the current directory. It is important to write the

file exactly as to not have looping occur so that the system keeps looking for the file if it cannot

be found.

Describe different types of input/output devices, distinguishing between the

 hardware and software layers and summarizing the integration across I/O and memory

 components.

I/O devices are used to help information be utilized by the outside world. By doing so

this is by moving data into and out of the system.

Some input devices are Keyboard (The most common and very popular input device is

the keyboard), Mouse, Touchpad, TrackPoint, Scanner, Microphone, Digital Cameras, pointing

device (which is used to move cursor position on a monitor screen), Barcode reader, Joystick,

Webcam, Optical Character Reader (OCR)) OCR is an the input device used to read a printed text),

Touch screen, Digitize. Etc. Devices that are considered output devices are Character Printers,

Drum Printer, Laser Printers. Projector, Plotters, Monitor, Speakers, Headphone. The external

device will send information that is stored in a memory unit this information is transferred.

Programmed I/O, Interrupt- initiated I/O, and Direct memory access DMA. The

Programmed I/O, Interrupt- initiated I/O need intervention between the processor and memory

any data in this scenario will need to go thru the processor therefore the transfer rate is affected

by the speed of the processor. The causes the processor to have to manage instructions that need

to be executed for each I/O transfer. Allowing peripherals to directly communicate with each

other removes the intervention of the CPU. CPU remains Idle and has no control over the

memory bus. There is a direct transfer between the I/O devices and the memory unit.

(Silberschatz, A., Galvin, P. B., & Gagne, G. para 8) 

OS Theory Concept Map WEEK 4


Outline the goals and principles of the domain- and language-based protection in a modern

computer system and describe how an access matrix is used to protect specific resources a

process can access. (Consider using a matrix representation to illustrate concepts.)

Describe how security is used to protect programs, systems, and networks from threats.

The most obvious to prevent the goal and principle of a domain is to stop malicious misuse of the

system by users or programs. It is also to ensure that all shared resources are used only following

the system policies. This may be set by either the system designers or administrators. Doing so

will ensure that the errant programs will cause the minimal amount of damage as possible.

One way to secure the system is a Cloud-agnostic the system is available to staff and individuals.

Another way is the matrix representation to illustrate concepts; this will divide the matrix into rows to

 secure them to be more effective.

       According to Silberschatz, A., Galvin, P. B., & Gagne, G., this is the protection that we have

been discussing can be viewed as an access matrix, in which columns represent different system

resources and rows represent different protection domains. Entries within the matrix indicate

what access that domain has to that resource? The owner right adds the privilege of adding new

rights or removing existing ones

It is best to give only certain individuals access to the information they need to complete their

jobs, not all files. This should stop corruption and individuals having access to necessary files

that they have no use for. Or to be able to breach any company files that should be kept secret,

such as financial or other high-security files.

OS Theory Concept Map - Section 5





 

Single-Level File Directory Diagram


Two-Level File Directory Diagram


 

 

Tree-Structured File Directory Diagram




To protect against these threats, systems are protected at four different levels:

physical (sites, workstations, and rooms containing systems are made secure and allow limited

access), human (the authorization of users attempting access to the system), operating system

(protected against accidental and malicious security breaches), and at the network level

(connections over private lines or private wireless networks) (Silberschatz, Galvin, & Gagne,

2014). One can also add a password to ensure security of your personal files and information.

Cloud computing is very popular to protect information and be able to share information. I utilize

my Arizona University Cloud often, which also makes file share much easier.

             In this class, I have learned about threads, which I knew nothing about until this

class. The Maps making helped me see the order of processing and how sharing works for the

order of procedure. I have also learned fundamental concepts that underlie operating systems,

including multiprogramming, concurrent processes, CPU scheduling, synchronization, memory

management, file systems, protection, and security. Many examples from natural systems are

given to illustrate the application of concepts. At the end of this course, a student will understand

the principles and techniques required for understanding and designing operating systems.


Final Concept Map Week 5

 


  

References:

Ahlawat, A. (2021) Studytonight, Technologies, 2021, https://www.studytonight.com/

Columbia University. (n.d.) Unit 4: Application and System Software. Retrieved October

4, 2018 from, http://www.columbia.edu

Franklin, C., & Coustan, D. (2000). Process Control Block in Operating System. Retrieved

September 20, 2018, from https://www.includehelp.com/operating-systems/processcontrol-block-in-operating-system.aspx

Geeks for Geeks. (n.d.). File Systems: Operating Systems. Retrieved October 4, 2018 from

https://www.geeksforgeeks.org/file-system-operating-systems/

Hand, S. (2010). Operating Systems. Retrieved September 27, 2018 from

https://www.cl.cam.ac.uk/teaching/1011/OpSystems/os1a-slides.pdf.

Shukla, A. (2017). Process Control Block in Operating System. Retrieved September 20, 2018,

from https://www.includehelp.com/operating-systems/process-control-block-inoperating-system.aspx

Silberschatz, A., Galvin, P. B., & Gagne, G. (2014). Operating system concepts essentials (2nd

ed.). Retrieved from https://www.vitalsource.com

Staff, C. (n.d.). Introduction to Operating Systems. Retrieved September 27, 2018 from

http://staff.um.edu.mt/csta1/courses/lectures/csm202/os10.html

The Critical Section Problem. Retrieved September 20, 2018, from

http://crystal.uta.edu/~ylei/cse6324/data/critical-section.pdf

TutorialsPoint. (n.d.). Operating System – Memory Management. Retrieved September 27,

2018 from

https://www.tutorialspoint.com/operating_system/os_memory_management.htm

Tutorials Point. (2018). Operating System - Multi-Threading. Retrieved September 20, 2018,

from https://www.tutorialspoint.com/operating_system/os_multi_threading.htm

Tutorials Point. (n.d.). Operating System- Security. Retrieved on October 11, 2018 from

https://www.tutorialspoint.com/operating_system/os_security.htm

University of North Carolina, Chapel Hill, Department of Computer Science. (n.d.). COMP

730/242 Class Notes: Section 8: Protection. Retrieved on October 10, 2018 from

http://www.cs.unc.edu/~dewan/242/s07/notes/prot.PDF

 

https://people.cs.pitt.edu/~xianeizhang/notes/vm.html

 

https://en.wikipedia.org/wiki/Binary_address

 

https://en.wikipedia.org/wiki/Memory_hierarchy

 

https://en.wikipedia.org/wiki/Virtual_address_space

 

Some Maps are from Internet

Comments

Popular posts from this blog

Algorithm and Data Structure

  “Every program depends on algorithms and data structures, but few programs depend on the invention of brand-new ones.” — Kernighan & Pike. Also, think about this, whichever device you are reading this Blog on, Algorithms helped create it. Whether it be your Smart Phone, iPad, Laptop, desktop, or whatever device you prefer, the data structure on that device was created with an Algorithm. First, let us ask, what is an algorithm? An algorithm is a sequence of steps for accomplishing a task. Algorithms perform the calculation, data processing, and automated reasoning tasks. (Williams, 2020) The critical thing to remember is that IT has all been done before and follow the steps below. And we write algorithms in a step-by-step manner, but it is not always the case. Algorithm writing is a process and is executed after the problem domain is well-defined. That is, we should know the problem domain for which we are designing a solution. Data structure and categories of Algorithm are: Sea