Part II: Software In part II, we focus on topics associated with software. In particular, we will investigate the discovery, representation, and communication.

Slides:



Advertisements
Similar presentations
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 3: Operating Systems Computer Science: An Overview Tenth Edition.
Advertisements

Operating System.
Operating System Structure
1. 2 The Evolution of Operating Systems : §The single processing machines of 1940’s and 1950’s were not very flexible or efficient. §The processing is.
(4.4) Internet Protocols Layered approach to Internet Software 1.
Review: Chapters 1 – Chapter 1: OS is a layer between user and hardware to make life easier for user and use hardware efficiently Control program.
1 Chapter 9 Computer Networks. 2 Chapter Topics OSI network layers Network Topology Media access control Addressing and routing Network hardware Network.
Jacob Boston Josh Pfeifer. Definition of HyperText Transfer Protocol How HTTP works How Websites work GoDaddy.com OSI Model Networking.
Cs238 Lecture 3 Operating System Structures Dr. Alan R. Davis.
Chapter 11 Operating Systems
1 Operating Systems Ch An Overview. Architecture of Computer Hardware and Systems Software Irv Englander, John Wiley, Bare Bones Computer.
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment Chapter 8: Implementing and Managing Printers.
Systems Architecture, Fourth Edition1 Internet and Distributed Application Services Chapter 13.
Operating system Part three Introduction to computer, 2nd semester, 2010/2011 Mr.Nael Aburas Faculty of Information.
Chapter 3 Operating Systems. 2 Chapter 3 Operating Systems 3.1 The Evolution of Operating Systems 3.2 Operating System Architecture 3.3 Coordinating the.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 3: Operating Systems Computer Science: An Overview Tenth Edition.
©Brooks/Cole, 2003 Chapter 6 Computer Networks. ©Brooks/Cole, 2003 Understand the rationale for the existence of networks. Distinguish between the three.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 3: Operating Systems Computer Science: An Overview Tenth Edition.
Evolved from ARPANET (Advanced Research Projects Agency of the U.S. Department of Defense) Was the first operational packet-switching network Began.
Introduction to Operating Systems
Operating Systems and Networks Fall What is an Operating System An operating system is a software program that coordinates activities between the.
Chapter 3 Operating Systems Introduction to CS 1 st Semester, 2015 Sanghyun Park.
Operating System A program that controls the execution of application programs An interface between applications and hardware 1.
70-291: MCSE Guide to Managing a Microsoft Windows Server 2003 Network Chapter 3: TCP/IP Architecture.
Chapter 4 Networking and the Internet Introduction to CS 1 st Semester, 2015 Sanghyun Park.
Operating System. Architecture of Computer System Hardware Operating System (OS) Programming Language (e.g. PASCAL) Application Programs (e.g. WORD, EXCEL)
Operating Systems CS3502 Fall 2014 Dr. Jose M. Garrido
Copyright © 2012 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 3: Operating Systems Computer Science: An Overview Eleventh Edition.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 3: Operating Systems Computer Science: An Overview Tenth Edition.
Lecture 10: 9/26/2002CS149D Fall CS149D Elements of Computer Science Ayman Abdel-Hamid Department of Computer Science Old Dominion University Lecture.
Department of Electronic Engineering City University of Hong Kong EE3900 Computer Networks Introduction Slide 1 A Communications Model Source: generates.
Chapter 4 Networking and the Internet. © 2005 Pearson Addison-Wesley. All rights reserved 4-2 Chapter 4: Networking and the Internet 4.1 Network Fundamentals.
INVITATION TO COMPUTER SCIENCE, JAVA VERSION, THIRD EDITION Chapter 6: An Introduction to System Software and Virtual Machines.
Application Layer Khondaker Abdullah-Al-Mamun Lecturer, CSE Instructor, CNAP AUST.
Computers Operating System Essentials. Operating Systems PROGRAM HARDWARE OPERATING SYSTEM.
Lecture 8: 9/19/2002CS149D Fall CS149D Elements of Computer Science Ayman Abdel-Hamid Department of Computer Science Old Dominion University Lecture.
1 Sec (3.2) Operating System Architecture OS. 2 Software dividing into two categories: 1. Application software 2. System Software  Operating System 
The Internet Lecture 16 CSCI 1405, CSCI 1301 Introduction to Computer Science Fall 2009.
Chapter 3 Operating Systems © 2007 Pearson Addison-Wesley. All rights reserved.
Operating Systems © 2007 Pearson Addison-Wesley. All rights reserved.
Chapter 3: Operating Systems
Computer Science/Ch.3 Data Manipulation 3-1 Chapter 3 Data Manipulation.
Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition, Chapter 3: Process-Concept.
We will focus on operating system concepts What does it do? How is it implemented? Apply to Windows, Linux, Unix, Solaris, Mac OS X. Will discuss differences.
NETWORKING FUNDAMENTALS. Network+ Guide to Networks, 4e2.
Chapter 3 Operating Systems. © 2005 Pearson Addison-Wesley. All rights reserved 3-2 Chapter 3 Operating Systems 3.1 The Evolution of Operating Systems.
1 Process Description and Control Chapter 3. 2 Process A program in execution An instance of a program running on a computer The entity that can be assigned.
1 Device Controller I/O units typically consist of A mechanical component: the device itself An electronic component: the device controller or adapter.
CT101: Computing Systems Introduction to Operating Systems.
1 OPERATING SYSTEMS. 2 CONTENTS 1.What is an Operating System? 2.OS Functions 3.OS Services 4.Structure of OS 5.Evolution of OS.
Introduction to Operating Systems
Chapter Objectives In this chapter, you will learn:
Chapter 3: Operating Systems
Chapter 2: System Structures
An Introduction to Operating Systems
Introduction to Operating System (OS)
Chapter 3: Windows7 Part 4.
Operating System Architecture OS
Information Technology Ms. Abeer Helwa
Chapter 3 Operating Systems
Chapter 3: Operating Systems
Chapter 3: Operating Systems
CS149D Elements of Computer Science
Introduction to Operating Systems
Chapter 3: Operating Systems
Chapter 3: Operating Systems Computer Science: An Overview
Chapter 3: Operating Systems
Chapter 3: Operating Systems
Presentation transcript:

