4. file systems (week 6)
File Systems
File system: a data structure on a disk that
holds files
File systems in different OSs have different
internal structures
Types
– Continuous
– Linked
– Indexed
How do you file your bills?
– LIFO or FIFO or GCM
– Organize on a disk? Reorganize?
5. file systems (week 6)
File Systems
directory
0 1 2 3 4 Continuous
5 6 7 8 9 File Start Length Model
count 0 2 – ++ Good
10 11 12 13 14
tr 14 3 performance
15 16 17 18 19 mail 19 6 (minimal seek time)
list 28 2 (IBM VM/CMS)
20 21 22 23 24
f 6 2 – -- fragmented
25 26 27 28 29 – -- space allocation
6. file systems (week 6)
File Systems
Linked Model
– ++ minimal
fragments
– -- broken links
– -- seek time
7. file systems (week 6)
File Systems
Indexed Model
– ++ random access
– ++ minimal space
loss
– -- need index table
9. file systems (week 6)
File Systems
The OS uses a file system to keep track
of the names and locations of files that
reside on a storage medium
– Mac OS – Hierarchical File System (HFS)
– Mac OS X – HFS+
– Linux – Ext2fs
– Windows NT, 2000, XP – NTFS
• Master File Table
– Windows 95, 98, ME - FAT32
– Windows 3.1 - FAT16
10. file systems (week 6)
File Systems
FAT (File Allocation Table) file system was
introduced with MSDOS in the late 70s
Evolved in response to:
– changes in names of files and structure
– Increasing size of hard drives
3 FAT file system types
– FAT12
– FAT16
– FAT32 CHECK THIS OUT!
– More info here
11. NTFS vs FAT
file systems (week 6)
File Systems
Criteria NTFS5 NTFS exFAT/FAT64 FAT32 FAT16 FAT12
DOS v7 and higher
Windows NT Windows 98
Windows 2000
Windows 2000 Windows ME
Windows XP Windows CE 6.0
Windows XP Windows 2000 DOS DOS
Windows 2003 Windows Vista SP1
Operating System Windows 2003 Windows XP All versions of All versions of
Server Windows 7
Server Windows 2003 Microsoft Windows Microsoft Windows
Windows Vista WinXP+KB955704
Windows Vista Server
Windows 7
Windows 7 Windows Vista
Windows 7
Limitations
32GB for all OS. 2GB for all OS.
Max Volume Size 2TB 2TB 64ZB 16MB
2TB for some OS 4GB for some OS
Max Files on Volume Nearly Unlimited Nearly Unlimited Nearly Unlimited 4194304 65536
Limit Only by Limit Only by 2GB (Limit Only 16MB (Limit Only
Max File Size 16ZB 4GB minus 2 Bytes
Volume Size Volume Size by Volume Size) by Volume Size)
Max Clusters Number Nearly Unlimited Nearly Unlimited 4294967295 4177918 65520 4080
Max File Name Standard - 8.3
Up to 255 Up to 255 Up to 255 Up to 255 Up to 254
Length Extended - up to 255
Overall Performance
Yes
Built-In Security Yes Yes No No No
minimal ACL only
Yes
Recoverability Yes Yes No No No
if TFAT activated
12. file systems (week 6)
File Systems
directory entry
name start block
test 217
0 FAT (File Allocation Table)
FAT has an entry for each
217 618
disk block.
FAT entries rather than
339 EOF blocks themselves are
217
linked.
339 Example:
618 339
618 – MS-DOS and
OS/2
#blocks -1
FAT
13. file systems (week 6)
File Systems
Disk sectors are grouped into clusters
FAT (File Allocation Table) - an operating
system file that maintains a list of files and
their physical location on the disk
– Like a table of contents (what is the address of the files?)
– A damaged FAT results in losing data
– Deleting a file means that the OS simply changes the
status of the file’s clusters to “empty” and removes the
filename from the index file
– Data is still there
14. file systems (week 6)
File Systems
MFT (Master File Table):An array of records,
each holding the attributes for a different file
File reference MFT
63 47 0
Sequence File Number File record: name, security, and data
For consistency MFT entry - 1
check
Run(extent) Run(extent)
Cluster numbers Cluster numbers
Disk 86 87 88 89 505 506 507 508
15. file systems (week 6)
File Systems
Fragmentation
– As computer files are added/deleted, parts of
files tend to become scattered all over the
disk
– “Holes” are left in the file system that are too
small to fill (non-contiguous clusters)
– New files are scattered across the drive
– Slows the performance of read/write/access
– Defrag must be run to rearrange files as
contiguous blocks
17. file systems (week 6)
File Systems
Types Fragmentation
– Internal – allocate storage without using it
– External – free space divided into small
pieces over time
– Data – data broken in memory into many
small pieces due to external fragmentation
18. file systems (week 6)
File Systems
WinFS (Future Storage) is the code name of a
Windows storage subsystem on Vista
– WinFS is a relational database using NTFS, and
represents itself to the operating system as a file
storage subsystem.
– WinFS intended to link the worlds of traditional
relational databases, objects, XML, and file systems
with unstructured documents by using metadata.
– Instead of representing a file solely by directory path
and filename, WinFS represents individual domain
objects - e.g., images, e-mails, address book entries,
and any kind of “regular” file - with indexed and
searchable context and keyword information.
19. file systems (week 6)
File Systems
The OLD (static):
– FAT or NTFS has its contents organized in a hierarchal directory structure,
and is relatively slow in searching the content by particular attributes. If
you organize your pictures in folders “by Dates,” there would be no way to
access them “by Persons”, “by Events,” etc. You are forced to use third
party custom software, like Adobe PhotoAlbum (c), to perform this task.
The NEW (dynamic):
– WinFS overcomes the traditional hierarchy and "flattens" the storage of
individual files (i.e., there is no "hierarchy" based on directory and file
names), and it enables users to search for items by attributes (e.g., date
the photograph was taken, who or what is in the picture, what camera was
used to take the picture, etc.).
– WinFS also extends this idea beyond the kinds of information that have
been traditionally stored as files on a file system. WinFS can understand
any arbitrary defined set of data, such as a "Photo," or an "E-mail," or a
"Calendar".
20. file systems (week 6)
File Systems
Search Benefits
– Data is easily found
– Information is organized in the way people think about it
– There is an integrated view of information
– Use of metadata tags and relations
– Discovery of data is easy
WinFS is different:
– WinFS stores items
– Items have properties
• Properties can be integers, strings, XML, etc.
• An item’s properties depend on its type
• Each item type is defined by a schema
• An item’s schema can be extended
– Items are associated via relationships
– WinFS stores an item’s properties
• Including its file stream, if there is one
26. file systems (week 6)
File Systems
June 26, 2006 (IDG News Service) -- Microsoft Corp. has found a new
home for WinFS, a file system that the company originally planned
to include in Windows Vista.
The company now will include WinFS in the next version of its SQL
Server database, code-named Katmai, according to an entry on the
WinFS team blog by Quentin Clark, director of program management at
Microsoft. WinFS will handle the storing of unstructured data and auto-
administration features of SQL Server.
Microsoft made considerable noise around WinFS when it was
announced at its Professional Developers Conference in 2003, but then
later scrapped plans to include WinFS in Vista.
However, pieces of WinFS may still end up in a future version of
Windows, according to Clark. He said Microsoft will continue to work on
other aspects of WinFS that were expected to be a part of Windows Vista
and include them in products as the company sees fit.
PARTS released in 2010 SQL Server (“Denali”)
27. file systems (week 6)
Future File Systems
Mind mapping
IBM Chip (Cognitive chip) - Called cognitive computers,
systems built with these chips won’t be programmed the same
way traditional computers are today. Rather, cognitive
computers are expected to learn through experiences, find
correlations, create hypotheses, and remember – and learn
from – the outcomes, mimicking the brains structural and
synaptic plasticity.
28. file systems (week 6)
HTML: Meta Tags
Primary use is to provide direction and information for
search engine robots, as well as general information about
the Web page
Meta tags are only viewable through source code
Meta tags are added to the (hidden) HEAD section
The Meta element is used to describe properties of the
document – such as Author and Keywords
29. file systems (week 6)
HTML: Meta Tags
Examples
– <meta name="author" content=“Joe Smith”>
– <meta name="copyright" content="(c) 2006 FSU Web
page Info">
– <meta name="description" content=“The information
that goes into my web page is in this document">
– <meta name="keywords" content=“florida state
university, florida, tallahassee, college of information,
information technology, IT, technology foundation”>
30. file systems (week 6)
HTML: Meta Tags
When you type the phrase “College of Information” into a
search engine, that phrase is a keyword, and the search
engine examines its database for pages that have that
keyword
If you have included “College of Information” in your
keyword META tag, your page will be one of the pages
returned to the user
Most search engines will index all the text on your Web site,
not just the keywords, but you can use the META tag to
specify additional keywords, acronyms or synonyms that
describe the content of your site
Keywords increase the chance of “hits” on your page
Not all search engines use META keywords, but it does not
hurt to include them
31. file systems (week 6)
HTML: Meta Tags
Some Web Page Generators, such
as FrontPage, automatically add
some of the other tags (e.g. Content-
type).
Why do we care?
– Search Engine Optimization
– Indexing/Sorting
– Sources
32. file systems (week 6)
HTML: Meta Tags
META tags with an HTTP-EQUIV attribute control the actions of
browsers, and may be used to refine the information provided by
the actual headers. Some browsers may ignore them.
<META HTTP-EQUIV ="name" CONTENT="content">
Examples:
– If you include sections of your site in another language, you
might want to identify this additional language in the Meta
Tags.
< META HTTP-EQUIV =“Content-Language" CONTENT=“fr">
– The following tag causes the browser to reload the document
every two seconds.
< META HTTP-EQUIV ="REFRESH" CONTENT=“2”>
– This tag tells the browser when the page expires.
< META HTTP-EQUIV ="Expires" CONTENT =“Fri, 30 Aug 2006 11:25:27 GMT">