Programme Talk - Higher Education Academy

reelingripehalfΛογισμικό & κατασκευή λογ/κού

14 Δεκ 2013 (πριν από 3 χρόνια και 7 μήνες)

84 εμφανίσεις

©
2010 i.mitchell@mdx.ac.uk


Promoting Understanding of Logical Structures of
File Systems

Dr Ian Mitchell

© 2010 i.mitchell@mdx.ac.uk


Motivation and Objectives


Current Research/Tools


Visualisation decomposed


Is Visualisation helpful


Experiment


Contribution


Challenges


Problem


Linked to motivation


How to visualise the logical
structure of a file system





Motivation


“Learning is motivated by interest
and understanding by
visualisation” A.B. Garrett


“picture worth a 1000 words”


Difficulty in understanding Logical
structure of initial file system


Use existing ideas to teach File
Systems?


Or do we invent new ones?



© 2010 i.mitchell@mdx.ac.uk


Visualisation Algorithms

Source: Shaffer
et al
“Algorithm Visualisation: A report on the State of the
Field“,SIGCSE'07.

Linear
Structures,
46

Search
Structures, 60

Other Data
Structures, 14

Search Algorithms,
12

Sorting, 134

Graph, 38

Compression, 13

Memory
Management, 4

Other Algorithms,
28

© 2010 i.mitchell@mdx.ac.uk


Visualisation Algorithms

Source: Shaffer
et al
“Algorithm Visualisation: A report on the State of the
Field“,SIGCSE'07.

Linear
Structures

13%

Search
Structures

17%

Other Data
Structures

4%

Search Algorithms

4%

Sorting

38%

Graph

11%

Compression

4%

Memory
Management

1%

Other Algorithms

8%

© 2010 i.mitchell@mdx.ac.uk


Visualisation Algorithms


Linear Structures

Source: Shaffer
et al
“Algorithm Visualisation: A report on the State of the
Field“,SIGCSE'07.

Search
Structures,
60

Other Data
Structures, 14

Search, 12

Sorting, 134

Graph, 38

Compression, 13

Memory
Management, 4

Other
Algorithms, 28

Lists, 13

Stacks/Queues, 32

Other, 1

Linear
Structures,
46

© 2010 i.mitchell@mdx.ac.uk


Visualisation Algorithms


Search Structures

Source: Shaffer
et al
“Algorithm Visualisation: A report on the State of the
Field“,SIGCSE'07.

Linear Structures,
46

Other Data
Structures, 14

Search, 12

Sorting, 134

Graph, 38

Compression, 13

Memory
Management, 4

Other
Algorithms, 28

Trees, 47

Skiplist, 3

Other, 10

Search
Structures,
60

© 2010 i.mitchell@mdx.ac.uk


Visualisation Algorithms


Other Data Structures

Source: Shaffer
et al
“Algorithm Visualisation: A report on the State of the
Field“,SIGCSE'07.

Linear
Structures,
46

Search
Structures, 60

Search, 12

Sorting, 134

Graph, 38

Compression, 13

Memory
Management, 4

Other Algorithms,
28

Heap/Queue, 8

Others, 6

Other

Data
Structures,

12

© 2010 i.mitchell@mdx.ac.uk


Visualisation Algorithms

Sorting

Source: Shaffer
et al
“Algorithm Visualisation: A report on the State of the
Field“,SIGCSE'07.

Linear
Structures

Search
Structures

Other Data
Structures

Search

Graph

Compression

Other Algorithms

Overview

Insertion

Selection

Quicksort

Merge

Heap

Radix

other

Other

© 2010 i.mitchell@mdx.ac.uk


Visualisation Algorithms

Search

Source: Shaffer
et al
“Algorithm Visualisation: A report on the State of the
Field“,SIGCSE'07.

Linear
Structures

Search
Structures

Other Data
Structures

Sorting

Graph

Compression

Memory
Management

Other Algorithms

Linear

Hashing

Search

© 2010 i.mitchell@mdx.ac.uk


Visualisation Algorithms

Graphs

Source: Shaffer
et al
“Algorithm Visualisation: A report on the State of the
Field“,SIGCSE'07.

Linear Structures

Search
Structures

Other Data
Structures

Search

Sorting

Compression

Memory
Management

Other Algorithms

Traversals

Shortest Paths

Spanning Trees

Network Flow

Other

Graph

Sales

© 2010 i.mitchell@mdx.ac.uk


Visualisation Algorithms

Compression

Source: Shaffer
et al
“Algorithm Visualisation: A report on the State of the
Field“,SIGCSE'07.

Linear
Structures

Search
Structures

Other Data
Structures

Search

