4.1 How Information Moves Around in a Computer
byte - number of adjacent bits used to represent a single character
word - number of adjacent bits that can be treated as a unit (smallest addressable part of memory)
Communication Pathways
bus - electrical path for signals to flow from point to point in a circuit: control bus, address bus, data bus
bus architecture - data transfer speed & amount of data that can be transferred and type of plug-in cards supported
open architecture
The parity bit is an extra bit that is added to the unit of information passed around in a computer. Even-parity systems choose the parity bit to make the number of one-bits in the unit of information even. Idd-parity systems have an odd number of one bits.
4.2 Types of Computers
Criteria of Classifying Computers
Multiuser Microcomputer System - 2-30 pcs networked
Benchmarks in the Microcomputer Industry
Microprocessors - Intel, Motorola, Zilog, MOS 6502, AMD, Cyrix, C & T, Pentium, Alpha
embedded microprocessors
Compatability - ROM-BIOS
RISC (Reduced Instruction Set Computer) vs. CICS
Computer Processing Speed: clock speed MHz (cycles/second)
memory type - Dynamic RAM has wait state
instruction set - RISC reduces clock cycles needed to execute
MIPS (386 - 3-4 MIPS; supercomputer >200)
support chips - coprocessor
LSI (Large Scale Integration)
VLSI (Very Large Scale Integration)
4.3 Operating Systems
THE OPERATING SYSTEM: THE BOSS
Definition: An operating system contains the algorithms that define how the computer is to interact with the outside world. this includes algorithms for controlling activities of the computer.
Definition: A computer's operating system (OS) is a group of programs designed to serve two basic purposes:
1. to control the allocation and use of the computing system's resources among the various users and tasks, and
2. to provide an interface between the computer hardware and the programmer that simplifies and makes feasible the creation, coding, debugging, and maintenance of applications programs.
ex. DOS, UNIX, OS/2, NeXTStep, Macintosh OS, VMS
Definitions
batch processing - execution of jobs by first collecting them and their associated data in a single batch without further interaction by the user.
Interactive Processing - allows user access to the computer through remote workstations during program execution
Real-time Processing - software coordinates its activities with those of the environment
virtual machine (VM) - one OS "simulating" another
Virtual Memory - page; rolling pages into primary storage; thrashing
Operating System Components
1. command processor - handles the dialogue with the user. Watches the devices and interprets the commands entered
2. scheduler - arranges for the execution of the program
3. process - series of operations associated with the execution of a sequence of instructions which affect a particular system or user action
4. file manager - unit that maintains the records pertaining to the information stored in mass storage. (Also protects files in mass storage against unauthorized access).
5. memory manager - coordinates the use of the computer's main memory.
6. resource allocator - coordinates the assignment of peripheral devices within the computer system.
7. dispatcher - coordinates the switching of the CPU among the various processes scheduled for execution.
JCL - job command language
Time Sharing
Interrupt Handling -
(i) save the current process's state (including program counter)
(ii) change the contents of the program counter to contain the location of the desired instructions (usually stored in the interrupt table)
Allocating time Slices - interrupts first process after fixed interval of time and begins second process, etc.
Resource Allocation
Coordinating the Use of Resources - disk units are shareable but tape and printers are not. Resource allocator prevents clashes over nonshareable resources
Can use a flag to identify if a resource is in use. Set and testing a flag requires several steps during which other devices could request use of the same resource.
Deadlock - involves two processes sharing more than one device on a partial basis.
Utility Software
editor - interactive way of creating and modifying files by means of a keyboard, mouse and monitor.
library of utilities
Getting It Started
IPL (initial program load) or Booting the system:
(i) ROM BIOS loads track 0 sector 0 of disk
(ii)boot loader loads I/O system(IBMBIO.COM & IBMBIO.DOS [IO.SYS & DOS.SYS])
(iii) IBMBIO.COM initializes hardware of computer and runs CONFIG.SYS; moves IBMBIO.COM into RAM
(iv) IBMDOS.COM loads COMMAND.COM which then runs AUTOEXEC.BAT
THE UNIX OPERATING SYSTEM: A CASE STUDY
UNIX: A User Perspective
command processor (shell) - interprets commands & schedules programs requested.
UNIX files - plain, directory, & device
organized as a file tree (hierarchical directory system)
working directory -
home directory -
Classes of users: owner, group, world
UNIX: An Inside View
kernel manages CPU, memory, file system, network and device interfaces, process management code
A graphical operating system interface (GUI) is one in which commands are usually give through a pointing device WIMPs
agents - illigent programs used to assist the computer user
4.4 Multiprocessing, Multiprogramming, Process Control and Distributive Systems
I/O bound vs. CPU (calculation) bound
Parallel processing or multiprocessing refers to computing being done with more than one CPU. This means that several processor sor CPUs are simultaneously computing on a program.
Multiprogramming is a programming technique in which the memory of a computer contains more than one program, and the multiprogramming operating systems causes the CPU to work on each of them according to certain rules.
time-sharing is a form of multiprogramming in which the different programs in memory belong to a number of human users
system crash
Real-time processing is computing which involves humans interacting with the computer in a situation where quick or timely return of results is important
Process control refers to the control of some process by computer in real time. It is necessary for the computer to accept information, do some calculations using the information, and then manage the process on the basis of these calculations.
TASKING AND PROCESSES
process - series of operations associated with the execution of a sequence of instructions which effect a particular system or user action (active)
concurrency - coexistence of several active processes
nondeterminacy - each process can be interrupted between any two steps
time slice - maximum time a running process can control the processor
MEMORY MANAGEMENT
multiprogramming - at least two processes can be active during any time interval
Relocation
dynamic relocation - relocation of active programs
done by OS's memory management facility
requires virtual memory
actual address = base address + offset address
(base address kept in relocation register)
Actual Memory Management
Swapping - entire block of code for current process is swapped to secondary storage and replaced with next process's block of code
Segmentation - use variable sized block's of code corresponding to the program's logical blocks
Paging - uses fixed sized block's of code
Paging
Uses page frames in main memory to hold pages of code
each active process requires a page table whose address is kept in the page table register
tasks of memory management:
loading & entering program into virtual memory
fetching pages from virtual memory to main memory
calculating effective addresses for instructions and operand locations during program execution
selecting & moving out of main memory and back to virtual memory those pages not immediately needed to make room for new pages essential for a process' continued execution
Networks and Distributive Processing
A computer network is a collection of hardware and software connected to allow data and information to be transmitted easily from one computer to another.
This usually includes the sharing of devices and/or data. A computer network typically contains computers, network interface cards or modems, communication software and some type of transmission media usually wire or fiber-optic cable.
Local area networks or LANs, are networks that are limited geographically to a single site. Most local area networks of microcomputers employ the "client-server" architecture. Most computers in the network are client workstations; a few are servers. The server computers provide various services to the clients. These servers usually include shared disk storage, shared printers, and shared wide-area-network (WAN) access.
Different Topologies node; star, ring and bus topologies
Local Area Networks(LAN); local net; integrated with "long-haul" networks - GATEWAYS AND BRIDGES
A file server is a computer dedicated to providing files to other computers on the network.Distributed processing involves using a network to allow a single entity to decentralize its computing needs over several networked computers
Client Server Computing - A computer containing the resource responds to requests from other machines
Issues of Security
What is computer security? For some it is controlling access to hardware, software and data of a computerized system
A large measure of computer security is simply keeping the computer system's information secure. In broader terms, computer security can be thought of as the protection of the computer and its resources against accidental or intentional disclosure of confidential data, unlawful modification of data or programs, the destruction of data, software or hardware. It includes the denial of use of one's computer facilities for criminal activities including computer related fraud and blackmail.
Computer security involves the elimination of weaknesses or vulnerabilities that might be exploited to cause loss or harm.
- Network Security IssuesMisc. threats - viruses, worms, trapdoors, Trojan horses, masqueradingsharing of resources complexity of system
unknown perimeter (linked networks) unknown path
many points of attack
- Security Exposures
privacy data integrity
authenticity covert channels
- Solutions
encryption
access control
automatic call back
node authentication
differentiated access rights
user authentication
passwords and passphrases
challenge-response systems
token or smart cards
exchange of secret protocol
personal characteristics
HOMEWORK: pp. - # 1, 2a, 4, 7
BACK TO Computer Science I Page