Operating Systems: Theory, Concepts and Types

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to Lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

What is the primary role of system software in relation to computer hardware and application software?

  • To directly manage computer hardware without the need for application software.
  • To replace computer hardware with virtualized software solutions.
  • To provide a platform for running specific applications tailored to user needs.
  • To act as an interface between computer hardware and the application software. (correct)

Which of the following is NOT a main responsibility of an operating system?

  • Recognizing input from a keyboard.
  • Ensuring programs do not interfere with each other.
  • Providing a software platform for application software.
  • Developing application software for users. (correct)

Which of the following characteristics is essential for an operating system to support?

  • Incompatibility
  • Single Processing
  • Concurrency (correct)
  • Instability

Which of the following innovations was introduced during the third generation of computers (1965-1980)?

<p>Multiprogramming (B)</p> Signup and view all the answers

What was the significance of IBM's System/360 in the third generation of computers?

<p>It introduced a family of software-compatible machines. (C)</p> Signup and view all the answers

What key development marked the transition to the fourth generation of computers?

<p>The rise of personal computers (PCs). (A)</p> Signup and view all the answers

What is the significance of 'portability' in the context of the UNIX operating system?

<p>Its capacity to be easily adapted to run on different types of computer hardware. (A)</p> Signup and view all the answers

Which of the following is a characteristic feature of Windows NT?

<p>It allows concurrent execution of multiple tasks. (A)</p> Signup and view all the answers

In the context of operating systems, what does 'pre-emptive' multitasking refer to?

<p>A task scheduling approach where the OS temporarily halts a running process. (D)</p> Signup and view all the answers

How does the design of the processor affect the amount of memory a computer can access?

<p>The width of the address bus determines the accessible memory. (D)</p> Signup and view all the answers

Why is it important for an operating system to support file sharing?

<p>To enable collaboration and efficient use of resources. (A)</p> Signup and view all the answers

What benefit does a GUI typically offer over a command line interface?

<p>A more user-friendly and intuitive experience. (C)</p> Signup and view all the answers

Which statement is true about a command-line interface (CLI)?

<p>It allows users to execute commands sequentially. (A)</p> Signup and view all the answers

Which of the following is NOT a characteristic of open-source code?

<p>Restricts the availability of the source code to only licensed users. (B)</p> Signup and view all the answers

What is a key feature of a multi-user operating system?

<p>Multiple users can log in and use the system independently. (B)</p> Signup and view all the answers

How does virtual memory support contribute to the capabilities of an operating system?

<p>It enables the system to run programs that require more memory than is physically available. (A)</p> Signup and view all the answers

An operating system's responsibility to control peripheral devices includes which of the following tasks?

<p>Managing disk drives and printers. (B)</p> Signup and view all the answers

What is a typical function of the 'Security and Protection' layer in the structure of an operating system?

<p>Controlling access to resources and authenticating users. (C)</p> Signup and view all the answers

Which of the following correctly describes the relationship between an operating system and computer hardware?

<p>The operating system manages interactions between software and hardware. (D)</p> Signup and view all the answers

How do the responsibilities of an operating system contribute to creating a stable computing environment?

<p>By ensuring that different programs do not interfere with each other. (D)</p> Signup and view all the answers

What is the role of the 'Resource Allocation' layer within an operating system?

<p>Assigning system resources among various processes. (D)</p> Signup and view all the answers

In the context of operating systems, the term 'sharing' refers to:

<p>how system resources should be allocated among running processes. (C)</p> Signup and view all the answers

What fundamental advantage did the UNIX operating system bring to software development during its initial release?

<p>It was designed to be a command line system. (C)</p> Signup and view all the answers

How is the 'File Management' aspect of an operating system best described?

<p>This refers to organizing data and providing secure directory structure. (B)</p> Signup and view all the answers

Consider a scenario where an application requires more RAM than the physical memory available. What operating system capability addresses this?

<p>Virtual memory support. (D)</p> Signup and view all the answers

Which of the following operating systems is known for its strong focus on security?

<p>OpenBSD. (C)</p> Signup and view all the answers

In relation to system software, which of the following is considered the most important?

<p>Operating System (B)</p> Signup and view all the answers

What is the primary function of a 'logically monitor' in the context of second-generation computers?

<p>Monitoring the behavior of the running program and loading a new program if a crash occurred. (D)</p> Signup and view all the answers

Which of the following is a key element in computer hardware?

<p>Motherboard. (B)</p> Signup and view all the answers

Which of the follow should you NOT consider when choosing an OS?

<p>Other competitor OS' (A)</p> Signup and view all the answers

