IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

35
IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1

Transcript of IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

Page 1: IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

IOS110Introduction to Operating Systems using Windows

Instructor: Travis Mander

Session 1

1

Page 2: IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

Objectives:

•Software•Systems Software•Operating Systems•Memory Management•File systems

Page 3: IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

Software

Page 4: IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

SoftwareComputer systems definition

A computer system consists of two components:

What are the 5 categories of hardware on a computer? Examples?

Hardware

ComputerSystem

Software

4

Page 5: IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

Software, continuedSoftware

Software is what makes the sophisticated hardware so powerful. The hardware may as well be a paper-weight without software.

Software is a set of instructions in the language of the processor. This language is not readable by humans (typically).

The instructions will consist ofop-codes (operation codes) and,operands (sometimes)

Op-codesThe op-codes are fetched and decoded by the Control Unit (CU), and executed by the Arithmetic Logic Unit (ALU). Both the CU and the ALU are parts are parts of the Central Processing Unit (CPU)

OperandsThe operands are either scalar data (a fixed number, such as 5) or a memory address where data is stored. These are also fetched by the CU for use by the ALU.

5

Page 6: IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

Software, continued

Machine language for Motorola 6809 (8-bit CPU)

4F 97 13 96 12 27 09 4A 97 12 96 13 9B 11 20 F1 3E 02 05

op-codeoperanddata (also an operand)

The above program multiplies two numbers by repeated addition.

i.e.: 5 x 2 = 2 + 2 + 2 + 2 + 2

6

Page 7: IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

Computer systems definitionThe software component of a Computer System is broken down into two components:

Hardware

ComputerSystem

Software

System Application

Software, continued

7

Page 8: IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

Application SoftwareBy providing different sets of instructions to the computer, the hardware can be instructed to perform very different tasks such as word processing to weather prediction.

Application exampleAssuming the application is a spreadsheet. A user enters data at the keyboard. The spreadsheet software stores these values as numbers or text or formulas in memory. The formulas require calculations be performed based on data elsewhere in memory (on the spreadsheet). While all this is taking place, a constant update of what is happening is sent to the user through the monitor.

Task oriented softwareSoftware that performs a specific function that can be customized by the user, is referred to as Task Oriented Software. Examples of task oriented software are:

Word processingSpreadsheetsDatabase managementGraphicsCommunications

Software, continued

8

Page 9: IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

Office suiteOffice suite software combines many of the task oriented software into a group of packages that are able to share data between themselves. For example, a spreadsheet could be embedded into a document that is being prepared on a word processor.

The user interface is typically consistent between each of the packages within the suite (the buttons / icons / short-cuts etc.).

Business softwareIn addition to task oriented software, businesses use other types of software that are classified as:

Vertical market softwareGroup ware (collaborative software)

Software, continued

9

Page 10: IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

Vertical market softwareVertical market software is targeted to a specific industry, or a specific segment within an industry. For example, a software package that has been written specifically for Dentist Offices would be considered vertical market software.

This software has features that cannot be found in off-the-shelf task oriented software. For example, the Dentist application may have appointment scheduling.

A Doctor Office application may also have appointment scheduling, however there may be differences in that the Dentist application may have a customized database that tracks cleaning, tooth pulling, fillings, root canals, etc. that the Doctor Office application does not require.

Software, continued

10

Page 11: IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

Group wareGroup ware is a type of software that allows groups of people to collaborate on a project without having to meet face-to-face.

An e-mail package is a form of group ware More specifically, group ware stores information (documents, databases, etc.) in a central location. This ensures that all members of a project have access to the most current version of the information. Lotus Notes provides this functionality.

Software, continued

11

Page 12: IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

System SoftwareSystem software can be classified in two ways:

UtilitiesOperating system

System software defines the computing environment of the computer. Some forms of system software can only run on specific types of hardware, whereas other forms of system software can run on many types of hardware.

For example, the various system software packages distributed by Microsoft will run only on Intel-based PCs (Windows9x, Windows-NT, Windows2000 Professional, Windows XP). The system software distributed by Apple traditionally will run only on Motorola-based computers (MAC OS).

Software, continued

12

Page 13: IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

UtilitiesUtilities are used to manage the computer environment.