Part II: Software In part II, we focus on topics associated with software. In particular, we will investigate the discovery, representation, and communication of algorithms. Operating systems and networks. Algorithms. Programming languages. Software engineering.

Ch. 3 Operating Systems and Networks The evolution of operating systems. Operating system architecture. Coordinating the machine’s activities. Handling Competition among processes. Networks. Network protocols.

Operating Systems Why needs an operating system? Computer applications often require a single machine to perform activities that may compete with one another for the machine’s resources. It requires a high degree of coordination to ensure that unrelated activities do not interfere with one another and that communication between related activities is efficient and reliable. What is an operating system? A software system which handles such a coordination task.

The evolution of Operating Systems Single-processor systems. Batch processing - the execution of jobs (programs) by collecting them in a single batch, then executing them without further interaction with the user. A job queue (FIFO) and a job control language (JCL). The main drawback to batch processing is no interaction between user and job.

The Evolution of Operating Systems Interactive processing. Real-time processing. Time-sharing. Multitasking - time-sharing for a single- user system. From multiprocessor systems to networks.

Operating System Architecture Software ApplicationSystem Utility Operating system ShellKernel

Operating System Architecture A machine’s software can be divided into two categories: application software and system software. Application software - the programs for performing tasks particular to the machine’s utilization. System software - performs tasks which are common to computer systems in general.

Operating System Architecture System software can be divided into two categories: operating-system software and utility software. Utility software consists of software units that extend the capabilities of the operating system. For example, the ability to format a disk or software for communicating through a modem over telephone lines.

Operating System Architecture Shell - the portion of an operating system that defines the interface between the operating system and its users. Graphical user interface (GUI). Importance of uniformity in the human- machine interface across a variety of machines. UNIX Vs. MS-DOS and Windows.

Operating System Architecture Kernel - the internal part of an operating system, which contains those software components that perform the very basic functions required by the computer installation. File manager - file descriptor and directory (folder). Device drivers - communicate with controllers.

Operating System Architecture Memory manager - virtual memory. Scheduler and dispatcher. Booting (boot strapping). Bootstrap - a short program placed in ROM and this program is executed automatically when the machine is turned on. –transfer the operating system to memory –direct the CPU to execute the operating system

Coordinating the Machine Activities Process - is a dynamic activity whose properties change as time progresses. Process state - current status of the activity, including the current position in the program being executed and the values in the other CPU registers and the associated memory cells. A program Vs. a process. Interprocess communication.

Coordinating the Machine’s Activities Process administration - the tasks associated with process coordination are handled by the scheduler and dispatcher within the operating system’s kernel. Process table - keeps information of a process; when a process is created, it is assigned a memory area, a priority, and a status - ready or waiting.