Out of the following, what is NOT a Unix-like operating system?

<p>Windows (A)</p> Signup and view all the answers

Who developed Unix?

<p>Ken Thompson, Dennis Ritchie, Brian Kernighan, Douglas Mcllroy, and Joe Ossanna (C)</p> Signup and view all the answers

What is the purpose of application software?

<p>Solves a particular problem for the user (A)</p> Signup and view all the answers

What does a 32 bit address allow?

<p>4300 MBytes (C)</p> Signup and view all the answers

What is NOT considered when choosing an OS?

<p>What your neighbor thinks (D)</p> Signup and view all the answers

What does the long term storage allow?

<p>For the data to not be lost when the computer is turned off. (B)</p> Signup and view all the answers

Which is Windows interface type?

<p>Graphical User (GUI) (B)</p> Signup and view all the answers

What did Bill Gates purchase in the fourth generation?

<p>DOS (Disk Operating System) (D)</p> Signup and view all the answers

Flashcards

Computer Hardware

A comprehensive term for the physical parts of a computer, such as CPU, memory, and input/output devices.

System Software

It provides a programming environment for programmers to create specific applications and acts as an interface between hardware and application software.

Application Software

A collection of programs designed for users to perform specific tasks, like spreadsheets or games.

Operating System (OS)

A software program that manages all available hardware resources on a computer and acts as an intermediary between the user and the computer hardware.

Signup and view all the flashcards

OS Responsibilities

Operating systems ensure different programs and users do not interfere with each other and provide a software platform for other programs to run.

Signup and view all the flashcards

OS Characteristics

Three main characteristics of operating systems, including Concurrency, Sharing and Long Term Storage.

Signup and view all the flashcards

Second Generation Computers

The ancestors of modern operating systems. They used a program called Logically monitor to monitors the behaviour of the running program.

Signup and view all the flashcards

Third Generation Computers

Operating systems that added techniques were added to the operating system such as multiprogramming, spooling and timesharing.

Signup and view all the flashcards

Windows 95

GUI-based system that was a successor to MS-DOS, which originally ran on top of MS-DOS.

Signup and view all the flashcards

Networking (Windows NT)

It supports the use of common server systems in a network of computers.

Signup and view all the flashcards

Pre-emptive (Windows NT)

It has the ability to temporarily stop the process currently running and give resources to another process instead.

Signup and view all the flashcards

GUI

An operating system that consists of icons, images and menu.

Signup and view all the flashcards

CLI

An operating system that consists of commands can be executed sequentially.

Signup and view all the flashcards

Unix

An operating system that is initially designed as a fun project (AT&T Bell Labs).

Signup and view all the flashcards

Linux

Distributions such as Ubuntu, Fedora, Debian, and CentOS that use the Linux kernel.

Signup and view all the flashcards

FreeBSD

A Unix-like operating system descended from the Berkeley Software Distribution (BSD).

Signup and view all the flashcards

Open-Source Code (Unix)

An operating system characterized by the availability of its source code, allowing users and programmers to modify it.

Signup and view all the flashcards

Multi-tasking (Unix)

An operating system that supports multitasking, which means that more than one application can run at the same time.

Signup and view all the flashcards

Multi-user (Unix)

Describes if an operating system is designed to support multiple users simultaneously. Each user has their own account, files, and processes.

Signup and view all the flashcards

Portability (Unix)

Describes that an operating system can be adapted to run on different types of computer hardware.

Signup and view all the flashcards

Network Capabilities (Unix)

Operating systems that Support internet connections and network applications.

Signup and view all the flashcards

Virtual Memory Support

An operating system's ability to run programs that require a bigger memory space than the amount of RAM (main memory) the computer has.

Signup and view all the flashcards

Operating System Structure

Each layer provides a set of functions dependent only on the services provided by the system layer within it.

Signup and view all the flashcards

Study Notes

Introduction to Operating Systems (OS)

  • Caitriona Nic Lughadha is the lecturer.
  • Lectures are on Thursdays from 9 am to 11 am, and labs are on Fridays from 10 am to 11 am.
  • 50% of the assessment is from Mid Semester Continuous Assessment and 50% from the End of Semester Exam.

Module Learning Outcomes

  • Discuss of the theory and concepts behind operating systems
  • Compare the strengths and weaknesses of modern operating systems
  • Apply tools to understand OS theory and concepts
  • Demonstrate system utility use and operating system investigation

