Fading Coder

One Final Commit for the Last Sprint

Home > Tech > Content

Operating System Fundamentals for System Architecture Engineers

Tech 1

Software Classification

Computer Software Categories:
  - System Software

      Supports application software execution

      Common system software includes: **operating systems**, **language processing systems**, **linkers, diagnostic tools, and database management systems**

      The **operating system serves as the core system software**, with all other software built upon it and managed through the OS
  
  - Application Software

      Programs developed utilizing system and hardware resources, such as: **file processing applications, spreadsheet software**, etc.

Core Operating System Concepts

### Definition and Role of Operating Systems

  Traditional computer system resources include:
    - Hardware Resources
        - Physical devices like CPU, memory, input/output equipment
    - Software Resources
        - Programs and data stored as files in memory

  Operating System Functions:
    - First, enhance computer system efficiency through resource management
    - Second, improve human-computer interface providing users with friendly working environments

System throughput refers to the amount of work processed by a computer system with in a specific time unit.

Operating System Characteristics and Functions

The four key characteristics of operating systems: concurrency, sharing, virtualization, uncertainty

Traditional computer resource management functions encompass five major areas: processor management, file management, memory management, device management, and job management

Operating System Types and Features

Operatnig System Classifications

  • Batch Processing Operating Systems
  • Single-track Batch Procesing
Single-track batch processing represents an early operating system type where multiple jobs can be submitted. "Single-track" means only one job loads into memory at a time for execution. Jobs consist of three components: user programs, data, and job control instructions (job control language). When one job completes, the next job in the batch automatically loads, reducing manual intervention time between jobs and improving resource utilization.
- Multi-track Batch Processing
Multi-track batch processing allows multiple jobs to load into memory simultaneously. At any given moment, jobs exist between start and end points. When a running job requires I/O operations, the CPU transfers to another waiting job, changing sequential host-device operations to parallel processing. This avoids wasting valuable CPU cycles waiting for external devices. Multi-track systems feature three main characteristics: multi-tracking, macro-level parallel execution, and micro-level sequential execution.
- Time-sharing Operating Systems
In time-sharing systems, one computer connects to multiple terminal devices. These systems divide CPU time into short time slices, serving different terminals in rotation. For example, a 20-terminal time-sharing system allocating 50ms per user results in complete service every second. Although terminal jobs run discontinuously, the system provides immediate response to each user program, creating the impression of exclusive system access.
Time-sharing systems feature four main characteristics: multiplicity, independence, interactivity, and timeliness.
- Real-time Operating Systems
Real-time operation means the computer processes incoming information quickly enough to respond within acceptable time limits for controlled objects. Real-time systems prioritize reliability over interactivity, requiring prompt response to randomly occurring external events.
Real-time systems fall into two categories: real-time control systems and real-time information processing systems. Control systems focus on automated production processes, including automatic data acquisition, weapon control, automatic artillery control, autopilot, and missile guidance. Information processing systems handle real-time data processing like airline reservation systems and intelligence retrieval systems. Beyond different application environments, these differ from time-sharing systems in three ways:
(1) Different design objectives: Time-sharing creates multi-user general-purpose systems with strong interactivity, while real-time systems are typically specialized.
(2) Varying interactivity levels: Time-sharing systems offer strong multi-user interactivity; real-time systems are specialized with limited program access and poor interactivity.
(3) Different response sensitivity: Time-sharing uses user-acceptable wait times as design criteria, while real-time systems use controlled object delay tolerance, making them more sensitive to response times.
- Network Operating Systems
Network operating systems enable connected computers to share network resources efficiently, providing various services through software and communication protocols. Functions include efficient, reliable network communication; effective management of shared resources (disks, printers in LANs); email, file transfer, shared storage and printing services; network security management; and interoperability capabilities.
Computer networks require both hardware and system software forming the platform foundation. As the most important system software, network operating systems serve as interfaces between users and networks, incorporating standard OS functions plus networking capabilities supporting network architectures, communication protocols, connectivity features, and secure data transmission.
- Centralized Model
(1) Centralized model. Centralized network operating systems evolved from time-sharing systems with added network functionality. Basic units consist of one host and connected terminals; multiple hosts form networks with centralized information processing and control. UNIX exemplifies this category.
- Client/Server Model (C/S)
(2) Client/server model. This popular network approach divides systems into servers and clients. Servers act as control centers providing services to clients. Multiple server types exist, such as file/print servers. Clients handle local processing and server access, containing local processing software and server service interfaces.
- Peer-to-Peer Model (P2P)
(3) Peer-to-peer (P2P) model. In P2P networks, all nodes remain equal, functioning as both clients accessing other nodes and servers providing services. No central service or control exists; instead, network functions distribute across all nodes, demonstrating distributed processing and control characteristics.
- Distributed Operating Systems
- Embedded Operating Systems

Related Articles

Understanding Strong and Weak References in Java

Strong References Strong reference are the most prevalent type of object referencing in Java. When an object has a strong reference pointing to it, the garbage collector will not reclaim its memory. F...

Comprehensive Guide to SSTI Explained with Payload Bypass Techniques

Introduction Server-Side Template Injection (SSTI) is a vulnerability in web applications where user input is improper handled within the template engine and executed on the server. This exploit can r...

Implement Image Upload Functionality for Django Integrated TinyMCE Editor

Django’s Admin panel is highly user-friendly, and pairing it with TinyMCE, an effective rich text editor, simplifies content management significantly. Combining the two is particular useful for bloggi...

Leave a Comment

Anonymous

◎Feel free to join the discussion and share your thoughts.