- •Ssd2: Introduction to Computer Systems contents
- •Prerequisites
- •Course Textbook
- •Hardware/Software Requirements
- •The purpose of ssd2 is for students to
- •Students successfully completing ssd2 will be able to
- •1.1 Overview of Computer Systems
- •1.1.1 Components of a Computer System
- •Hardware System
- •Software System—Operating System Software and Application Software
- •Network System
- •1.2 Evolution of Computer Systems
- •1.2.1 Brief History
- •1200S—Manual Calculating Devices
- •1600S—Mechanical Calculators
- •1800S—Punched Cards
- •1940S—Vacuum Tubes
- •1950S—Transistors
- •1960S—Integrated Circuits
- •1970S to Present—Microprocessor
- •Pace of Advancement
- •1.2.2 Applications of Computer Systems
- •In Education Multimedia-Facilitated Learning
- •Simulation-Based Education
- •Intelligent Machine-Based Training
- •Interactive Learning
- •In Business Supply Chain Management
- •Project Management
- •Customer Relationship Management
- •Sales and Marketing Using Electronic Commerce
- •Manufacturing Research
- •In Entertainment Movies
- •Video Games
- •1.3 Data Representation in a Computer System
- •1.3.1 Bits and Bytes
- •Data Representation Using Binary Digits
- •Increasing Need for Bytes
- •1.3.2 Number Systems
- •Decimal
- •Hexadecimal
- •Learning Exercise
- •2.1 Processor and Memory
- •2.1.1 Processor Basics
- •Processor
- •Instruction Execution with the cpu
- •Performance: Factors and Measures
- •Types of Processors
- •2.1.2 Types of Memory
- •Cmos Memory
- •Summary
- •2.1.3 Lab: Benchmarking (Optional)
- •2.2 Peripherals
- •2.2.1 Connecting Peripherals
- •Expansion Slots and Cards
- •Usb and FireWire
- •Comparing Different Ports
- •2.2.2 Buses
- •2.2.3 Input/Output Devices
- •Input Devices
- •Cameras
- •Digital Camcorders
- •Scanners
- •Output Devices: Monitors and Projectors
- •Crt Monitors
- •Lcd Monitors
- •Projectors
- •Output Devices: Printers
- •Ink Printers
- •Dye-Sublimation Printers
- •Laser Printers
- •Comparing Printers
- •2.3 Storage Devices
- •2.3.1 Disk Controller Interfaces
- •Ide Interface
- •Eide Master/Slave
- •2.3.2 Mass Storage
- •How Mass Storage Devices Differ from ram
- •Disk Drive Reliability
- •Optical Media: cDs versus dvDs
- •Magnetic Media
- •Optical versus Magnetic
- •Solid State
- •Comparing Storages
- •2.4 Putting Together the Hardware Components
- •2.4.1 How Components Work Together
- •2.4.2 Lab: Researching a Computer System
- •2.4.3 Lab: Online Configuration
- •2.5 Improving Computer Performance
- •2.5.1 Moore's Law
- •2.5.2 Bottlenecks
- •Bottlenecks—Slowing a Process
- •Typical Bottlenecks
- •Eliminating Bottlenecks
- •2.5.3 Throughput and Latency
- •Unit 3. Operating System Software
- •3.1 Structure
- •3.1.1 Layers of Software
- •Layers and Process Management
- •Encapsulation and Abstraction
- •Layers of Software
- •3.1.2 The bios: Life at the Bottom
- •The Role of the bios
- •Changing bios Settings
- •3.1.3 Process Control
- •3.1.4 Lab: The Task Manager
- •3.2 Device Management and Configuration
- •3.2.1 Interrupt Handling
- •Interrupts
- •Interrupt Priority and Nested Interrupts
- •Traps and Faults
- •3.2.2 Hardware Attributes
- •Installing Drivers
- •Changing a Driver's Configuration
- •3.2.3 Configuration
- •3.2.4 Lab: Device Management
- •3.3 Resource Sharing
- •3.3.1 Virtual Memory
- •Managing Memory
- •Relocation
- •Virtual Memory
- •3.3.2 File and Printer Sharing
- •Printers
- •3.4 File Systems
- •3.4.1 File Organization
- •Folders
- •Shortcuts
- •File Names and Types
- •3.4.2 File Allocation Table and nt File System
- •Clusters and File Allocation Tables
- •Nt File System
- •Unit 4. Application Software
- •4.1 Software Basics
- •4.2 Using Software Systems
- •4.2.1 Lab: dos Commands
- •4.2.2 Lab: Macros
- •4.2.3 Lab: Embedding Application Objects
- •4.3 Batch Script Files
- •4.3.1 Advanced Command-Line Functions
- •Dos Command Syntax
- •Review of File System Commands
- •Wildcard Characters
- •Redirection and Piping
- •4.3.2 Batch File Commands
- •Batch Files
- •Commands
- •4.3.3 Lab: Creating a Batch File
- •Example of a Batch File
- •Example of a Batch File with Arguments
- •4.4 Databases
- •4.4.1 Lab: Searching the Library of Congress
- •4.5 Software Engineering
- •4.5.1 Issues in Large-Scale Software Development
- •The Software Development Process
- •Define or Redefine the Problem
- •Plan a Solution to the Problem
- •Code the Solution
- •Evaluate and Test Everything
- •4.5.2 Open Source Model
- •Free Software
- •4.5.3 Tools for Software Creation and Management
- •Editors
- •Compilers
- •Debuggers
- •Integrated Development Environments (idEs)
- •Unit 5. Network Systems
- •5.1 Internet Basics
- •5.1.1 Mime Types
- •5.1.2 Internet Languages
- •JavaScript
- •5.2 Local and Wide Area Networks
- •5.3 Communication Strategies
- •5.3.1 Client-Server Framework
- •5.3.2 Peer-to-Peer Connectivity
- •5.4 Data Transfer Technologies
- •5.5 Internet Architecture
- •5.5.1 Routers and tcp/ip
- •Internet Protocol
- •Routers
- •Transmission Control Protocol
- •5.5.2 Domain Name Service
- •Domain Name Service
- •5.5.3 Connectivity
- •Conventional Analog Phone Lines
- •Isdn: Integrated Services Digital Network
- •Cable Modem
- •XDsl: Digital Subscriber Line
- •Dedicated High Speed Lines
- •5.5.4 Internet Service Providers
- •Unit 6. Computer Security
- •6.1 Security Threats
- •6.1.1 Intruders: Who, Why, and How?
- •6.1.2 Identity Theft and Privacy Violation
- •Password Cracking
- •Packet sniffing
- •Social Engineering/Fraud
- •Spoofing
- •Port Scanning
- •6.1.3 Malicious Software
- •Trojan Horse
- •Prevention
- •Detection
- •Counter Measures
- •6.1.4 Denial of Service
- •Network Connectivity
- •Network Bandwidth
- •Other Resource Consumption Attacks
- •Distributed Denial of Service Attack
- •Prevention
- •6.2 Security Technologies
- •6.2.1 Encryption
- •Substitution Cipher
- •Transmitting the Key
- •Private Key Encryption Scheme
- •Public Key Encryption Scheme
- •Hybrid Encryption Schemes
- •6.2.2 Applications of Encryption
- •Hard Drives
- •Dvd Movies
- •Cellular Phones
- •6.2.3 Authentication
- •Strong Passwords
- •Smart Cards
- •Biometrics
- •Digital Signatures
- •Digital Certificates and Certificate Authorities
- •Ssl Protocol
- •6.3 Prevention, Detection, and Recovery
- •6.3.1 Firewall
- •Application Gateway
- •Packet Filter
- •Application Gateway versus Packet Filter
- •Intruder Attacks Prevented by Firewall
- •Setting up a Firewall
- •6.3.2 Intrusion Detection Tools
- •Intrusion Detection Systems
- •Network Monitoring Tools
- •Anti-Virus Software
- •6.3.3 Data Recovery
- •6.3.4 Summary of Security Tips
1.3.2 Number Systems
Decimal
Binary
Hexadecimal
Learning Exercise
The world of computing uses several number systems to represent data. While the decimal system, also known as base10, will be familiar to people, as it is the numbering system used in everyday life, binary (base2) and hexadecimal (base16) are common number systems used in computing today.
Decimal
We will start our discussion on number systems by examining the decimal system as an example of a number system. The decimal number system contains ten values- 0, 1, 2, 3, 4, 5, 6, 7, 8, and 9. Each number in the decimal number system can be broken into digits by their "place" in the number. Using the number 43,872 as an example, 2 is in its 0th place, 7 is in its first place, 8 in its second, 3 in its third, and 4 in its fourth. Each place has a value that can be represented either exponentially or by its decimal values. The following table shows the exponential and decimal representation for each place in the number 43,872.
|
Place |
4th |
3rd |
2nd |
1st |
0th |
|
Digit |
4 |
3 |
8 |
7 |
2 |
|
Exponential value of the place |
104 |
103 |
102 |
101 |
100 |
|
Decimal value of the place |
10,000 |
1,000 |
100 |
10 |
1 |
Table 1 Exponential and decimal values corresponding to a digit's place in a number
Note that the exponential values are raised to a power corresponding to the place of the digit. For example, the exponential value of the 4th place is 104.
To determine the value of the number, multiply the digit contained in a column by the value that column represents. The following is a sample calculation for the previous example.
4 × 104 + 3 × 103 + 8 × 102 + 7 × 101 + 2 × 100 = 4 × 10,000 + 3 × 1000 + 8 × 100 + 7 × 10 + 2 × 1 = 40,000 + 3000 + 800 + 70 + 2 = 43,872
While performing these calculations on a decimal number seems trivial, it demonstrates a pattern, or formula can be used to convert a number in any numbering system to decimal.
dp(b)p + dp-1(b)p-1 + . . . + d0(b)0
Where p is the place, b is the base, dp is the digit in the highest place in the number, and dp-1 is the next highest place in the number, and so on.
Using the number example above, dp = 4, dp-1 = 3, b = 10, and p = 4.
4 × 104 + 3 × 103 + 8 × 102 + 7 × 101 + 2 × 100 = 43,872
The formula above can be used to compute the decimal value of any number in a given base. Below is the calculation for converting 214 to its decimal value:
|
Place |
1st |
0th |
|
Digit |
2 |
1 |
|
Exponential value of the place |
41 |
40 |
|
Decimal value of the place |
4 |
1 |
Table 2 Exponential and decimal values corresponding to a digit's place in a number
2(4)1 + 1(4)0 = 2× 4 + 1 × 1 = 8 + 1 = 9
So far, we have only discussed converting numbers to decimal. It is also important to be able to convert numbers from decimal to other numbering systems. Continuing with the base4 system, let us convert 89 from decimal to base4.
First, find the value p, where 4p < = 89 < 4p+1. In this case p = 3. p is the value of the highest place.
Now we can proceed by filling out the following chart:
|
Place |
3 |
2 |
1 |
0 |
|
Exponential value of the place |
43 |
42 |
41 |
40 |
|
Decimal value of the place |
64 |
16 |
4 |
1 |
|
Calculation |
89 ÷ 64 |
25 ÷ 16 |
9 ÷ 4 |
1 ÷ 1 |
|
Result |
1 |
1 |
2 |
1 |
|
Remainder |
25 |
9 |
1 |
0 |
Table 3 Converting numbers from base 10 to base 4
Therefore, 8910 = 11214.
We are now going to review binary and hexadecimal more closely.
Binary
Since all numbering-systems are treated the same, you already have all the tools necessary to convert to and from binary. Let's review converting from binary to decimal the number 101101102.
The highest place, p, is obtained by counting the number of places in the binary number, starting from zero. In this case, p = 7.
1 × 27 + 0 × 26 + 1 × 25 + 1 × 24 + 0 × 23 + 1 × 22 + 1 × 21 + 0 × 20 = 1 × 128 + 0 × 64 + 1 × 32 + 1 × 16 + 0 × 8 + 1 × 4 + 1 × 2 + 0 × 1 = 128 + 0 + 32 + 16 + 0 + 4 + 2 + 0 = 182
For example, in 1001102 the largest place is 2p, where p = 5. Because binary is the easiest numbering system to convert into decimal, it will help us later when we are convert hexadecimal numbers.