Module Content Overview

  • The module covers Definition of OS, OS types, OS evolution, OS characteristics, and OS functions
  • Module also covers how to interact with an OS, as well as UNIX, Linux, Ubuntu, and Windows architectures
  • Module also covers interfaces, subsystems, GUIs, command lines, batch files, and the Windows and UNIX interfaces.
  • Module also covers processes, programs, states, concurrency, interprocess communication, CPU scheduling, and threads.
  • Scheduling policies are covered, including pre-emptive and non-pre-emptive, deadlock, real-time scheduling, and examples.
  • Module also covers files, operations, directories, pathnames, file types, sharing, links, attributes, disk structures, and file system examples like MS-DOS, Windows, and UNIX.
  • Module covers memory hierarchy, address spaces, static/dynamic memory, allocation, swapping, relocation, paging, segmentation, and virtual memory.
  • Also focuses on security threats, attackers, malware, defenses, authentication, and controlling resource access
  • Principles of I/O hardware, device drivers, buffering, spooling, and driver structure are also covered.

Module Assessment Breakdown

  • The Coursework In-Class Test will account for 50% of the overall grade
  • The End of Semester Exam covers remaining 50%

Lecture Agenda

  • Introduction to Operating Systems (OS)
  • Typical OS characteristics
  • Operating System Responsibilities
  • Historical background of OSs
  • Overview of Windows and Unix
  • Brief overview of Windows NT and Unix
  • Structure of a typical OSs

What is an Operating System

  • The computer is the sum of computer software and computer hardware
  • Computer software = System Software + Application Software.
  • System software is a general programming environment for programmers
  • System software interfaces hardware with application software
  • Application software consists of programs that perform tasks
  • Operating System is the most important piece of system software

Computer Hardware

  • The comprehensive term for the physical parts of a computer
  • This includes CPU, Memory, Disks, Motherboard, Input Devices (mouse, keyboard) Output Devices (printer, monitor), etc.

System Software

  • Provides a general programming environment in which programmers can create specific applications to suit their needs
  • Acts as an interface between the hardware of the computer and the application software that users need to run on the computer.

Application Software

  • Collection of programs used for performing different tasks
  • Examples include spreadsheets, database systems, desktop publishing systems, program development software, and games.
  • Programs designed to solve specific user problems

Operating Systems

  • Software program that manages the available hardware resources on a computer
  • It acts as an interface between a user of a computer and the computer hardware

Operating System Responsibilities

  • The OS performs basic tasks such as:
    • Recognizing input from the keyboard.
    • Sending output to the display screen.
    • Keeping track of files and directories on the disk.
    • Controlling peripheral devices (e.g. disk drives and printers).
  • Ensures different programs and users do not interfere with each other when running things simultaneously
  • Provides the software platform on which other programs can run

Operating Systems Characteristics

  • Concurrency: OS should be able to activate multiple apps. at the same time
  • Sharing: Resources shared between running processes
  • Long Term Storage: OS should be able to store data across reboots
  • Effeciency
  • Reliability
  • Maintainability
  • Small size

History of Operating Systems

  • In the second generation era computers (1955-1965), mainframes were expensive and operated by professionals in air-conditioned rooms
  • The logically monitor program helped monitor behavior and load other programs
  • The logically monitor is the ancestor to today's operating systems
  • In the third generation of computers(1965-1980), IBM introduced the System/360 called the ‘family’ of computers, which were software-compatible
  • IBM also included a single OS called OS/360
  • Techniques like Multiprogramming and spooling were introduced to increase operability
  • Timesharing was introduced as a variant of multiprogramming, where each user had access online rather than offline
  • The Unix OS was developed in the 1970s at AT&T Bell Laboratories
  • The fourth generation of computers (1980-Present) featured the introduction of the Personal Computer.
  • Early 1980s saw IBM design the IBM PC and then looking around for an OS to run on it
  • Bill Gates bought DOS (Disk Operating System) from a company and modified it to create what is now known as MS-DOS (Microsoft Disk Operating System)
  • Windows 95 was the first freestanding version of Windows and used MS-DOS only for booting
  • Windows NT was introduced as Another Microsoft Operating System

Choosing an OS

  • Existing Hardware:
    • It is pertinent to know if you want to upgrade or keep existing hardware
  • Software:
    • Check for compatibility of required software
  • Your Knowledge level:
    • Understanding the learning curve for a new OS is important
  • Budget:
    • OS costs vary widely so choosing one in a budget is key
  • Security:
    • Should provide password protection and have security protocols
  • Reliability:
    • How costly is the effect of a crash on your business?
    • Does the OS have crash tolerance?
  • Responsiveness:
    • How much does processing speed matter?
    • How fast is OS performance and what are the hardware demands?
  • User interface that suits your tastes
    • Is it worthwhile to learn new operating paradigms?
  • New software requirements
    • Does the software require a specific operating system platform?
    • Does the platform improve or not improve the performance of the software?
  • Will choosing this OS improve or harm knowledge sharing vs what's already present in organization?

