A device versus a file as data container
We're interested in the Gettysburg Address and different ways it could be recorded or published. But first...
Consider the humble floppy. Now consider a file. The file might reside on a floppy, or elsewhere independent of the floppy. However, both floppy and file are made to hold data. Each is just a bucket you can fill. Now consider the humble book. The first one Gutenberg ever made, just bound pages devoid of written content. You can still get books like that in the personal journal section of bookstores. Pure whitespace. Written silence. Yours to fill in.
Now consider books that aren't blank. Some of them start out right from the first word on the first page with the novel or the essay or the speech. But many defer that till page 4. The stuff on the first 3 pages is called table of contents and is not the contents of primary interest. Those don't start till page 4, and the stuff in pages 1-3 is for keeping track of their location and streamlining the search for them.
Now consider the gettysburg address. If you want to publish it, you could do so either (a) in a book or pamphlet of its own or (b) in a larger anthology within a chapter or article of its own. If published all by itself in its very own pamphlet, it'll start right off on the very first page, like this:
Whereas if in an anthology, it's starting point will be a bit deeper into the pamphlet or book, say page 2. In any case, definitely not page 1. That will be reserved for a table of contents, which contains reference to page 2 as the Address's location. Like this:
The point is to distinguish the 2 different containers available for the Address: 1) book and 2) chapter.
Back to the floppy. Floppies work the same way as books. They can be organized two ways. They may contain a single document that starts off in the first byte. Or they can be internally organized to contain distinct units that contain separate documents, with a table of contents at the first byte. For floppies, the containing units or chapters are called "files." The table of contents is called the "directory." The arrangement for using the floppy for directory-and-files is called a "filesystem." (FAT, ext2, and NTFS are examples of filesystems.)
People are familiar with the use of floppies to contain files, but not their direct use as data containers in their own right. Natively however floppies have nothing to do with files and filesystems. Putting files onto a floppy is a purely optional way to use it. The floppy is more general than that; you can put on it any data whatsoever. But because there are few tools for using floppies without a filesystem, that usage is unfamiliar. Using floppies with files, on the other hand, is taken for granted. That's because operating systems as environments for users include filesystem support so, like public utilities, people take their services for granted.
Here is the Gettysburg Address with floppy as container:
And here is the linux command recipe for creating such a floppy:
echo "Four score... shall not perish from the earth." | dd of=/dev/fd0
Here is the Gettysburg Address with a file named "ga.txt" as container (where the file happens to reside on a floppy, though it could be a thumb drive, DVD, hard disk, or elsewhere):
And, the linux command recipe to build it:
mkfs /dev/fd0
mount /dev/fd0 /media/floppy
echo "Four score... shall not perish from the earth." > /media/floppy/ga.txt
The point is to distinguish the 2 different containers available for the Gettysburg Address: 1) floppy and 2) file. If after you build one of these floppies and want to verify these claims, view your floppy's content as a byte-by-byte dump:
dd if=/dev/fd0 | xxd | less
Devices & files
Subscribe to:
Posts (Atom)
Search
Oracle SAP/ ABAP PeopleSoft C Programming PHP Perl Ajax OOAD Computer Science Unix / Linux C#.Net COM DCOM Hibernate Interview Puzzle Winform Informatica SAP Visual C++ OOP's General HR New Java Java Oracle Freshers Zone Microsoft .Net C++ Unix Terradata Data WareHousing Data Structures Design Pattern Investments MFC Analysis & Design PL/SQL C#.Net Oracle ASP.Net Spring Framework MBA SQL Server C++ SQL Operating System Mainframes Windows Oracle Database QA & Testing Data Structures Blog Links XML Oracle VC++ Projects Informatica Sybase AS400 Win32 Visual C++ Management UML DBA e-Books Test Pattern SharePoint Window Sockets Tech Articles Puzzles QA & Testing SAP FI RDBMS Exchange Server Windows Symbian DataStage Linked List Trees RDBMS SQL Server Oracle Sybase Aptitude Reasoning Puzzles Verbal General HR Interview Guide Testing Load Runner Win Runner QTP SilkTest Certifications Basic Computer Science Winrunner Set 1 Winrunner Set 2 winrunner Set 3 Manual Testing Automated Testing Test Director Servlet Threads JSP IO J2EE Applets Struts EJB Spring Swing Set 1 Set 2 Set 3 Set 4 Set 5 Visual Studio Technical Articles .Net Framework Technical Blogs C#.Net Winforms Controls Interview Question Asp .Net Ado Net Ado Net Java Test1 Java Test2 Database & Beans Distributed ystems File System Graphics, Awt, Swing Advanced Java Hibernate Ajax Web Services .Net Algorithms Animation Article Audio Biology Buddha Business CAD/CAM Career Certification Chemistry Comics Computer Science Data Warehousing Database Design Device Driver Tips Discrete Maths Dummies e-Books Electronics Embedded Systems Engineering FAQ's Film Production Finance Forensic Science Forex Fresher Preparation Material Geometry Health Image Processing Internet Interview Questions Investment Java Literature Management Marathi Maths Medical MSI P. L. Deshpande Photography PHP Programming Programming Puzzles Programming Tips Project Management Python QTP SAP SAS Scripting Language Security SharePoint Siebel Software Testing Source Code Stock Market Technology Tip's Tutorial Uncategorized Video Video Lecture Visual C++ VOIP Web Development Website Links Windows Installer .Net 3D Max Animation Baseline Compression Basics C++ Commonly used Terms Computer C Programming Database Testing Data Structure Debt Instrument Depository Derivative Dividend Download Dummies e-Books Financial Ratio Fundamental analysis of shares I/O System Information Technology Interview Questions Japanese Joomla Template JPEG Managed C++ Microsoft Project Mortgage OpenGl Oracle Oracle Interview Questions Pharmacokinetics Photoshop Planning QFD QTP SQL Testing Utility VC++ VOIP Winform Winrunner Zip