chapter 1 introductionweb-ext.u-aizu.ac.jp/~hitoshi/courses/os06/slides/chap1.pdf · limit-2...
TRANSCRIPT
![Page 1: Chapter 1 Introductionweb-ext.u-aizu.ac.jp/~hitoshi/COURSES/OS06/SLIDES/chap1.pdf · Limit-2 Limit-1 Base-2 Base-1 (b) Limit-1 Base-1 Registers when program 1 is running Registers](https://reader036.vdocuments.us/reader036/viewer/2022070806/5f049cc57e708231d40ed58e/html5/thumbnails/1.jpg)
Chapter 1
Introduction
1.1 What is an operating system
1.2 History of operating systems
1.3 The operating system zoo
1.4 Computer hardware review
1.5 Operating system concepts
1.6 System calls
1.7 Operating system structure
![Page 2: Chapter 1 Introductionweb-ext.u-aizu.ac.jp/~hitoshi/COURSES/OS06/SLIDES/chap1.pdf · Limit-2 Limit-1 Base-2 Base-1 (b) Limit-1 Base-1 Registers when program 1 is running Registers](https://reader036.vdocuments.us/reader036/viewer/2022070806/5f049cc57e708231d40ed58e/html5/thumbnails/2.jpg)
Introduction
Banking system
Airline reservation
Operating system
Web browser
Compilers Editors
Application programs
Hardware
System programs
Command interpreter
Machine language
Microarchitecture
Physical devices
• A computer system consists of
– hardware
– large system programs
– large application programs
2
![Page 3: Chapter 1 Introductionweb-ext.u-aizu.ac.jp/~hitoshi/COURSES/OS06/SLIDES/chap1.pdf · Limit-2 Limit-1 Base-2 Base-1 (b) Limit-1 Base-1 Registers when program 1 is running Registers](https://reader036.vdocuments.us/reader036/viewer/2022070806/5f049cc57e708231d40ed58e/html5/thumbnails/3.jpg)
What is an Operating System
• It is an extended machines
– Hides the messy details which must be performed
– Presents user with a virtual machine, easier to use
• It is a resource manager
– Presents user with a virtual machine, easier to use
– Each program gets space on the resource
3
![Page 4: Chapter 1 Introductionweb-ext.u-aizu.ac.jp/~hitoshi/COURSES/OS06/SLIDES/chap1.pdf · Limit-2 Limit-1 Base-2 Base-1 (b) Limit-1 Base-1 Registers when program 1 is running Registers](https://reader036.vdocuments.us/reader036/viewer/2022070806/5f049cc57e708231d40ed58e/html5/thumbnails/4.jpg)
History of Operating Systems (1)
1401 7094 1401
(a) (b) (c) (d) (e) (f)
Card reader
Tape drive Input
tapeOutput tape
System tape
Printer
• Early batch system
– bring cards to 1401
– read cards to tape
– put tape on 7094 which does computing
– put tape on 1401 which prints output
4
![Page 5: Chapter 1 Introductionweb-ext.u-aizu.ac.jp/~hitoshi/COURSES/OS06/SLIDES/chap1.pdf · Limit-2 Limit-1 Base-2 Base-1 (b) Limit-1 Base-1 Registers when program 1 is running Registers](https://reader036.vdocuments.us/reader036/viewer/2022070806/5f049cc57e708231d40ed58e/html5/thumbnails/5.jpg)
History of Operating Systems (2)
• First generation 1945 - 1955
– vacuum tubes, plug boards
• Second generation 1955 - 1965
– transistors, batch systems
• Third generation 1965 - 1980
– ICs and multiprogramming
• Fourth generation 1980 - present
– personal computers
5
![Page 6: Chapter 1 Introductionweb-ext.u-aizu.ac.jp/~hitoshi/COURSES/OS06/SLIDES/chap1.pdf · Limit-2 Limit-1 Base-2 Base-1 (b) Limit-1 Base-1 Registers when program 1 is running Registers](https://reader036.vdocuments.us/reader036/viewer/2022070806/5f049cc57e708231d40ed58e/html5/thumbnails/6.jpg)
History of Operating Systems (3)
$JOB, 10,6610802, MARVIN TANENBAUM
$FORTRAN
$LOAD
$RUN
$END
Fortran program
Data for program
• Structure of a typical FMS job - 2nd generation
6
![Page 7: Chapter 1 Introductionweb-ext.u-aizu.ac.jp/~hitoshi/COURSES/OS06/SLIDES/chap1.pdf · Limit-2 Limit-1 Base-2 Base-1 (b) Limit-1 Base-1 Registers when program 1 is running Registers](https://reader036.vdocuments.us/reader036/viewer/2022070806/5f049cc57e708231d40ed58e/html5/thumbnails/7.jpg)
History of Operating Systems (4)
Job 3
Job 2
Job 1
Operating system
Memory partitions
• Multiprogramming system
– three jobs in memory - 3rd generation
7
![Page 8: Chapter 1 Introductionweb-ext.u-aizu.ac.jp/~hitoshi/COURSES/OS06/SLIDES/chap1.pdf · Limit-2 Limit-1 Base-2 Base-1 (b) Limit-1 Base-1 Registers when program 1 is running Registers](https://reader036.vdocuments.us/reader036/viewer/2022070806/5f049cc57e708231d40ed58e/html5/thumbnails/8.jpg)
The Operating System Zoo
• Mainframe operating systems
• Server operating systems
• Multiprocessor operating systems
• Personal computer operating systems
• Real-time operating systems
• Embedded operating systems
• Smart card operating systemstems
8
![Page 9: Chapter 1 Introductionweb-ext.u-aizu.ac.jp/~hitoshi/COURSES/OS06/SLIDES/chap1.pdf · Limit-2 Limit-1 Base-2 Base-1 (b) Limit-1 Base-1 Registers when program 1 is running Registers](https://reader036.vdocuments.us/reader036/viewer/2022070806/5f049cc57e708231d40ed58e/html5/thumbnails/9.jpg)
Computer Hardware Review (1)
Monitor
Keyboard Floppy disk drive
Hard disk drive
Hard disk
controller
Floppy disk
controller
Keyboard controller
Video controllerMemoryCPU
Bus
• Components of a simple personal computer
9
![Page 10: Chapter 1 Introductionweb-ext.u-aizu.ac.jp/~hitoshi/COURSES/OS06/SLIDES/chap1.pdf · Limit-2 Limit-1 Base-2 Base-1 (b) Limit-1 Base-1 Registers when program 1 is running Registers](https://reader036.vdocuments.us/reader036/viewer/2022070806/5f049cc57e708231d40ed58e/html5/thumbnails/10.jpg)
Computer Hardware Review (2)
Fetch unit
Fetch unit
Fetch unit
Decode unit
Decode unit
Execute unit
Execute unit
Execute unit
Execute unit
Decode unit
Holding buffer
(a) (b)
(a) A three-stage pipeline
(b) A superscalar CPU
10
![Page 11: Chapter 1 Introductionweb-ext.u-aizu.ac.jp/~hitoshi/COURSES/OS06/SLIDES/chap1.pdf · Limit-2 Limit-1 Base-2 Base-1 (b) Limit-1 Base-1 Registers when program 1 is running Registers](https://reader036.vdocuments.us/reader036/viewer/2022070806/5f049cc57e708231d40ed58e/html5/thumbnails/11.jpg)
Computer Hardware Review (3)
Registers
Cache
Main memory
Magnetic tape
Magnetic disk
1 nsec
2 nsec
10 nsec
10 msec
100 sec
<1 KB
1 MB
64-512 MB
5-50 GB
20-100 GB
Typical capacityTypical access time
• Typical memory hierarchy
– numbers shown are rough approximations
11
![Page 12: Chapter 1 Introductionweb-ext.u-aizu.ac.jp/~hitoshi/COURSES/OS06/SLIDES/chap1.pdf · Limit-2 Limit-1 Base-2 Base-1 (b) Limit-1 Base-1 Registers when program 1 is running Registers](https://reader036.vdocuments.us/reader036/viewer/2022070806/5f049cc57e708231d40ed58e/html5/thumbnails/12.jpg)
Computer Hardware Review (4)
Surface 2Surface 1
Surface 0
Read/write head (1 per surface)
Direction of arm motion Surface 3
Surface 5
Surface 4
Surface 7
Surface 6
Structure of disk drive
12
![Page 13: Chapter 1 Introductionweb-ext.u-aizu.ac.jp/~hitoshi/COURSES/OS06/SLIDES/chap1.pdf · Limit-2 Limit-1 Base-2 Base-1 (b) Limit-1 Base-1 Registers when program 1 is running Registers](https://reader036.vdocuments.us/reader036/viewer/2022070806/5f049cc57e708231d40ed58e/html5/thumbnails/13.jpg)
Computer Hardware Review (5)
User program and data
User program and data
Operating System
Address
0xFFFFFFFF
Limit
Base
0(a)
User-2 data
User-1 data
User program
Operating System
Base-2
Limit-2
Limit-2
Limit-1
Base-2
Base-1
(b)
Limit-1
Base-1
Registers when program 1 is running
Registers when program 2 is running
One base-limit pair and two base-limit pairs
13
![Page 14: Chapter 1 Introductionweb-ext.u-aizu.ac.jp/~hitoshi/COURSES/OS06/SLIDES/chap1.pdf · Limit-2 Limit-1 Base-2 Base-1 (b) Limit-1 Base-1 Registers when program 1 is running Registers](https://reader036.vdocuments.us/reader036/viewer/2022070806/5f049cc57e708231d40ed58e/html5/thumbnails/14.jpg)
Computer Hardware Review (6)
CPUInterrupt controller
Disk controller
Disk drive
Current instruction
Next instruction
1. Interrupt3. Return
2. Dispatch to handler
Interrupt handler
(b)(a)
1
3
4 2
(a) Steps in starting an I/O device and getting interrupt
(b) How the CPU is interrupted
14
![Page 15: Chapter 1 Introductionweb-ext.u-aizu.ac.jp/~hitoshi/COURSES/OS06/SLIDES/chap1.pdf · Limit-2 Limit-1 Base-2 Base-1 (b) Limit-1 Base-1 Registers when program 1 is running Registers](https://reader036.vdocuments.us/reader036/viewer/2022070806/5f049cc57e708231d40ed58e/html5/thumbnails/15.jpg)
Computer Hardware Review (7)
ISA bridge
Modem
Mouse
PCI bridgeCPU
Main memory
SCSI USB
Local bus
Sound card Printer Available
ISA slot
ISA bus
IDE disk
Available PCI slot
Key- board
Mon- itor
Graphics adaptor
Level 2 cache
Cache bus Memory bus
PCI bus
Structure of a large Pentium system
15
![Page 16: Chapter 1 Introductionweb-ext.u-aizu.ac.jp/~hitoshi/COURSES/OS06/SLIDES/chap1.pdf · Limit-2 Limit-1 Base-2 Base-1 (b) Limit-1 Base-1 Registers when program 1 is running Registers](https://reader036.vdocuments.us/reader036/viewer/2022070806/5f049cc57e708231d40ed58e/html5/thumbnails/16.jpg)
Operating System Concepts (1)
A
B
D E F
C
• A process tree
– A created two child processes,B and C
– B created three child processes,D,E,and F
16
![Page 17: Chapter 1 Introductionweb-ext.u-aizu.ac.jp/~hitoshi/COURSES/OS06/SLIDES/chap1.pdf · Limit-2 Limit-1 Base-2 Base-1 (b) Limit-1 Base-1 Registers when program 1 is running Registers](https://reader036.vdocuments.us/reader036/viewer/2022070806/5f049cc57e708231d40ed58e/html5/thumbnails/17.jpg)
Operating System Concepts (2)
(a) A potential deadlock
(b) An actual deadlock
17
![Page 18: Chapter 1 Introductionweb-ext.u-aizu.ac.jp/~hitoshi/COURSES/OS06/SLIDES/chap1.pdf · Limit-2 Limit-1 Base-2 Base-1 (b) Limit-1 Base-1 Registers when program 1 is running Registers](https://reader036.vdocuments.us/reader036/viewer/2022070806/5f049cc57e708231d40ed58e/html5/thumbnails/18.jpg)
Operating System Concepts (3)
Root directory
Students Faculty
Leo Prof.Brown
Files
Courses
CS101 CS105
Papers Grants
SOSP COST-11
Committees
Prof.Green Prof.WhiteMattyRobbert
File system for a university department
18
![Page 19: Chapter 1 Introductionweb-ext.u-aizu.ac.jp/~hitoshi/COURSES/OS06/SLIDES/chap1.pdf · Limit-2 Limit-1 Base-2 Base-1 (b) Limit-1 Base-1 Registers when program 1 is running Registers](https://reader036.vdocuments.us/reader036/viewer/2022070806/5f049cc57e708231d40ed58e/html5/thumbnails/19.jpg)
Operating System Concepts (4)
Root Floppy
a b
c d c d
a bx y
x y
(a) (b)
• Before mounting
– files on floppy are inaccessible
• After mounting floppy on b
– files on floppy are part of file hierarchy
19
![Page 20: Chapter 1 Introductionweb-ext.u-aizu.ac.jp/~hitoshi/COURSES/OS06/SLIDES/chap1.pdf · Limit-2 Limit-1 Base-2 Base-1 (b) Limit-1 Base-1 Registers when program 1 is running Registers](https://reader036.vdocuments.us/reader036/viewer/2022070806/5f049cc57e708231d40ed58e/html5/thumbnails/20.jpg)
Operating System Concepts (5)
ProcessPipe
Process
A B
Two processes connected by a pipe
20
![Page 21: Chapter 1 Introductionweb-ext.u-aizu.ac.jp/~hitoshi/COURSES/OS06/SLIDES/chap1.pdf · Limit-2 Limit-1 Base-2 Base-1 (b) Limit-1 Base-1 Registers when program 1 is running Registers](https://reader036.vdocuments.us/reader036/viewer/2022070806/5f049cc57e708231d40ed58e/html5/thumbnails/21.jpg)
Steps in Making a System Call
Return to caller
410
6
0
9
7 8
321
11
DispatchSys call handler
Address 0xFFFFFFFF
User space
Kernel space (Operating system)
Library procedure read
User program calling read
Trap to the kernelPut code for read in register
Increment SPCall readPush fdPush &bufferPush nbytes
5
There are 11 steps in making the system call read (fd,buffer,nbytes)
21
![Page 22: Chapter 1 Introductionweb-ext.u-aizu.ac.jp/~hitoshi/COURSES/OS06/SLIDES/chap1.pdf · Limit-2 Limit-1 Base-2 Base-1 (b) Limit-1 Base-1 Registers when program 1 is running Registers](https://reader036.vdocuments.us/reader036/viewer/2022070806/5f049cc57e708231d40ed58e/html5/thumbnails/22.jpg)
Some System Calls (1)
22
![Page 23: Chapter 1 Introductionweb-ext.u-aizu.ac.jp/~hitoshi/COURSES/OS06/SLIDES/chap1.pdf · Limit-2 Limit-1 Base-2 Base-1 (b) Limit-1 Base-1 Registers when program 1 is running Registers](https://reader036.vdocuments.us/reader036/viewer/2022070806/5f049cc57e708231d40ed58e/html5/thumbnails/23.jpg)
Some System Calls For File Management (2)
23
![Page 24: Chapter 1 Introductionweb-ext.u-aizu.ac.jp/~hitoshi/COURSES/OS06/SLIDES/chap1.pdf · Limit-2 Limit-1 Base-2 Base-1 (b) Limit-1 Base-1 Registers when program 1 is running Registers](https://reader036.vdocuments.us/reader036/viewer/2022070806/5f049cc57e708231d40ed58e/html5/thumbnails/24.jpg)
System Calls(1)
• A stripped down shell:
#define TRUE 1
while (TRUE) { /* repeat forever */type_prompt( ); /* display prompt on the screen */read_command(command, parameters); /* read input from terminal */
if (fork( ) != 0) { /* fork off child process *//* Parent code. */waitpid(−1, &status, 0); /* wait for child to exit */
} else {/* Child code. */execve(command, parameters, 0); /* execute command */
}}
24
![Page 25: Chapter 1 Introductionweb-ext.u-aizu.ac.jp/~hitoshi/COURSES/OS06/SLIDES/chap1.pdf · Limit-2 Limit-1 Base-2 Base-1 (b) Limit-1 Base-1 Registers when program 1 is running Registers](https://reader036.vdocuments.us/reader036/viewer/2022070806/5f049cc57e708231d40ed58e/html5/thumbnails/25.jpg)
System Calls(2)
�� �Address (hex)FFFF
0000
Stack
Data
Text
Gap
• Processes have three segments:text, data, stack
25
![Page 26: Chapter 1 Introductionweb-ext.u-aizu.ac.jp/~hitoshi/COURSES/OS06/SLIDES/chap1.pdf · Limit-2 Limit-1 Base-2 Base-1 (b) Limit-1 Base-1 Registers when program 1 is running Registers](https://reader036.vdocuments.us/reader036/viewer/2022070806/5f049cc57e708231d40ed58e/html5/thumbnails/26.jpg)
System Calls(3)
/usr/ast /usr/jim
16 81 40
mail games test
(a)
31 70 59 38
bin memo f.c. prog1
/usr/ast /usr/jim
16 81 40 70
mail games test note
(b)
31 70 59 38
bin memo f.c. prog1
(a) Two directories before linking/usr/jim/memo to ast’s directory
(b) The same directories after linking
26
![Page 27: Chapter 1 Introductionweb-ext.u-aizu.ac.jp/~hitoshi/COURSES/OS06/SLIDES/chap1.pdf · Limit-2 Limit-1 Base-2 Base-1 (b) Limit-1 Base-1 Registers when program 1 is running Registers](https://reader036.vdocuments.us/reader036/viewer/2022070806/5f049cc57e708231d40ed58e/html5/thumbnails/27.jpg)
System Calls(4)
(a) (b)
bin dev lib mnt usr bin dev usr lib
(a) File system before the mount
(b) File system after the mount
27
![Page 28: Chapter 1 Introductionweb-ext.u-aizu.ac.jp/~hitoshi/COURSES/OS06/SLIDES/chap1.pdf · Limit-2 Limit-1 Base-2 Base-1 (b) Limit-1 Base-1 Registers when program 1 is running Registers](https://reader036.vdocuments.us/reader036/viewer/2022070806/5f049cc57e708231d40ed58e/html5/thumbnails/28.jpg)
System Calls(5)
� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������UNIX Win32 Description� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������
fork CreateProcess Create a new process� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������waitpid WaitForSingleObject Can wait for a process to exit� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������execve (none) CreateProcess = fork + execve� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������exit ExitProcess Terminate execution� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������open CreateFile Create a file or open an existing file� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������close CloseHandle Close a file� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������read ReadFile Read data from a file� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������write WriteFile Write data to a file� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������lseek SetFilePointer Move the file pointer� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������stat GetFileAttributesEx Get various file attributes� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������mkdir CreateDirectory Create a new directory� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������rmdir RemoveDirectory Remove an empty directory� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������link (none) Win32 does not support links� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������unlink DeleteFile Destroy an existing file� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������mount (none) Win32 does not support mount� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������umount (none) Win32 does not support mount� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������chdir SetCurrentDirectory Change the current working directory� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������chmod (none) Win32 does not support security (although NT does)� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������kill (none) Win32 does not support signals� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������time GetLocalTime Get the current time� �����������������������������������������������������������������������������������������������������������������������������������������������������������������������
����������������������������
����������������������������
����������������������������
����������������������������
Some Win32 API calls
28
![Page 29: Chapter 1 Introductionweb-ext.u-aizu.ac.jp/~hitoshi/COURSES/OS06/SLIDES/chap1.pdf · Limit-2 Limit-1 Base-2 Base-1 (b) Limit-1 Base-1 Registers when program 1 is running Registers](https://reader036.vdocuments.us/reader036/viewer/2022070806/5f049cc57e708231d40ed58e/html5/thumbnails/29.jpg)
Operating System Structure(1)
Main procedure
Service procedures
Utility procedures
Simple structuring model for a monolithic system
29
![Page 30: Chapter 1 Introductionweb-ext.u-aizu.ac.jp/~hitoshi/COURSES/OS06/SLIDES/chap1.pdf · Limit-2 Limit-1 Base-2 Base-1 (b) Limit-1 Base-1 Registers when program 1 is running Registers](https://reader036.vdocuments.us/reader036/viewer/2022070806/5f049cc57e708231d40ed58e/html5/thumbnails/30.jpg)
Operating System Structure(2)
� �������������������������������������������������������������������������������������������������Layer Function� �������������������������������������������������������������������������������������������������
5 The operator� �������������������������������������������������������������������������������������������������4 User programs� �������������������������������������������������������������������������������������������������3 Input/output management� �������������������������������������������������������������������������������������������������2 Operator-process communication� �������������������������������������������������������������������������������������������������1 Memory and drum management� �������������������������������������������������������������������������������������������������0 Processor allocation and multiprogramming� �������������������������������������������������������������������������������������������������
����������
����������
����������
Structure of the THE operating system
30
![Page 31: Chapter 1 Introductionweb-ext.u-aizu.ac.jp/~hitoshi/COURSES/OS06/SLIDES/chap1.pdf · Limit-2 Limit-1 Base-2 Base-1 (b) Limit-1 Base-1 Registers when program 1 is running Registers](https://reader036.vdocuments.us/reader036/viewer/2022070806/5f049cc57e708231d40ed58e/html5/thumbnails/31.jpg)
Operating System Structure(3)
I/O instructions here
Trap here
Trap here
System calls here
Virtual 370s
CMS CMS CMS
VM/370
370 Bare hardware
Structure of VM/370 with CMS(Conversational Monitor System)
• For time sharing system
• Virtual 370s
– Separation of multiprograming
– Exact copies of 370 HW
• VM/370
– Extended machine
31
![Page 32: Chapter 1 Introductionweb-ext.u-aizu.ac.jp/~hitoshi/COURSES/OS06/SLIDES/chap1.pdf · Limit-2 Limit-1 Base-2 Base-1 (b) Limit-1 Base-1 Registers when program 1 is running Registers](https://reader036.vdocuments.us/reader036/viewer/2022070806/5f049cc57e708231d40ed58e/html5/thumbnails/32.jpg)
Operating System Structure(4)
Client process
Client process
Process server
Terminal server
File server
Memory server
Microkernel
User mode
Kernel mode
Client obtains service by sending messages to server processes
The client-server model
• Minimum kernel part
– Verification work smaller
– Destribution (Next slide)
32
![Page 33: Chapter 1 Introductionweb-ext.u-aizu.ac.jp/~hitoshi/COURSES/OS06/SLIDES/chap1.pdf · Limit-2 Limit-1 Base-2 Base-1 (b) Limit-1 Base-1 Registers when program 1 is running Registers](https://reader036.vdocuments.us/reader036/viewer/2022070806/5f049cc57e708231d40ed58e/html5/thumbnails/33.jpg)
Operating System Structure(5)
Machine 1 Machine 2 Machine 3 Machine 4
Client
Kernel
File server
Kernel
Process server
Kernel
Terminal server
Kernel
Message from client to server
Network
The client-server model in a distributed system
33
![Page 34: Chapter 1 Introductionweb-ext.u-aizu.ac.jp/~hitoshi/COURSES/OS06/SLIDES/chap1.pdf · Limit-2 Limit-1 Base-2 Base-1 (b) Limit-1 Base-1 Registers when program 1 is running Registers](https://reader036.vdocuments.us/reader036/viewer/2022070806/5f049cc57e708231d40ed58e/html5/thumbnails/34.jpg)
Metric Units
Exp. Explicit Prefix Exp. Explicit Prefix
10−3 0.001 milli 103 1,000 Kilo
10−6 0.000001 micro 106 1,000,000 Mega
10−9 0.000000001 nano 109 1,000,000,000 Giga
10−12 0.000000000001 pico 1012 1,000,000,000,000 Tera
10−15 0.000000000000001 femto 1015 1,000,000,000,000,000 Peta
10−18 0.000000000000000001 atto 1018 1,000,000,000,000,000,000 Exa
10−21 (omitted) zepto 1021 (omitted) Zetta
10−24 (omitted) yocto 1024 (omitted) Yotta
The metric prefixes
34