OS Example - Desktop

  • Windows:
    • Windows 95, 98, ME (Microsoft)
    • Windows NT (Microsoft) (1993)
      • Windows 2000, Windows XP, Windows Vista (Jan 2007), Windows 7 (Oct 2009), Windows 10 (July 2015)
  • Mac OS (Apple)
  • Solaris (Sun)
  • Unix (Free Software Foundation)
    • Linux (a PC Version), RedHat, Ubuntu

Windows NT (Server)

  • Main releases include
    • Windows NT 3.1
    • Windows NT Server 3.5
    • Windows NT Server 3.51
    • Windows NT 4.0 Server
    • Windows 2000 Server
  • Support for a wide variety of new Plug and Play hardware (e.g. wireless products, USB devices, infrared devices, etc.)
    • Windows Server 2003
    • Windows Server 2003 R2
    • Windows Server 2008
    • Windows Server 2008 R2
    • Windows Server 2012
    • Windows Server 2012 R2
    • Windows Server 2016
    • Windows Server 2019
    • Windows Server 2022
    • Windows Server 2025 (soon)

Windows NT (Main Characteristics)

  • Is a 32-bit or 64-bit Operating System
  • It allows resources to be assigned to a different process at will, instead of waiting for a process to complete
  • Supports Concurrent execution of two or more tasks
  • Includes Security support, Compatibility with other OS's, Friendly GUI Interfaces, Stability, Reliability, Hierarchical File store:
  • Support for connecting to a network of computers and common server systems

Windows Server, "what 32-bit means"

  • The processor design & address bandwidth determine how much memory the cpu can access
  • Address bus of ‘x’ width can have 2^x memory spaces
    • E.g.: 16 bit has 2^16 or 65,536 memory locations or 65Kb
  • Modern 32 byte bus could have 2^32 - or 4 GB max space

Windows Server

  • There are 2 interfaces you can use, The GUI (graphic user interface) and CLI (command line interface)

  • GUI:

    • is more User friendly
    • Easy to use keyboard or mouse
    • Can run multiple apps in parallel
  • CLI:

    • Skilled and well-trained users can use interface
    • Commands can be executed sequentially
    • May be faster with GUI to execute certain tasks

Unix Heritage

  • Originally designed as a fun project at AT&T Bell Labs. in the 1960's
  • Ken Thompson, Dennis Ritchie, Brian Kernighan, Douglas Mcllroy, and Joe Ossanna are it's developers
  • Thompson's 'Space Travel' game - tested the boundaries of what computer could do at the time.
  • Re-written in C in 1973 for speed and portability
  • Designed to be command line system
  • The Free Software Foundation was created in 1984
  • It aims to reproduce all UNIX in a version free of licensing

Unix-like Operating Systems

  • Linux: Open-source Unix-like; used by Ubuntu, Fedora, Debian, and CentOS.
  • FreeBSD: Descended from Berkeley Software Distribution (BSD).
  • OpenBSD: Security-focused, derived from FreeBSD.
  • NetBSD: Known for portability across hardware architectures.
  • macOS: Apple OS, from NeXTSTEP and BSD. Core is called Darwin.
  • Solaris: From Sun Microsystems, owned by Oracle.
  • AIX: Developed by IBM for its Power Systems.
  • HP-UX: Developer by Hewlett Packard.

Unix Main Characteristics

  • Source code available for public use and modification, fostering collaboration and tailoring.
  • OS supports multi-tasking, which means that more than one application can run at a time
  • Supports operations from more than one user simultaneously
  • Portability: C language allows operation on diverse hardware by separating what is hardware dependent from what isnt.
  • Supports internet connections.
  • Supports network applications to be run (e.g., web browsing application).
  • The OS provides tools and utilities that are simple and powerful
  • OS can run bigger programs than RAM capacity shows!

Operating System Structure

  • Operating System Structure from outermost to innermost:
    • User Interface, Security and Protection, Resource Allocation, File Management, Input/Output, Memory Mgt, System Nucleus, Hardware
  • Structure is layered, where each layer provides functions based on the services within it.

Studying That Suits You

Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

Quiz Team

Related Documents

More Like This

IT1917 Linux Environment Quiz
6 questions

IT1917 Linux Environment Quiz

PersonalizedIrrational avatar
PersonalizedIrrational
Operating Systems Overview
5 questions
Use Quizgecko on...
Browser
Browser