Some examples of utilities are:File manager - used to organize files into a hierarchy of directoriesBackup - used to copy files to a mass storage device such as tape of CD-ROM.Restore - used to restore files that have been backed upFile compression -used to reduce the size of file by eliminating the redundancy that naturally exists within the file.Defragmenter - used to reorganize disks so that files use contiguous sectors on disk. A file is fragmented if there is not enough contiguous space to store it (it will be scattered over the disk).Device drivers - a utility program that is specific to a manufacturer’s device (such as a printer). The computer will send the same set of commands to printer device drivers, it is up to the device driver to translate the commands for the specific device it was written for.

Software, continued

13

Page 14: IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

Operating SystemThe operating system is what controls and oversees the operation of the computer system.

The operating system is also software, but it is software that is always running on the computer system.

If you want to run a spreadsheet application, it is the operating system that you make the request to.

The operating system talks to the hardware to load the application from disk into memory, and begins running the application.

The operating system also controls access to the hardware. Applications typically do not communicate directly with the disk or the monitor, applications perform these tasks through the operating system.

Hard-wired vs. Booted Operating Systems.

GUI vs. Command Line interfaces

Software, continued

14

Page 15: IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

Operating system, continuedThis is what the computer system looks like when you take into account what each component talks to:

Software, continued

15

Page 16: IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

DefinitionsThere are several terms that are applied when talking about operating systems. These terms are used to describe the nature and capabilities of the operating system:

multi-usertime-sharingmultiprogrammingmultiprocessor

Multi-userA multi-user operating system allows for more than one user to interact with the computer system at a time.

The operating systems that typically run on a PC are not multi-user, whereas the operating system on a mainframe is multi-user

Software, continued

16

Page 17: IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

Time-sharingTime-sharing is typically associated with multi-user operating systems. Time-sharing is a means to ensure that all users have equal (or near equal) access to the computer system's resources.

A timer is set to interrupt the CPU periodically so that the computer system can service the next user.

MultiprogrammingA multiprogramming operating system appears to be running many tasks concurrently.

Various operations within the computer system waste the CPU's time as they are very slow by comparison. For example, waiting for data to be retrieved from disk is painfully slow for a CPU. If the CPU could be doing something else while waiting for the data, its efficiency could be increased.

Multiprogramming is the solution to this problem. While waiting for something to happen in the computer system, the CPU works on another task.

Software, continued

17

Page 18: IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

Multiprogramming continuedIn multiprogramming interrupts are generated to ensure that resources in the computer system are shared.

If a program needs to read or write data on a disk drive, it will ask the operating system to perform this operation which ‘interrupts’ the execution of the program. While the data is being read or written, the CPU can be servicing other programs while waiting for the task to complete. When the operation is complete, another interrupt is generated that restores the execution of the first program (unless there are higher priority programs still waiting to run).

Software, continued

18

Page 19: IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

MultiprocessorIn more sophisticated computer systems hardware, there is an allowance for more than one CPU. Programs can run simultaneously, each with its own processor.

In order to fully exploit the capabilities of a computer system with multiple processors, the operating system needs to be more sophisticated.

Windows NT 4.0 – Supported up to 4 microprocessorsWindows XP Professional– Supports up to 2 microprocessorsWindows XP Home - Supports only one microprocessor

SMP – Symmetric MutliprocessingThe processors used shared main memoryThe O/S can move tasks between processors to balance workload

Software, continued

19

Page 20: IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

Memory managementModern operating systems are very complex, so much so that there is not enough memory in the typical computer system to load it all and still have memory left over for running applications (especially if there are multiple applications that need to be run concurrently).

Modern operating systems consist ofResident programsNon-resident programs

Resident programsThere is one component of the operating system that never leaves memory while the computer system is powered on, it is the Kernel (Microkernel in XP architecture).

Non-resident programsA set of programs that can be loaded as needed:

Utilities (as discussed before)Non-resident O/S modules

Software, continued

20

Page 21: IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

Memory management, continuedThe operating system must manage memory so that multiple programs can be loaded simultaneously.

Two methods will be introduced:PartitionsPages

Memory partitionsThe memory is divided up into fixed sized partitions, or regions. The size of the regions is chosen to be large enough to hold the largest anticipated program. For example, if the largest program expected to be run on a computer is 200MB, then the regions will be 200MB each.

A more intelligent approach allows the regions to be of different sizes so that large programs are placed in large regions and small programs are placed in small regions.

Software, continued

21

Page 22: IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

Memory partitions, continuedThere is a problem of wasted memory. For example if the two smallest regions on a computer system are 5MB and 10MB, and the program that needs to run is 5.01MB. The 10MB region will be used, which results in 4.99MB being wasted.