Sorting

Graph

Memory
Management

Other
Algorithms

Huffman

Other

Compression

© 2010 i.mitchell@mdx.ac.uk


Visualisation Algorithms

Memory Management

Source: Shaffer
et al
“Algorithm Visualisation: A report on the State of the
Field“,SIGCSE'07.

Linear
Structures,
46

Search
Structures, 60

Other Data
Structures, 14

Search Algorithms,
12

Sorting, 134

Graph, 38

Compression, 13

Memory
Management, 4

Other Algorithms,
28

© 2010 i.mitchell@mdx.ac.uk


Visualisation Algorithms

Other Algorithms

Source: Shaffer
et al
“Algorithm Visualisation: A report on the State of the
Field“,SIGCSE'07.

Linear
Structures

Search
Structures

Other Data
Structures

Search

Sorting

Graph

Compression

Memory
Management

Computational
Geometry

NP Problems

Algorithmic
Techniques

String Matching

Math Algorithms

Other

© 2010 i.mitchell@mdx.ac.uk


File Systems


Dead Analysis


Important


Confirming location of file


Content of the file


The provenance of the file


Verification of the file


Discovery of Evidence


Discovery of Hidden Data


Recovery



Problem


Scalability


Complex Algorithms


Hexidecimal
/Little
Endianness


Abstraction tools


Programme Design


Digital Investigation


File Systems Analysis


24 week modules in
parallel?


© 2010 i.mitchell@mdx.ac.uk


Experiment


find Cluster2 (C2)



Cohort : 21 u/g


FAT16?


FAT32 is idiosyncratic


32 is a misnomer


28bit cluster chain
-

see
MS White paper on FAT


Ubiquitous


2GB


Cluster Analysis is 16 bit


FAT8 is obsolete


FAT12 is possible but
floppy drives are slow


FAT 16 has 16 bit cluster
chain analysis


C2 = R + F + F + R


C2


Size


Capacity


Four Stages


A
cquisition


L
ocating and Identifying
Parameters


E
xtracting values


C
alculating Offset


©
2010 i.mitchell@mdx.ac.uk


Conceptual
-

FAT16 and 2Gbyte Memory
Stick

Content

Root

FAT2

FAT1

Boot

©
2010 i.mitchell@mdx.ac.uk


Factual
-

0
-
35 Bytes of FAT12/16/32 Boot Sector

Byte Dec / Hex

Description

Essential

0
-
2

0
-
2

Assembly instruction to jump to boot code

No

3
-
10

3
-
A

OEM Name in ASCII

No

11
-
12

B
-
C

Bytes per sector

Yes

13

D

Sectors per cluster to the power of 2 and less than 32Kbyte

Yes

14
-
15

E
-
F

Size in sectors of reserved area

Yes

16

10

Number of FATs; 1 is compulsory; 2 is optional; default is 2

Yes

17
-
18

11
-
12

Max. number of files in RD for FAT12/16/32

Yes

19
-
20

13
-
14

Number of sectors in file system

Yes

21

15

Media type: fixed or removable

No

22
-
23

16
-
17

Size in sectors for each FAT; 0 for FAT32

Yes

24
-
25

18
-
19

Sectors per track

No

26
-
27

1A
-
1B

Number of Heads

No

28
-
31

1C
-
1F

Number of sectors before start of partition

No

32
-
35

20
-
23

Number of sectors in file system

Yes

©
2010 i.mitchell@mdx.ac.uk


Example


Boot Sector

EB 3C 90 4D 53 44 4F 53


35 2E 30 00 02 40 02 00

02 00 02 00 00 F8 EF 00


3F 00 FF 00 80 1F 00 00

Bytes per
Sector:
0x200

Size of
Reserved
Area: 0x02

Number of
FATs:
0x02

Size of RD

Size of FAT

©
2010 i.mitchell@mdx.ac.uk


Example


Boot Sector

EB 3C 90 4D 53 44 4F 53


35 2E 30 00 02 40 02 00

02 00 02 00 00 F8 EF 00


3F 00 FF 00 80 1F 00 00

Bytes per
Sector:
0x200

Size of
Reserved
Area: 0x02

Number of
FATs:
0x02

Size of RD

00x0200

Size of FAT

00x00EF

Structure

Hex

Decimal

Boot

00

00

FAT1

02

02

FAT2

02+EF = F1

2+239=241

RD

F1+EF=1E0

241+239=480

Cluster

2

1E0+20=200

480+32=512

© 2010 i.mitchell@mdx.ac.uk


Location Hex(Dec)

Description

Values

x0B (11)

Bytes Per Sector

512

x0E(14)

Reserved Sectors

