Operating System Design and Programming Operating System Design and Programming

Total Page:16

File Type:pdf, Size:1020Kb

Operating System Design and Programming Operating System Design and Programming NATIONAL OPEN UNIVERSITY OF NIGERIA SCHOOL OF SCIENCE AND TECHNOLOGY COURSE CODE: CIT 723 COURSE TITLE: OPERATING SYSTEM DESIGN AND PROGRAMMING OPERATING SYSTEM DESIGN AND PROGRAMMING MODULE ONE OPERATING SYSTEM FUNDAMENTAL Unit 1: Introduction to operating system Unit 2: Objectives of Operating System Unit 3: Graphical User interface UNIT ONE INTRODUCTION TO OPERATING SYSTEM TABLE OF CONTENTS 1.0 Introduction 2.0 Objectives 3.0 Main content 3.1 What is Operating System 3.2 Types of Operating System 3.3 Views of Operating System 3.4 Qualities of an Operating System 4.0 Conclusion 5.0 Summary 6.0 Tutor Marked Assignment 7.0 References 1.0 INTRODUCTION In this unit you will learn about the definition of operating system as well as fundamentals of operating system. 2.0 OBJECTIVES At the end of this unit, you should be able to: • Define an operating system • Explain types and views of operating system • Identify the qualities of an operating system 3.0 MAIN CONTENT 3.1 WHAT IS AN OPERATING SYSTEM? The 1960’s definition of an operating system is the software that controls the hardware. However, today, due to microcode we need a better definition. We see operating system as the programs that make the hardware useable. In brief, an operating system is the set of programs that controls computer hardware. It is a program that acts as an intermediary between a user and the computer hardware. The purpose of an operating system is to provide an environment in which a user can execute programs in a convenient and efficient manner. The operating system must ensure the correct operation of the computer system. To prevent user programs from interfering with the proper operation of the system, the hardware must provide appropriate mechanism to ensure proper behavior. Some examples of operating systems are UNIX, Mach, MS-DOS, MS-Windows, Windows/NT, Chicago, O/S2, MacOS, VMS, MVS, and VM. Controlling the computer involves software at several levels. We will differentiate kernel services, library services and application-level services, all of which are part of the operating system. Processes run applications, which are linked together with libraries that perform standard services. The kernel supports the processes by providing a path to the peripheral devices. The kernel responds to service calls from the processes and interrupts from the devices. Operating system are resource managers. The main resource is computer hardware in the form of processors, storage, input/output, communication devices and data. Some of the operating system functions are: implementing the user interface, sharing hardware among users, allowing users to share data among themselves, preventing users from interfering with one another, scheduling resources among users, facilitating input/output, recovering from errors, accounting for resource usage, facilitating parallel operations, organizing data for secure and rapid access, and handling network communications. 3.2 TYPES OF OPERATING SYSTEM Within the broad category of operating systems, there are in general four types, classified based on the types of computers they control and the kind of application they support. The broad categories are: Real-Time Operating System (RTOS): Is commonly used to control machinery, scientific instruments and industrial systems. An RTOS typically has very little user interface capability, and no end-user utilities, since the system will be a “sealed box” when delivered for use. Single-user, single-tasking: As the name implies, this operating system is designed to manage the computer so that one user can effectively do one thing at a time. The palm OS for palm handheld computers is a good example of a modern single user, single task operating system. Single-user, Multi-tasking: This is the type of operating system most people use on their desktop and laptop computers today. Microsoft’s windows and Apple’s MacOS platforms are both examples of operating systems that will let a single user have several programs in operation at the same time. For example, it’s entirely possible for a windows user to be writing a note in a word processor while downloading a file from the internet while printing the text of an e-mail message. Multi-User: A multi-user operating system allows many different users to take the advantages of the computer’s resources simultaneously. The operating system must make sure that the requirements of the various users are balanced, and that each of the programs they are using has sufficient and separate resources so that a problem with one user doesn’t affect the entire community of users. UNIX, VMS, and mainframe operating systems, such as MVS, are examples of multi-user operating systems. 3.3 VIEWS OF OPERATING SYSTEM Operating system is a hard term to define. What you consider an operating system depends on your view of the system. As a scheduler/resource allocator: The operating system has resources for which it is in charge, responsible for handling them out (and later recovering them). Resources include CPU, memory, I/O devices, and disk space. As a virtual machine: Operating system provides a “new” machine. This machine could be the same as the underlying machine. Permits many users to believe they have an entire piece of hardware to themselves. As a multiplexor: Allows sharing of resources, and provides protection from interference and provides for a level of cooperation between users. 3.4 QUALITIES OF AN OPERATING SYSTEM What are the desirable qualities of an operating system? We can discuss them in terms of: Usability, Facilities, Cost, and Adaptability. USABILITY 1. Robustness: accept all valid input without error, and gracefully handle all invalid inputs 2. Proportionality: Simple, cheap and frequent things are easy. Also, expensive and disastrous things are hard. 3. Forgiving: Errors can be recovered from. 4. Convenient: Not necessary to repeat things, or do awkward procedures to accomplish things. 5. Powerful: Has high level facilities. FACILITIES 1. Sufficient for intended use 2. Complete: Don’t leave out part of a facility 3. Appropriate: Do not use fixed-width field input from terminal. COST 1. Want low cost and efficient services 2. Good algorithms: Make use of space/time tradeoffs, special hardware. 3. Low overhead: cost of doing nothing should be low. e.g. idle time at a terminal ADAPTABILITY 1. Tailored to the environment: Support necessary activities. Do not impose unnecessary restrictions. What are the things people do most - make them easy. 2. Changeable over time: Adapt as needs and resources change. e.g. expanding memory and new devices of new user population. 3. Extendible-Extensible: Adding new facilities and features 4.0 CONCLUSION You have learned about the definition of operating system as well as fundamentals of operating system. ACTIVITY B 1. State the features of operating system. 5.0 SUMMARY What you have learned in this unit borders on the definition of operating system as well as fundamentals of operating system. 6.0 TUTOR MARKED ASSIGNMENT 1. What is an operating system? 2. Explain briefly the types of operating system 3. Discuss the qualities of an operating system 7.0 REFERENCES/FUTHER READINGS 1. Lecture notes on operating system by Jelena Mamcenko, Vilinus Gediminas Technical University, 2010. 2. Dictionary of Computing, Fourth Ed. (Oxford: Oxford University Press, 1996). 3. History of Operating Systems by Ayman Moumina, 2001 4. A short introduction to operating system by Mark Burgess, 2002. 5. Operating system handbook by Bob Ducharme- McGraw-Hill, 1994. UNIT TWO OBJECTIVES OF OPERATING SYSTEM TABLE OF CONTENTS 1.0 Introduction 2.0 Objectives 3.0 Main content 3.1 History of Operating System 3.2 Objectives of Operating System 3.3 Operating System Services 4.0 Conclusion 5.0 Summary 6.0 Tutor Marked Assignment 7.0 References 1.0 INTRODUCTION In this unit you will learn about the history of operating system, the objectives of operating system and operating system services. 2.0 OBJECTIVES At the end of this unit, you should be able to: • Describe the generations of computers • Explain the objectives of operating system • Explain operating system services 3.0 MAIN CONTENT 3.1 HISTORY OF OPERATING SYSTEMS Historically, operating systems have been highly related to the computer architecture. It is good idea to study the history of operating system from the architecture of the computers on which they run. FIRST GENERATION The earliest electronic digital computers had no operating systems. Machines of the time were so primitive that programs were often entered one bit at a time on rows of mechanical switches (plug boards). Programming languages were unknown (not even assembly languages). Operating systems were unheard of. SECOND GENERATION By the early 1950’s, the routine has improved somewhat with the introduction of punch cards. The system of the 50’s generally ran one job at a time. These were called single-stream batch processing systems because programs and data were submitted in groups or batches. THIRD GENERATION The systems of the 1960’s were also batch processing systems, but they were able to take better advantage of the computer’s resources by running several jobs at once. So, operating system designers developed the concept of multiprogramming in which several jobs are in main memory at once, a processor is switched from job to job as needed to keep several jobs advancing while keeping the peripheral device in use. For example, on the system with no multiprogramming, when the current job paused to wait for other I/O operation to complete, the CPU simply sat idle until the I/O is finished. The solution for this problem that evolved was to partition the memory into several pieces, with a different job in each partition. While one job was waiting for I/O to complete, another job could be using the CPU.
Recommended publications
  • Direct Interaction with Large Displays Through Monocular Computer Vision
    DIRECT INTERACTION WITH LARGE DISPLAYS THROUGH MONOCULAR COMPUTER VISION A thesis submitted in fulfilment of the requirements for the degree of Doctor of Philosophy in the School of Information Technologies at The University of Sydney Kelvin Cheng October 2008 © Copyright by Kelvin Cheng 2008 All Rights Reserved Abstract Large displays are everywhere, and have been shown to provide higher productivity gain and user satisfaction compared to traditional desktop monitors. The computer mouse remains the most common input tool for users to interact with these larger displays. Much effort has been made on making this interaction more natural and more intuitive for the user. The use of computer vision for this purpose has been well researched as it provides freedom and mobility to the user and allows them to interact at a distance. Interaction that relies on monocular computer vision, however, has not been well researched, particularly when used for depth information recovery. This thesis aims to investigate the feasibility of using monocular computer vision to allow bare-hand interaction with large display systems from a distance. By taking into account the location of the user and the interaction area available, a dynamic virtual touchscreen can be estimated between the display and the user. In the process, theories and techniques that make interaction with computer display as easy as pointing to real world objects is explored. Studies were conducted to investigate the way human point at objects naturally with their hand and to examine the inadequacy in existing pointing systems. Models that underpin the pointing strategy used in many of the previous interactive systems were formalized.
    [Show full text]
  • WIMP Interfaces for Emerging Display Environments
    Graz University of Technology Institute for Computer Graphics and Vision Dissertation WIMP Interfaces for Emerging Display Environments Manuela Waldner Graz, Austria, June 2011 Thesis supervisor Prof. Dr. Dieter Schmalstieg Referee Prof. Dr. Andreas Butz To Martin Abstract With the availability of affordable large-scale monitors and powerful projector hardware, an increasing variety of display configurations can be found in our everyday environments, such as office spaces and meeting rooms. These emerging display environments combine conventional monitors and projected displays of different size, resolution, and orientation into a common interaction space. However, the commonly used WIMP (windows, icons, menus, and pointers) user interface metaphor is still based on a single pointer operating multiple overlapping windows on a single, rectangular screen. This simple concept cannot easily capture the complexity of heterogeneous display settings. As a result, the user cannot facilitate the full potential of emerging display environments using these interfaces. The focus of this thesis is to push the boundaries of conventional WIMP interfaces to enhance information management in emerging display environments. Existing and functional interfaces are extended to incorporate knowledge from two layers: the physical environment and the content of the individual windows. The thesis first addresses the tech- nical infrastructure to construct spatially aware multi-display environments and irregular displays. Based on this infrastructure, novel WIMP interaction and information presenta- tion techniques are demonstrated, exploiting the system's knowledge of the environment and the window content. These techniques cover two areas: spatially-aware cross-display navigation techniques for efficient information access on remote displays and window man- agement techniques incorporating knowledge of display form factors and window content to support information discovery, manipulation, and sharing.
    [Show full text]
  • Download Free Bumptop-3D Windows Desktop Organizer
    download free bumptop-3d windows desktop organizer Updated : Tuesday 08 June 2021 Maybe even better than free. Any file in any format can be uploaded and downloaded for free. If only we could, we surely would! On the other hand, using file can actually save you money. Why pay storage fees for a file that you just wanted to send to a friend or colleague? Also, many team chat apps have limits to the size of files that can be transferred within their apps. Files transferred the old-fashioned way tend to pile up and be forgotten about, eventually costing you money in data storage fees. Your wallet will be none-the-lighter! Just so we’re all 100% clear here: When you share a file, data is being transferred between your computer or phone andour servers, then from our servers to your friends device. Just upload the file you want to share with your friends and we send you a download link to your file.Files can be downloaded from any computer from our high speed servers. Unfortunately, we can’t make that part free. You decide who you want to share yourfiles with. Our service is completely free for everyone. filehosting provides an easy possibility for you to send large files to your friends. It is also allowed tolink to the download page from websites and communities. File is free to use with no gotchas and no hidden fees. Simply upload your file and share the link.You can give this download link to your friends by mail or instant messenger.
    [Show full text]
  • 3D Desktop Vdock Exodo Theme Free Download for Windows 7
    3d desktop vdock exodo theme free download for windows 7 click here to download 3D Abstract is a Window 7 Theme which includes 10 backgrounds of high resolution 3D shapes. This is a high resolution Windows 7. jab comics free galleries online, vengeance issential club sound vol2, look back in anger pdf torrent, 3d desktop dock exodo theme xp free download. Download Vista DreamScenes, Windows 7 Themes, Win 7 Themes, Win7 Themes, Vista Themes, XP Skins & Visual Styles and desktop themes for DesktopX, WindowBlinds, ObjectDock, Google and Vista Sidebar Gadgets, Virtual Dock 3D Exodo DesktopX Theme: vDock3D Exodo Link It's simple, and FREE! Login. 3d desktop vdock exodo theme for win7 free download the window xvid 3d desktop dock exodo theme indirPokemon FireRed LeafGreen Prima Official. Virtual Dock3D Exodo for DesktopX. (Running on Windows Vista, Intel Dual core, 2GB Ram). 3D Desktop. How to save a DesktopX theme? - Duration: Dario Arnaez 2, views · · how to download. 3d desktop free win 7 dock. Lala Karmela Satu Jam Saja (OST Satu Jam Saja). 3d desktop vdoc. 3d desktop dock exodo theme full download. 3d desktop ffor. real desktop free transforme l'écran de votre ordinateur en véritable bureau 3d, dans lequel vous Windows > 3d desktop vdock exodo theme free download. Desktop to Desktop exodo on free desktop vdock theme from 7 Pro On office 3d download Exodo 3d windows7 Para Senha vdock vdock 3g. 3D Desktop - VDock Exodo theme Опубликовано: 7 лет назад; Virtual Dock3D Exodo for DesktopX. who do things. Thain signatory overworking their pens download windows 8 paint for windows 7 64 bit edition and feeding long! corimbosa and covinous.
    [Show full text]
  • Enriching the Desktop Metaphor with Physics, Piles and the Pen
    Enriching the Desktop Metaphor with Physics, Piles and the Pen by Anand Agarawala A thesis submitted in conformity with the requirements for the degree of Master of Science Graduate Department of Computer Science University of Toronto © Copyright by Anand Agarawala 2006 Abstract Enriching the Desktop Metaphor with Physics, Piles and the Pen Anand Agarawala Master of Science Graduate Department of Computer Science University of Toronto 2006 We explore making virtual desktops behave in a more physically realistic manner by adding physics simulation and using piling instead of filing as the fundamental organizational structure. Objects can be casually dragged and tossed around, influenced by physical characteristics such as friction and mass, much like we would manipulate objects in the real world. In addition we explore giving icons the affordances of paper supporting crumpling, creasing and pinning up to the walls for annotation. To manipulate and browse piles we integrate advances in techniques and propose our own novel set. We present a prototype, called BumpTop, that coherently integrates a variety of interaction and visualization techniques optimized for pen input we have developed to support this new style of desktop organization. Encouraging results of a user evaluation are also presented in which participants were able to complete 88% of tasks and find the interface enjoyable and satisfying. i Acknowledgements During my time at the University of Toronto, I developed in a few ways. I moved away from home, matured and grew up a little, gained some intellectual capacity, gained some pounds and my first grey hairs, gained the affectionate nickname “crispy”, gained several friends through a multitude of good times, infamously embarrassed myself, got to meet some interesting people like Master T and be in the proximity of others (Rick Mercer, Naomi Klein, JRS-One), and had my ego destroyed and rebuilt numerous times.
    [Show full text]
  • Direct Pen Interaction with a Conventional Graphical User Interface
    HUMAN–COMPUTER INTERACTION, 2010, Volume 25, pp. 324–388 Copyright © 2010 Taylor & Francis Group, LLC ISSN: 0737-0024 print / 1532-7051online DOI: 10.1080/07370024.2010.499839 Direct Pen Interaction With a Conventional Graphical User Interface Daniel Vogel1 and Ravin Balakrishnan2 1Mount Allison University, Sackville, New Brunswick, Canada 2University of Toronto, Ontario, Canada We examine the usability and performance of Tablet PC direct pen input with a conventional graphical user interface (GUI). We use a qualitative observational study design with 16 participants divided into 4 groups: 1 mouse group for a baseline control and 3 Tablet PC groups recruited according to their level of experience. The study uses a scripted scenario of realistic tasks and popular office applications designed to exercise standard GUI components and cover typical interactions such as parameter selec- tion, object manipulation, text selection, and ink annotation. We capture a rich set of logging data including 3D motion capture, video taken from the participants’ point-of-view, screen capture video, and pen events such as movement and taps. To synchronize, segment, and annotate these logs, we used our own custom analysis software. We find that pen participants make more errors, perform inefficient movements, and express frustration during many tasks. Our observations reveal overarching problems with direct pen input: poor precision when tapping and dragging, errors caused by hand occlusion, instability and fatigue due to ergonomics and reach, cognitive differences between pen and mouse usage, and frustration due to limited input capabilities. We believe these to be the primary causes of nontext errors, which contribute to user frustration when using a pen with a conventional GUI.
    [Show full text]
  • Physics Engines in Mobile User Interfaces
    Physics Engines in Mobile User Interfaces Lisett Edström Magnus Winter Master's Thesis Department of Design Sciences Lund University ISRN: LUTMDN/TMAT-5139-SE EAT 2010 1 Abstract Mobile devices, like mobile phones, are becoming more and more powerful with screen sizes and resolution increasing. With this development in computational power and improvements in screens, 3D Graphical User Interfaces are becoming more popular and the desire for dynam- ical and fun interaction with the devices grows. One way of controlling and manipulating moving and colliding objects in applications in the user interface, long used in gaming, is to use a physics engine. The use of a physics engine in a user interface is not yet widely spread, but will probably become more and more common as companies need to find ways to differentiate themselves from each other. This Master’s Thesis report describes our investigation of how to improve the usability and user experience in a mobile user interface by utilizing a physics engine. Mobila enheter, sasom˚ mobiltelefoner, blir kraftfullare och skarmarnas¨ upplosning¨ och storlek vaxer.¨ Med den nya datorkraft som enheterna besitter tillsammans med de battre¨ skarmarna¨ har 3D-granssnitt¨ blivit popularare.¨ Viljan att tillverka ett grafiskt anvandargr¨ anssnitt¨ som ar¨ dynamiskt och roligt att anvanda¨ blir storre¨ och storre.¨ Ett satt¨ att kontrollera och manipulera rorliga¨ och kolliderande objekt i applikationer i anvandar-¨ granssnitt¨ ar¨ att anvanda¨ en fysikmotor. Dessa datorprogram har lange¨ anvants¨ inom spel- industrin, men har hittills inte utnyttjats i sarskilt¨ stor utstrackning¨ i grafiska granssnitt.¨ Detta lar¨ dock bli vanligare och vanligare i och med att foretag¨ behover¨ ”sticka ut”.
    [Show full text]
  • Electronic Environments for Reading: an Annotated Bibliography of Pertinent Hardware and Software (2011)
    Electronic Environments for Reading: An Annotated Bibliography of Pertinent Hardware and Software (2011) Corina Koolen (Leiden University), Alex Garnett (University of British Columbia), Ray Siemens (University of Victoria), and the INKE, ETCL, and PKP Research Groups List of keywords: reading environments, knowledge environments, social reading, social media, digital reading, e-reading, e-readers, hardware, software, INKE Corina Koolen is a PhD student and lecturer at Leiden University, the Netherlands and an ETCL research assistant. P.N. van Eyckhof 3, 2311 BV, Leiden, the Netherlands. Email: [email protected] . Alex Garnett is a PhD student at the University of British Columbia, Vancouver and an ETCL research assistant. Irving K. Barber Learning Centre, Suite 470- 1961 East Mall, Vancouver, BC V6T 1Z1. Email: [email protected] Dr. Raymond Siemens is Canada Research Chair in Humanities Computing and Distinguished Professor in the Faculty of Humanities at the University of Victoria, in English with cross appointment in Computer Science. Faculty of Humanities, University of Victoria, PO Box 3070 STN CSC, Victoria, BC, Canada V8W 3W1. Email: [email protected] . Introduction In researching and implementing new research environments, hardware is an important feature that up until recently was not a central concern: it was implied to be a personal computer. Larger (such as tabletop settings) as well as smaller digital devices (as the PDA) have existed for quite some time, but especially recent hardware such as dedicated e-reading devices (the Kindle, 2007), smartphones (the iPhone, 2007) and tablet computers (the iPad, 2010) have widened access to information, by extending reader control of digital texts.
    [Show full text]
  • Gestures for Pointing Devices in Screen-Based Environments
    Gestures for pointing devices in screen-based environments Florian Weil, www.derhess.de December 4, 2010 Abstract This paper analyses gesture design for pointing devices in screen-based envi- ronments. By exploring design patterns the analysis investigated the gesture design of ve dierent end-user products: Desktop operating systems, mobile operating systems, 3rd Party software, small software products, and common hardware products. The beginning of the paper denes what a gesture is, and the various kinds of gestures. Afterwards the analysis merges the gesture design results with the basic commands for pointing devices. This approach points out which gestures are often used, and in which context they are used. The re- sults give interaction designers and software engineers a guide for implementing gestures in their own products. Furthermore, the paper proposes solutions for gesture documentation, and a conceptual framework for complicated gestures. The last section takes an industrial design perspective on pointing devices as an input channel. It discusses the evolution of interface design from a hardware driven to a software driven approach. Contents 1 Introduction 1 2 Gestures for pointing devices 3 2.1 Denition of gesture in Human-Computer-Interaction . 3 2.2 Types of gestures . 4 2.3 Commands for gestures . 6 3 Analysis of gesture based Interaction for end-user products 9 3.1 Concept and analysis model . 9 3.2 Results from a Interaction Design view . 12 3.2.1 Level 1 gestures . 12 3.2.2 Level 2 gestures . 13 3.2.3 Level 3 gestures . 15 3.2.4 Level 4 and level 5 gestures .
    [Show full text]
  • Processing Desktop Work on a Large High-Resolution Display: Studies and Designs
    Processing Desktop Work on a Large High-Resolution Display: Studies and Designs by Xiaojun Bi A thesis submitted in conformity with the requirements for the degree of Doctor of Philosophy Department of Computer Science University of Toronto © Copyright by Xiaojun Bi 2011 Processing Desktop Work on a Large High-Resolution Display: Studies and Designs Xiaojun Bi Doctor of Philosophy Department of Computer Science University of Toronto 2011 Abstract With the ever increasing amount of digital information, information workers desire more screen real estate to process their daily desktop work. Thanks to the quick advance in display technology, big screens are increasingly affordable and have been gradually adopted in desktop computing environments. A large wall-size high resolution display, a recent emerging class of display which possesses a huge visualization surface, could potentially benefit information processing work. In this dissertation we investigate such a large display as the primary working space for information processing work. We firstly conducted a longitudinal diary study and three control experiments investigating effects of a large display on information processing work. The longitudinal diary study investigates large display use in a personal desktop computing context by comparing it with single- and dual-monitor. The three controlled experiments further investigate the effects of two factors determining resolution of a display—physical size and pixel-density on users’ performance and behaviors. The diary study reveals the distinct behavior patterns of large ii display users in partitioning screen space and managing windows, while the control experiments deeply reveal the effects of the physical size and pixel density of a display on different information processing tasks.
    [Show full text]