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?
file systems (week 6) File Systems directory0 1 2 3 4 Continuous5 6 7 8 9 File Start Length Model count 0 2 – ++ Good10 11 12 13 14 tr 14 3 performance15 16 17 18 19 mail 19 6 (minimal seek time) list 28 2 (IBM VM/CMS)20 21 22 23 24 f 6 2 – -- fragmented25 26 27 28 29 – -- space allocation
file systems (week 6)File Systems Linked Model – ++ minimal fragments – -- broken links – -- seek time
file systems (week 6)File Systems Indexed Model – ++ random access – ++ minimal space loss – -- need index table
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
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
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
file systems (week 6) File Systemsdirectory entryname 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
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
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
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
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
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.
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".
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
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”)
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.
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
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”>
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
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
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">