2

X10(16)

Number of

FATs

2

X11(17)

Files in Root Entry

32 (*512)

X16(22)

Sectors Per FAT

239

Sector

Cluster

0

2

241

480

2

512

61,051

3,907,711

Content

Root

FAT2

FAT1

Boot

2

239

239

32

© 2010 i.mitchell@mdx.ac.uk




© 2010 i.mitchell@mdx.ac.uk


Confirmation
-

TSK

FILE SYSTEM INFORMATION

--------------------------------------------

File System Type: FAT16


OEM Name: MSDOS5.0

Volume ID: 0x3ed4054c

Volume Label (Boot Sector): NO NAME

Volume Label (Root Directory): 11 FAT

File System Type Label: FAT16

Sectors before file system: 8064

File System Layout (in sectors)

Total Range: 0
-

3907711

* Reserved: 0
-

1

** Boot Sector: 0

* FAT 0: 2
-

240

* FAT 1: 241
-

479

* Data Area: 480
-

3907711

** Root Directory: 480
-

511

** Cluster Area: 512
-

3907711


METADATA INFORMATION

--------------------------------------------

Range: 2
-

62515718

Root Directory: 2


CONTENT INFORMATION

--------------------------------------------

Sector Size: 512

Cluster Size: 32768

Total Cluster Range: 2
-

61051


FAT CONTENTS (in sectors)

--------------------------------------------

512
-
575 (64)
-
> EOF


© 2010 i.mitchell@mdx.ac.uk


Confirmation


FTK Imager

© 2010 i.mitchell@mdx.ac.uk


Is PowerPoint Pointless?

Nap
et al


Graphical
Representation


Adaptation


Multiple Views


Performance
Information


Execution
History


Flexible Control


Learner Built



Data Sets


Support
Dynamic
Questions


Support
Dynamic
Feedback


Complement
Visualisations
with
Explanations.

Narayanan &
Hegarty


Decomposition


Static Mental Model


Referential Connections


Causal Chain of Events


Dynamic Mental Model


Nap
et al

“Effective visualisation
requires learner
engagement”



© 2010 i.mitchell@mdx.ac.uk


Results


Reflector


We
blog


Non
-
assessed


Open agenda, although I
start with a question


Post
-
it notes


Completion of sheets


Coursework





6 weeks


No generic tool;
combined tools;


ALVIS was confusing


Some Students like Java
Code; others like the
formula; some invented
their own


Reassurance


© 2010 i.mitchell@mdx.ac.uk


Contribution & Challenges


Developing Subject with
under
-
developed tools


Reliance on commercial
or traditional CS
software


Dead Analysis & New
File Systems to keep up
with Hardware (disk size
development is double
Moore’s Law).



New Subject Domain


Commercial Software
Requirements


Scalability


Open Source Software
Requirements


Abstraction


Hexiphobic


Complexity

© 2010 i.mitchell@mdx.ac.uk


Bibliography

Alvis. http://eecs.wsu.edu/~ veupl/soft/alvis/index.htm.

Exploring the Role of Visualization and Engagement in Computer Science

Education, 2003.


S. Edwards C.
Shaer
, M. Cooper. Algorithm visualisation: A report
onthe

state of the
eld
. In
SIGCSE'07, March 2007.

B. Carrier. The sleuth kit.
http://
www
.thesleuthkit.org
.

A. B. Garrett. Visualization: A step to understanding. J. Chem. Educ.,25 (10), 1948.

N. H. Narayanan and M.
Hegarty
. On designing comprehensible interactive hypermedia
manuals. Int. Journal of Human
-
Computer Studies.

N.
Presmeg
. Research on visualization in learning and teaching mathematics.1988.

D.
Schrimpsher

S. Hansen, N. Narayanan and M.
Hegarty
. Empirical studies of animation
-
embedded hypermedia algorithm visualisations. Technical report, Auburn University, 1998.

Breakpoint Software.
Hexworkshop
.
http://www.hexworkshop.com
.

FAT: General Overview of On
-
Disk Format. Microsoft Corporation 2000.



© 2010 i.mitchell@mdx.ac.uk


Location
Hex(Dec)

Description

Values

x0B (11)

Bytes Per Sector

x0E(14)

Reserved Sectors

X10(16)

Number of

FATs

X11(17)

Files in Root

X16(22)

Sectors Per FAT

Content

Root

FAT2

FAT1

Boot

Description

Calculation

Values

Boot

offset?

FAT1

Boot

+reserved
Sectors

FAT2

FAT1+Sectors

Per FAT

Root

FAT2 +

Sectors
Per FAT

Cluster

2

Root + Size of
Root