national center for supercomputing applications larry brumbaugh william yurcik...
TRANSCRIPT
National Center for Supercomputing Applications
Larry Brumbaugh William Yurcik
{ljbrumb,byurcik}@ncsa.uiuc.edu
National Center for Supercomputing Applications (NCSA)
University of Illinois at Urbana-Champaign
A Little Man Storage (LMS) Model
National Center for Supercomputing Applications
Little Man Computer (LMC) Paradigm
• Developed by Madnick and Donovan
• During the 1960s, at MIT
• Taught to all MIT undergraduate CS majors
• Simplistic overview of how a computer actually works
• Adheres to von Neumann principles
• Authors have built multiple LMC simulators
• See: www.itk.ilstu.edu/faculty/javila/lmc/default.htm
• Newer version to be introduced at SIGCSE 2006
• See Irv Englander text for LMC in the classroom
National Center for Supercomputing Applications
Little Man Computer and the Walled Mailroom
100 mailboxes1 inbox1 outbox1 calculatorcounterLittle Man
10 assemblerinstructions
National Center for Supercomputing Applications
Basic Hardware Components of LMS
Storage DeviceHardware Properties
ID Numbering Schemes for the Component
3 cylinders 0, 1, 2 (numbers are independent of the platter surface)
4 tracks per cylinder 0, 1, 2, 3 (0/1 are the 1st platter and 2/3 are 2nd platter)
8 areas per track 0, 1, 2, 3, 4, 5, 6, 7 (same amount of data can be stored in each area)
Platters rotate
Access arm moves over the platter surface
Data is copied to/from areas on the disk
National Center for Supercomputing Applications
Areas on Both Sides of Platter 0
Labeling scheme: cylinder|track|area
From 000 to 237
National Center for Supercomputing Applications
Physical Components that comprise an LMS Storage Device
National Center for Supercomputing Applications
Comparing LMC and LMS Characteristics
Environment/Physical Act Compared Little Man Computer (LMC) Little Man Storage (LMS)
historic relevance of paradigm from 1960’s to present from 1970’s to present
type of device described computer disk storage device
actual hardware location of the Little Man itself
CPU control unit storage controller
locations where data is stored 100 mailboxes (00-99);each holds 3 digit number;no ‘special’ mailboxes
96 disk areas (000-237)each holds 512 bytes;two ‘special’ areas
how I/O operations are performed read/write slips of paper read/write disk areas
a programmable device?
fundamental design principles
yes!
von Neumann model
not really?
standard disk + MS FAT
National Center for Supercomputing Applications
LIST Structure for the Disk
File Name Size (Bytes)
Start Location(Area)
Creation Date Modify Date
ALPHA.doc 10 006 06/03/2005 06/04/2005
X.Y.Z 5000 128 09/18/1997 06/04/2005
<blank line here>
NextFile1234.txt 0 225 12/25/2002 01/01/2004
**************20 byte names
IIImplemented as a White BoardStored in area 000
National Center for Supercomputing Applications
Contents of Area 001 Showing Storage Allocation after Two Files are Written
Area Number Next Area Location in File
000 007(first free area) *
001 00N(last free area) *
002 003(file continuation)
003 005(file continuation)
004 666(end of file)
005 006(file continuation)
006 666(end of file)
007 008
. . . . . .
N 666
Called Area Utilization List (AUL)
National Center for Supercomputing Applications
Basic I/O Commands Supported by LMS
Command
Op-Code
Processing Performed by Command
Create File 00 Write an entry in the LIST, including name, create date, etc.Initialize one Free-Area-List area to ***End-of-File***.
Delete File 01 Erase the file entry line from the LIST.Return all of the files AUL entries to the Free-Area-List.
Read File 02 Begin in the LIST and then go thru the corresponding AUL entries.An alternative approach starts in the AUL table.
Write File 03 Add data starting with the first area on the free list.Write ***End-of-File*** after the last record is written.
Append File 04 Follow the AUL entries for the file to the one containing 666.Add new records in a new area and replace 666 with new area #.
National Center for Supercomputing Applications
Disk Status Following Several I/O Operations
Area Next Area
Area Next Area
Area Next Area
Area Next Area
000 013 004 005 010 011 014 015
001 237 005 666 011 012 015 016
002 006 006 666 012 666 016 017
003 004 007 666 013 014 017 020
0 1 2 3 4 5 6 7
00(ROOT)LIST
AULTable ALPHA BETA BETA BETA ALPHA GAMMA
01 DELTA DELTA DELTAFREE014
FREE015
FREE016
FREE017
FREE020
02FREE021
FREE022
FREE023
FREE024
FREE025
FREE026
FREE027
FREE028
National Center for Supercomputing Applications
Disk Status After Additional I/O Operations
Area Next Area
Area Next Area
Area Next Area
Area Next Area
000 021 004 005 010 011 014 666
001 237 005 666 011 012 015 666
002 006 006 021 012 666 016 017
003 004 007 666 013 015 017 020
0 1 2 3 4 5 6 7
00(ROOT)LIST
AULTable
FREEBETA BETA BETA
FREEGAMMA
01 DELTA DELTA DELTA SIGMA RHO SIGMAFREE FREE
02FREE FREE FREE FREE FREE FREE FREE FREE
National Center for Supercomputing Applications
References[1] William Yurcik and Hugh Osborne, “A Crowd of Little Man Computers: Visual
Computer Simulator Teaching Tools, “ Winter Simulation Conference (WSC), Cincinnati, OH. USA, December 2001.
[2] William Yurcik and Larry Brumbaugh, “Using LMC Simulator Assembly Language to Illustrate Major Programming Concepts, ” The Proceedings of Information Systems Education Conference (ISECON), Cincinnati, OH. USA, November 2001.
[3] William Yurcik and Larry Brumbaugh, “A Web-Based Little Man Computer Simulator, ” 32nd Technical Symposium of Computer Science Education (SIGCSE), pp. 204-208, Feb 2001.
[4] William Yurcik, Joaquin Vila and Larry Brumbaugh, "An Interactive Web-Based Simulation of a General Computer Architecture, " Proceedings of the IEEE International Conference on Engineering and Computer Education (ICECE 2000), Sao Paulo, Brazil, August 2000.
[5] http://www.snia.org/tech_activities/shared_storage_model/SNIA-SSM-text-2003-04-13.pdf SNIA Shared Storage Model White Paper
National Center for Supercomputing Applications
Questions?