Memory pagesThis is similar to the method of regions, however the regions are intentionally small in size (2KB or 4KB). Furthermore, a page is not expected to hold the entire program, only a portion of it.

The program is broken up into ‘equal’ size pages that fit into equal size page frames in primary storage (memory). The program is not guaranteed to be placed into contiguous page frames. The O/S tracks which page frame belongs to which program.

Software, continued

22

Page 23: IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

Memory pages, continuedAfter all primary storage has been allocated, it may be necessary to allocate more memory for an existing program or for a new program. This is accomplished by writing one or more pages to secondary storage, thus freeing up memory. When the pages that had been written to secondary storage are required again, other pages are written to secondary storage and the requested pages are read into primary storage.

Primary StorageSecondary Storage

Program AProgram BProgram C

Software, continued

23

Page 24: IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

Memory pages, continuedThe management of the pages consumes computer system resources. If the computer spends too much time managing the pages (reading them in and writing them out) the performance of the computer can suffer. This is referred to as ‘thrashing’.

In the case of Partitions or Regions, thrashing does not occur as the total memory space has been defined for the program.

Software, continued

24

Page 25: IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

File Systems

25

Page 26: IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

File Systems

StructureThe Windows operating system's file system is hierarchical in nature. Other hierarchies that you may have seen or experienced:

Family treeCompany organizational chartUNIX file structure

The hierarchy in the Windows file system consists of one of two elements:A folderA file

26

Page 27: IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

File Systems, continued

FolderA folder in Windows is something like a filing cabinet. The cabinet contains drawers, the drawers contain folders. It is where you store something.

In Windows the drawers and folders are each a folder. These folders may contain other folders.

The top-most folder is called 'root', and has the symbol '\', and is associated with a drive letter, e.g. 'C:\'.

An example file structure for Windows may look like:

27

Page 28: IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

File Systems, continued

FolderTo specify a name of a folder, you must list the drive letter and all folders between the root and the folder you are trying to name, each separated by a '\' character.

For example, to name the 'config' folder:

C:\windows\system32\config

. . .

C:\

temp windows Program files documents and settings

system32 Debug

drivers config

28

Page 29: IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

File Systems, continued

FileWithin the folders defined above, are files. The files contain data or software. The file is what you store in a folder.

Files may be found at any level of the folders.

29

Page 30: IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

Absolute and Relative PathsFor the following discussion, assume the following directory structure:

system

. . .

C:\

temp windows Program files documents and settings

system32 Debug

drivers config

File Systems, continued

30

Page 31: IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

Absolute and Relative PathsWhile you are using Windows, you are always considered to be 'in' a folder. This folder is your working folder. Any actions that you perform will be applied against this folder, unless you specify otherwise.

To reference anther folder, there are two methods to name it:

You can specify your destination folder by either: Absolute path Relative path

Absolute pathAbsolute path is used to name a file or folder relative to the top of the hierarchy. The name is specified starting at the root and specifying each folder on the path to the destination:

C:\windows\system32\config

File Systems, continued

31

Page 32: IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

Relative pathRelative path is used to name a file or folder relative to the user's position in the hierarchy. The name is specified starting at the current folder

cd windowscd system32cd config

Two special folders are defined: . and .. ‘.’ is the current folder‘..’ is the parent folder (the one above the current folder)

If you are in C:\windows\system32\config and you reference '..', the folder would be C:\windows\system32

Starting at C:\windows\system32\config, where are you referencing with:..\....\..\system.

File Systems, continued

3232

Page 33: IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

Windows XP

33

Page 34: IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

WindowsThere are two basic development streams to Windows XP:

Windows 9x/MEWindows NT

Windows 9x/MELed to Windows XP Home with the use of Windows NT kernel

Windows XP

3434

Page 35: IOS110 Introduction to Operating Systems using Windows Instructor: Travis Mander Session 1 1.

Windows NTLed to Windows XP Professional, as well as all server products:

Windows .NET Standard Serverbasic server from workgroup to enterprise

Windows .NET Web Serverscaled down version of Standard server intended for web hosting

Windows .NET Enterprise ServerFor large corporate networks, takes advantage of 8-way SMP, more physical memory

Windows .NET Datacentre Server16-way, 32-way SMP, supports up to 128GB RAM

Windows XP, continued

3535