Coordinating the Machine’s Activities The dispatcher is the component of the kernel that ensures that the scheduled processes are actually executed. In a time-sharing system, the time is divided into time slices or quanta. The dispatcher initiates a timer circuit each time a process begins its time slice. At the end of the time slice, the timer circuit generates an interrupt.

Coordinating the Machine’s Activities When the CPU receives an interrupt, it saves the current state of the process in the process table, and begins executing the interrupt handler, which is a part of the dispatcher. At this moment, the dispatcher allows the scheduler to update the process table.

Coordinating the Machine’s Activities The dispatcher then selects the highest priority process among the ready processes, restarts the timer circuit, and allows the selected process to begin its time slice. At times a process’s time slice is terminated before the timer has expired (for example, an I/O request), the scheduler will update the process table to reflect the process’s waiting status.

Coordinating the Machine’s Activities Later, when the controller indicates that the I/O request has been completed, the scheduler will reclassify the process as ready.

Coordinating the Machine’s Activities The various units within an operating system compete for time slices under control of the dispatcher. To coordinate their activities, these processes must communicate with one another. –For example, to schedule a new process, the scheduler must obtain memory space from the memory manager for that process

Coordinating the Machine’s Activities The client/server model for inter-process communication. A client makes requests to servers and waits for replies. A server satisfies the requests and sends replies back to the clients. The client/server model in the design of software leads to uniformity among the types of communication taking place in the system.

Handling Competition Among Processes Competing resources among processes. The file manager allocates both access to current files and disk space for the construction of new files. The memory manager allocates memory space. The scheduler allocates space in the process table. The dispatcher allocates time slices.

Handling Competition Among Processes To control access to the printer, the operating system must keep track of whether the printer has been allocated. –By a flag: check the flag then set the flag –Problem: check the flag and find it clear; the process is then interrupted; the new process also requests the use of the printer; the operating system allows it to use the printer; later, the first process resumes and the operating system allows it to use the printer too

Handling Competition Among Processes Interrupt disable and interrupt enable. Test-and-set instruction. A properly implemented flag is called a semaphore. Critical region - a sequence of instructions which can be executed by only one process. –Mutual exclusion –Guard the critical region with a semaphore

Handling Competition Among Processes Deadlock - when two or more processes are blocked from processing because each is waiting for access to resources allocated to another. Three necessary conditions for deadlock: – 1. There is competition for non-shareable resources

Handling Competition Among Processes – 2. The resources are requested on a partial basis; that is, having received some resources, a process will return later to request more – 3. Once a resource has been allocated, it cannot be forcibly retrieved Deadlock detection and correction to attack the third condition. Deadlock avoidance to attack the first two conditions.

Handling Competition Among Processes –Require each process to request all its resources at one time –Make nonshareable resources appear shareable holding data for output at a later but more convenient time spooling

Networks Local area networks (LAN) Vs wide area networks (WAN). Open networks Vs proprietary networks. Network configurations - ring, bus, star, and irregular.

Networks Internet - initiated in 1973 by the Defense Advanced Research Projects Agency (DARPA) to develop the ability to connect a variety of computer networks so that they can function as a single network. –A collection of network clusters (domains) Internet addressing - network identifier, host address; ex., –ssenterprise.awl.com –alpchen.cs.nthu.edu.tw

Networks and name server. The world wide web - hypertext and hypermedia documents. A browser - a client.

Networks Uniform resource locator (URL) - a browser can contact the proper server and request the desired document. –Figure 3.12, homepage: portal Hypertext Markup Language (HTML). –Special markers that describe how the document should appear on the computer screen and which items within the document are to be linked to other documents for a browser to perform its task

Network Protocols Protocols - the rules that govern the communication between different components within a computer system. Token ring protocol for networks with the ring topology (Figure 3.13). CSMA/CD (carrier sense, multiple access with collision detection) in an Ethernet (Figure 3.14).

Network Protocols You Shipper Airline Customer Shipper Airline Package Container Aircraft

Application layer Network Protocols: The Internet Software Layer Transport layer Network layerLink layer Application layerTransport layer Network layerLink layer Message sourceMessage destination

Network Protocols: The Internet Software Layer Application layer consists of software units that must communicate with each other across the Internet. –FTP, telnet, requires name server services Transport layer divides long messages into packets. Network layer wraps the packets it receives with the intermediate address. Link layer deals with the communication details (whether token ring or bus is used). Figure 3.17.

Network Protocols Open system interconnection (OSI) reference model produced by International standards organization (ISO). –Seven-level hierarchy TCP/IP protocol suite defines the four- level hierarchy.

Networks Unauthorized access to information and vandalism. Passwords and data encryption. Virus and worm.