Page 5

Semester 2: Advanced Operating Systems

  • Basics of Operating Systems: What is an OS, Mainframe, Desktop, Multiprocessor, Distributed, Clustered, Real-Time, Handheld Systems, Feature Migration, Computing Environments, Process Scheduling, Cooperating Processes, Inter Process Communication, Deadlocks (Prevention, Avoidance, Detection, Recovery)

    Basics of Operating Systems
    • What is an OS

      An operating system (OS) is a software that acts as an intermediary between computer hardware and the user. It manages hardware resources, provides a user interface, and facilitates interaction with applications.

    • Mainframe Systems

      Mainframe systems are powerful computers used primarily by large organizations for critical applications, bulk data processing, and large-scale transaction processing. They emphasize reliability, availability, and security.

    • Desktop Systems

      Desktop operating systems are designed for personal computers and are focused on providing a user-friendly interface. They support a wide range of applications and are used by individuals and small businesses.

    • Multiprocessor Systems

      Multiprocessor systems use multiple CPUs to enhance performance and throughput. These systems can execute multiple processes simultaneously, providing better task management and resource allocation.

    • Distributed Systems

      Distributed operating systems manage a group of independent computers, allowing them to operate as a single system. This approach enhances performance, reliability, and resource sharing among networked systems.

    • Clustered Systems

      Clustered systems connect multiple computers to work together as a single entity. They provide high availability, load balancing, and failover capabilities, often used in enterprise environments.

    • Real-Time Systems

      Real-time operating systems are designed to process data as it comes in, typically used in embedded systems. They prioritize tasks to ensure timely response to real-world events.

    • Handheld Systems

      Handheld systems include mobile devices and smartphones. These operating systems are optimized for touch interfaces and mobility, catering to a wide range of applications in compact devices.

    • Feature Migration

      Feature migration refers to the process of moving features or functionalities from one system to another, often seen in OS updates or transitions to new platforms.

    • Computing Environments

      Computing environments encompass the hardware and software resources, along with user interfaces and application support, to effectively run and manage computing tasks.

    • Process Scheduling

      Process scheduling is the method by which an OS decides the order in which processes access CPU resources. Scheduling algorithms determine efficiency and response times.

    • Cooperating Processes

      Cooperating processes can share data and resources, leading to efficient operations. The OS manages the coordination and communication between these processes.

    • Inter Process Communication

      Inter process communication (IPC) allows processes to communicate and synchronize their actions. Mechanisms include pipes, message queues, and shared memory.

    • Deadlocks

      Deadlocks occur when processes wait indefinitely for resources held by each other. Strategies for managing deadlocks include prevention, avoidance, detection, and recovery.

  • Distributed Operating Systems: Issues, Communication Primitives, Lamport’s Logical Clocks, Deadlock handling strategies, distributed file systems, Case studies (Sun Network File System, Coda)

    Distributed Operating Systems
    • Issues in Distributed Operating Systems

      Distributed operating systems face various issues including synchronization, transparency, security, and fault tolerance. Ensuring coherence and consistency across distributed nodes is a significant challenge.

    • Communication Primitives

      Communication primitives are fundamental operations that enable communication between processes. Examples include remote procedure calls (RPC), message passing, and shared memory operations, which facilitate coordination in distributed systems.

    • Lamport's Logical Clocks

      Lamport's logical clocks provide a method to order events in a distributed system without a global clock. They assign a numerical timestamp to events, which helps in determining the causal relationships between them.

    • Deadlock Handling Strategies

      Deadlock handling in distributed systems can be approached through prevention, avoidance, detection, and recovery. Strategies might involve resource allocation protocols or using timestamps for ordering.

    • Distributed File Systems

      Distributed file systems allow multiple users to access and manage files over a network as if they were local. They implement features such as replication, caching, and consistency to ensure reliability and performance.

    • Case Studies

  • Real Time Operating System: Introduction, Applications, Basic Model, Characteristics, Safety and Reliability, Real Time Task Scheduling

    Real Time Operating System
    • Item

      A Real Time Operating System (RTOS) is an operating system designed to manage hardware resources in a way that guarantees a response within a predetermined time frame. RTOS is crucial for applications where timing is critical, such as embedded systems.
    • Item

      RTOS is used in various fields including telecommunications, automotive systems, medical equipment, robotics, industrial automation, and consumer electronics. Applications often involve tasks that require high reliability and fast response times.
    • Item

      The basic model of an RTOS consists of a scheduler, task manager, and inter-task communication mechanisms. The scheduler determines the execution order of tasks based on their priority and timing constraints.
    • Item

      Characteristics of an RTOS include deterministic behavior, minimal interrupt latency, high concurrency, predictable response times, and efficient resource management. These traits enable systems to perform reliably under strict timing requirements.
    • Item

      Safety and reliability are paramount in RTOS, especially in critical applications. RTOS must ensure that failure conditions are managed effectively and that the system can recover from errors to maintain safe operations.
    • Item

      Real time task scheduling refers to the strategies used to manage access to the CPU and other resources. Common algorithms include Rate Monotonic Scheduling (RMS), Earliest Deadline First (EDF), and Fixed Priority Scheduling, which prioritize tasks based on response deadlines and periodicity.
  • Handheld System: Requirements, Technology Overview, PalmOS, Symbian OS, Android, Android Architecture and Security

    Handheld System: Requirements, Technology Overview, PalmOS, Symbian OS, Android, Android Architecture and Security
    • Requirements

      Handheld systems require specific hardware and software characteristics to ensure portability, efficiency, and user engagement. Key requirements include lightweight design, long battery life, high-speed connectivity, intuitive user interface, and a robust application ecosystem.

    • Technology Overview

      Handheld systems leverage advancements in microprocessor technology, display technologies, touch interfaces, and wireless communication protocols. These technologies must be integrated to achieve compactness and functionality.

    • PalmOS

      PalmOS was one of the first operating systems designed for handheld devices. It featured a simple graphical user interface, efficient task management, and was application-centric. PalmOS allowed developers easy access to system resources, pioneering the development of mobile applications.

    • Symbian OS

      Symbian OS was a popular operating system for smartphones, known for its multitasking capabilities and extensive support for wireless communication. It originally targeted enterprise users and supported C++ and Java for application development, boasting a significant market share in the early smartphone era.

    • Android

      Android is an open-source operating system based on the Linux kernel designed for mobile devices. It offers a rich application framework that allows developers to create innovative applications. Android supports various hardware and is backed by Google, ensuring a vast ecosystem and regular updates.

    • Android Architecture

      Android architecture consists of four key layers: the Linux Kernel, Android Runtime, Libraries, and Application Framework. The architecture supports various hardware devices and provides services like security, memory management, and process management.

    • Security

      Android security is built on multiple layers, including application sandboxing, secure IPC mechanisms, and user permissions. Regular updates and security patches are provided to address vulnerabilities. Additionally, Google Play Protect scans applications for potential threats before installation.

  • Case Studies: Linux system, Memory Management, Process Scheduling, Scheduling Policy, Managing I/O devices, Accessing Files, iOS architecture and SDK Framework

    Case Studies in Advanced Operating Systems
    • Linux System

      Linux is an open-source operating system that is widely used in servers, desktops, and embedded systems. It employs a monolithic kernel structure, providing efficient process and memory management. Key features include multi-user capabilities, multitasking, and robust security mechanisms. Linux uses a hierarchical file system, and system calls facilitate interaction with the kernel.

    • Memory Management

      Memory management in operating systems is crucial for optimizing performance and ensuring system stability. Techniques include paging, segmentation, and virtual memory. Linux employs a combination of these strategies to manage RAM efficiently, allowing multiple processes to run simultaneously without conflicts.

    • Process Scheduling

      Process scheduling is essential for managing CPU resources. The operating system utilizes scheduling algorithms to determine the order of process execution. Common algorithms include First-Come-First-Served (FCFS), Shortest Job Next (SJN), and Round Robin (RR). Linux uses Completely Fair Scheduler (CFS) for equitable CPU time distribution.

    • Scheduling Policy

      Scheduling policies define how processes are prioritized. In Linux, the CFS advances tasks in a fair manner, balancing response time and throughput. Real-Time scheduling policies ensure time-sensitive processes receive higher priority compared to non-real-time tasks.

    • Managing I/O Devices

      I/O device management is critical for allowing user processes to interact with hardware. Linux abstracts device operations through device files and uses drivers to facilitate communication between the kernel and hardware devices. The asynchronous I/O model helps improve system responsiveness.

    • Accessing Files

      File access in Linux is mediated by a well-defined API. Files are organized in a unified tree structure. Users and processes interact with files through system calls like open, read, write, and close. Permissions are managed via a user/group/model system to ensure security.

    • iOS Architecture and SDK Framework

      iOS employs a layered architecture with several frameworks. The Core OS layer handles low-level operations, while the Cocoa Touch layer supports UI elements. The iOS SDK provides tools and libraries for efficient app development. Memory management in iOS is primarily managed through Automatic Reference Counting (ARC) to optimize app performance.

  • Contemporary Issues: Expert lectures, online seminars, webinars

    Contemporary Issues in Advanced Operating Systems
    • Emerging Technologies

      Exploration of new technologies such as cloud computing, virtualization, and edge computing that impact operating systems.

    • Security Challenges

      Examination of current security threats and vulnerabilities in operating systems, including malware and data breaches.

    • Resource Management

      Discussion on efficient resource allocation, scheduling algorithms, and optimization techniques in operating systems.

    • Interoperability Issues

      Analysis of compatibility and communication between different operating systems and platforms.

    • Ethical Considerations

      Consideration of ethical issues related to privacy, data security, and user rights in modern operating systems.

    • User Interface and Experience

      Study of the impact of UI/UX design on user interaction with operating systems and applications.

Advanced Operating Systems

M.Sc Computer Science

Core V

2

Periyar University

23PCSC05

free web counter

GKPAD.COM by SK Yadav | Disclaimer