CPT304: OS Theory Concept Map Summary

  







Week 5 – Final Project 

Drew M.  M. McCullough 

School of Business & Technology, University of Arizona Global Campus 

CPT304: Operating Systems Theory & Design  

ProfessorChiaka Okoroh 

22 December 2025 






Introduction 

Operating systems form the foundation of modern computing by managing hardware resources and providing a stable environment for software execution. Throughout CPT304, I explored how operating systems coordinate processes, manage memory, organize storage, handle input and output, and protect system resources. This summary blog post addresses the focus question, What are the fundamental concepts that underlie operating systems? Drawing from my completed OS Theory Concept Map, I reflect on key insights related to operating system structure, process coordination, memory management, file systems, I/O, and protection and security. I also discuss how these concepts will support my future academic and professional goals. 

Screenshot 1: Full OS Theory Concept Map overview 


Features of Contemporary Operating Systems and Their Structures 

Modern operating systems such as Windows, Linux, and macOS are designed to balance efficiency, usability, and protection. Core operating system functions include process management, memory management, file management, device management, and security. Process management schedules CPU time across multiple programs, creating the appearance of simultaneous execution. Memory management tracks usage and allocates space as needed, while file management organizes data on storage devices. Device management coordinates communication with hardware, and protection mechanisms prevent unauthorized access to system resources (Silberschatz et al., 2014). 

These functions are organized within a layered structure. At the center is the kernel, which interfaces directly with hardware and enforces system policies. Surrounding subsystems such as device drivers, system calls, and file systems interact closely with the kernel and with one another. My concept map visually represents these relationships, showing how performance, reliability, and security depend on cooperation between components rather than isolated functionality. 

Screenshot 2: Section 1 zoom showing OS structure and subsystems 


How Operating Systems Enable Processes to Share and Exchange Information 

Operating systems manage execution through processes, which are programs in execution. Each process transitions through states such as new, ready, running, waiting, and terminated. The Process Control Block stores essential information that allows the operating system to pause, resume, and schedule processes efficiently (Silberschatz et al., 2014). 

Threads allow multiple execution paths within a single process. While single-threaded models are simpler, multi-threaded designs improve responsiveness and throughput. However, concurrency introduces the risk of race conditions when threads access shared data. The critical-section problem highlights this challenge, and synchronization tools such as mutex locks and semaphores are used to enforce mutual exclusion and safe coordination. In my concept map, these relationships are shown through cross-links that emphasize the dependency between multithreading and synchronization. 

Screenshot 3: Section 2 zoom showing processes, threads, and synchronization 

 


How Main Memory and Virtual Memory Solve Memory Management Issues 

Memory management ensures that processes receive sufficient memory while remaining isolated from one another. Physical memory is limited, so operating systems track usage and prevent overlap. Virtual memory addresses this limitation by providing each process with a logical address space that appears larger than available RAM. Using paging or segmentation, the Memory Management Unit translates virtual addresses to physical locations as needed (Silberschatz et al., 2014). 

Virtual memory enables demand paging, allowing programs larger than physical memory to execute efficiently. It also improves stability by isolating processes and reducing fragmentation. Section 3 of my concept map compares physical and virtual address spaces, highlighting how mapping techniques solve memory constraints while supporting multitasking. 

Screenshot 4: Section 3 zoom comparing physical and virtual memory 


How Files, Mass Storage, and I/O Are Handled in a Modern Computer System 

File systems provide long-term data storage while balancing reliability and performance. Operating systems support file creation, deletion, reading, and writing, while tracking metadata and enforcing permissions. Reliability techniques such as journaling and RAID protect against data loss, and performance optimizations such as buffering and caching reduce access latency (Silberschatz et al., 2021). 

Directory structures vary in complexity, ranging from single-level directories to tree-structured and graph-based models that support sharing. I illustrated these structures in my concept map using custom diagrams modeled after textbook figures. Input and output devices are managed through hardware controllers and software drivers. Integration with memory occurs through Direct Memory Access and memory-mapped I/O, allowing efficient data transfers without constant CPU involvement. 

Screenshot 5: Section 4 zoom showing directory structures and I/O integration 


Mechanisms to Control Access of Programs or Users to Resources 

Protection mechanisms regulate how processes and users access system resources. Domain-based protection groups access rights into domains, while language-based protection relies on programming language features such as type safety to prevent invalid operations. The access matrix provides a conceptual model for defining permissions by mapping domains to objects and allowed operations. Practical implementations include access control lists and capability systems. 

Security extends protection by defending against intentional threats such as malware and unauthorized access. Authentication, encryption, auditing, and intrusion detection systems help maintain confidentiality, integrity, and availability. In my concept map, protection and security are linked to demonstrate how limiting authorized actions strengthens overall system defenses. 

Recommendations for Future Use 

The concepts explored in this course will directly support my future coursework and career goals. Understanding memory management and synchronization will be valuable in advanced programming and systems courses. Professionally, these principles will inform how I design efficient, secure software and evaluate system architectures. Knowledge of protection and security models will also be essential when working with networked or cloud-based systems. 

Conclusion 

Operating systems rely on interconnected concepts that collectively enable reliable, efficient, and secure computing. Through this course and the development of my OS Theory Concept Map, I gained a deeper understanding of how processes, memory, storage, I/O, and protection mechanisms work together. This foundation will continue to support my growth in both academic and professional environments. 

Link to Full OS Concept Map:

https://drive.google.com/file/d/1uyOED1gHdr20YJyrErMjNKt9ukIrF-KP/view?usp=sharing


References 

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

Silberschatz, A., Galvin, P. B., & Gagne, G. (2021). Operating system concepts (11th ed.). Wiley. 

TutorialsPoint. (n.d.). Operating system overviewhttps://www.tutorialspoint.com/operating_system/os_overview.htm 

TutorialsPoint. (n.d.). Operating system serviceshttps://www.tutorialspoint.com/operating_system/os_services.htm 

TutorialsPoint. (n.d.). Operating system     multithreadinghttps://www.tutorialspoint.com/operating_system/os_multi_threading.htm 




Comments

Popular posts from this blog

Web/Mobile App Critique

Java and Object-Oriented Programming: A Beginner-Friendly Overview

Network Security