Chapter 1 (Computer Forensics)

Size: px
Start display at page:

Download "Chapter 1 (Computer Forensics)"

Transcription

1 Final Study Guide Chapter 1 (Computer Forensics) CIST2612 Final will be given Sunday the 22 from 10:30 to 12:30 22 nd of May nd of Understanding Computer forensics {pages 2-3} Computer forensics involves obtaining and analyzing digital information for use as evidence in civil, criminal, or administrative cases. The FBI Computer Analysis and Response Team (CART) was formed in 1984 to handle the increasing number of cases involving digital evidence. Fourth Amendment (Katz v. United States) Even though his computer was validly siezed pursuant to a warrant, his attempted deletion of the documents in question created an expectation of privacy protected by the Fourth Amendment. [NO] A mere hope for secrecy is not a legally protected expectation. A Brief History of Computer Forensics {pages 5-7} Thirty years ago, most people didn t imagine that computers world be an integral part of everyday life. By the 1970s, electronic crimes were increasing, especially in the financial sector. One-half cent crime (mainframe era bad programmers took this money) Banks commonly tracked money in accounts to the third decimal place or more. They used and still use the rounding up accounting method when paying interest. If the interest applied to an account resulted in a fraction of a cent, that fraction was used in the calculation for the next account until the total resulted in a whole cent. It was assumed that sooner or later every customer would benefit. As PCs gained popularity and began to replace mainframe computers in the 1980 s, many different OSs emerged and Disk Operating System (DOS) was popular. In 1987, Apple produced the Mac SE, a Macintosh with an external EasyDrive hard disk with 60 MB of storage (first popular hard drive). Understanding Case Law (laws can t keep up with technology) {page 8} When statutes or regulations don t exist, case law is used. Case law allows legal counsel to use previous cases similar to the current one and addresses the ambiguity in laws. U.S. Fourth Amendment (search and seizure) {page 10} The right of the people to be secure in their persons, houses, papers, and effects, against unreasonable searches and seizures, shall not be violated, and no Warrants shall issue, but upon probable cause, supported by Oath or affirmation, and particularly describing the place to be searched, and the persons or things to be seized. Page 1

2 Understanding Law Enforcement Agency Investigations {page 11} In a criminal case, a suspect is tried for a criminal offense (such as burglary or fraud). Computers and networks might be only tools used to commit crimes and are, therefore, no different from the lockpick a burglar uses to break into a house. Following the Legal Processes (in general) {pages 12-14} Complaint Investigation Prosecution A criminal investigation can begin only when someone finds evidence of an illegal act or witnesses an illegal act. The witness or victim (often referred to as the complainant ) makes an allegation to the police, an accusation or supposition of fact that a crime has been committed. Understanding Corporate Investigations {page 14} Private or corporate investigations involve private companies and lawyers who address company policy violations and litigation disputes, such as wrongful termination. Private organization are not governed directly by Fourth Amendment issues but by internal company policies that define expected employee behavior and conduct in the workplace. When conducting a computer investigation for a private company, remember that business must continue with minimal interruption from your investigation. Embezzlement is a common computer crime, particularly in small firms. Corporate sabotage is most often committed by a disgruntled employee. For example, an employee decides to take a job at a competitor s firm and collects confidential files on a disk or USB drive before leaving. This type of crime can also lead to industrial espionage, which increases every year. Page 2

3 Final Study Guide Chapter 6 (Windows and DOS Systems) CIST2612 Understanding File Systems A file system gives an Operating System (OS) a road map to data on a disk. It is usually directly related to the OS. Understanding Disk Drives Disk drives are made up of one or more platters coated with magnetic material, and data is stored on platters in a particular way. List of disk drive components: Head The head is the device that reads and writes data to a drive. There s one head per platter. Tracks Tracks are circle areas that go around a platter where data is located. Cylinders A cylinder is a column of tracks on two or more disk platters. Sectors A sector is a section on a track, usually made up of 512 bytes. NOTE: Tracks and Cylinders are something interchanged. The manufacturer engineers a disk to have a certain number of sectors per track, and a typical disk drive stores 512 bytes per sector. To determine the total number of addressable bytes on a disk, multiply the number of tracks by the number of heads and by the number of sectors (Tracks x Heads x Sectors x 512 bytes). Example: 1024 Tracks x 32 heads x 63 sectors = 2,064,384 sectors 2,064,384 sectors x 512 bytes = 1,056,964,608 bytes = ~1 GB Microsoft file Structures File Allocation Table (FAT) New Technology File System (NTFS) In Microsoft file structures, sectors are grouped to form clusters, which are storage allocation units of one or more sectors. Clusters are typically 512, 1024, 2048, 4096, or more bytes each. Clusters are numbered sequentially starting at 2 because the first sector of all disks contains a system area (the boot record and a file structure database). Logical addresses Relative cluster positions (Cluster Number) Physical addresses Hardware level starting at 0 (Sector Number) Disk Partitions (a partition is a logical drive) Many hard disks are partitioned, or divided, into two or more sections. For example, an 8 GB hard disk might contain four partitions or logical drives. NOTE: FAT16 does not recognize disks larger than 2 GB (Book had a typo of 2 MB) Someone who wants to hide data on a hard disk can create hidden partitions or voids --- large unused gaps between partitions on a disk drive (called partition gap). Page 3

4 Master Boot Record (MBR) (located in the 1 st sector on the disk) On Windows and DOS computer systems the MBR stores information about the partitions on a disk and their locations, size, and other important items. Examining FAT Disks (File Allocation Table (FAT)) The FAT database is typically written to a disk s outermost track and contains filenames, directory names, date and time stamps, the starting cluster number, and file attributes (archive, hidden, system, and read-only). The FAT version in Microsoft DOS 6.22 had a limitation of eight characters for filenames and three characters for extensions. FAT12 Floppy disk drives and Drives up to 16 MB FAT16 Maximum storage capacity of 2 GB, Cluster # s stored in 2 bytes (65536) FAT32 Maximum storage capacity of 2 TB, Windows 98, Me, 2000, XP, and Vista. FATX Xbox media is stored in the FATX format and can be read by any Windows system. The date stamps start at the year 2000, unlike the other FAT formats that start at Drive size Sectors per Cluster FAT16 Cluster Size in Bytes 0-32 MB bytes MB 2 1 KB MB 4 2 KB MB 8 4 KB MB 16 8 KB MB KB MB KB MB KB NOTE: The # of Clusters is stored in 2 bytes, so the limit of clusters is 65536! How Files are saved using Clusters (Older Microsoft OSs) Whole File EOF RAM Slack End of Sector File Slack End of Cluster RAM slack RAM Memory copied to right after End Of File (EOF) to End of Sector. Any information in RAM at that point, such as logon IDs or passwords, is placed in RAM slack on older Microsoft OSs when you save a file. File fragments, deleted s, and passwords are often found in RAM and file slack. Structure of a FAT Partition Boot sector (MBR) File Allocation Table 1 File Allocation Table 2 (Copy) Root Directory Other Directories and ALL Files Page 4

5 File Allocation Table (FAT) (Short Entry & Long Entry) File Allocation Table (FAT) Short Entry Byte Offset (hex) Field Length Sample Value Meaning 00 8 bytes NameList Short File Name 08 3 bytes EXE Short File Extension 0B 1 byte 0x01 File Attributes 0C 1 byte 0x10 Windows NT Uses 0D 2 bytes 150 Create Time ms/1 st Char of Del File 0E 2 bytes 0xB192 Create Time (Hours, Minutes, Sec) 10 1 byte 0xA499 Create Date (Year, Month, Day) 12 2 bytes 0xA499 Last Access Date/Last Modified Date 14 2 bytes 0x0FFF Access Rights 16 2 bytes 0xB192 Last Modified Time (Hours, Minutes, Sec) 18 2 bytes 0xA499 Last Modified Data (Year, Month, Day) 1A 2 bytes Start Cluster (0 to 65535) 1C 4 bytes File Size in Bytes 32 bytes Short File Name 1 st Byte of 0xE5 means file was deleted, 1 st Byte of 0x00 means End of FAT Entries. File Attributes Read Only, Hidden, System {should not be moved}, Volume Label, Subdirectory {file size of 0}, Archive {used for Backups}, Device {should not be changed}, Reserved {should not be changed}. Create Time ms Range is 0 to 199. Time Page 5 Date Item & Range bits Item & Range bits Hour (0 23) Year (0 = 1980) 9 15 Minutes (0 59) 5 10 Month (1 12) 5 8 Seconds/2 (0 29) 0 4 Day (1 31) 0 4 NOTE: Year (Range is 1980 to 2099 in years & 0 to 119 in values) Time Example Normal time: 18:12:44 or 6:12:44 pm Each number to binary 10110:001100:10010 Binary number put in 2 bytes ( )2 = 0xB192 = (B192)16 Date Example Normal date: Sept 20 th 2005 or 20/9/ Each number to binary 10100:1001: Binary number put in 2 bytes ( )2 = 0xA499 = (A499)16

6 File Allocation Table (FAT) Long Entry Byte Offset (hex) Field Length Sample Value Meaning 00 1 byte 0x01 Sequence Number bytes Happy Name Characters (five UCS-2 characters) 0B 1 byte 0x0F Attributes (always 0x0F) 0C 1 byte 0x10 Type (always 0x00 for VFAT LFN) 0D 1 byte Checksum of DOS file name 0E 12 bytes Shapes Name Characters (six UCS-2 characters) 1A 2 byte 0x0000 First cluster (always 0x0000) 1C 4 bytes On Name Characters (two UCS-2 characters) 32 bytes Sequence Number Range of 0x01 to 0.x14, last one (bit 6 is set 0x40), and deleted entry 0xE5. Name Characters After the last UCS-2 character, a 0x0000 is added. The remaining unused characters are filled with 0xFFFF. Deleting FAT Files (1 st letter of file name is changed to a special value) When a file is deleted in Windows Explorer or with the MS-DOS Delete command, the OS inserts a HEX E5 (0xE5), which many hex-editing programs reflect as the lowercase Greek letter sigma (σ) in the filename s first letter position in the FAT database. Page 6

7 The FAT16 file system uses 16 bits per FAT entry, thus one entry spans two bytes in little-endian byte order: Example of FAT16 table start with several cluster chains Offset A +B +C +D +E +F F0 FF FF FF FF FF 0A C 00 0D 00 0E 00 0F FF FF FF FF F7 FF F7 FF 1A 00 FF FF F7 FF FAT ID / endianess marker (in reserved cluster #0), with 0xF0 indicating a volume on a non-partitioned superfloppy drive (must be 0xF8 for partitioned disks) End of chain indicator / maintenance flags (in reserved cluster #1) Second chain (7 clusters) for a non-fragmented file (here: #2, #3, #4, #5, #6, #7, #8) Third chain (7 clusters) for a fragmented, possibly grown file (here: #9, #A, #14, #15, #16, #19, #1A) Fourth chain (7 clusters) for a non-fragmented, possibly truncated file (here: #B, #C, #D, #E, #F, #10, #11) Empty clusters Fifth chain (1 cluster) for a sub-directory (here: #23) Bad clusters (3 clusters) (here: #27, #28, #2D) Page 7

8 Final Study Guide Chapter 6 (Sectors Cluster and Memory Size) CIST2612 Problem A How many sectors are there on this floppy disk and what is the disk size? Floppy Disk (info) Double Sided (2 heads) 80 Tracks 18 Sectors per Track 2 x 80 x 18 = 2880 Sectors 2880 x 512 bytes 1,474,560 bytes 1440 KB 1.44 MB Problem B How many sectors are there on this hard disk and what is the disk size? Hard Drive (info) 16 Double Sided Platters (32 heads) 1024 Tracks 127 Sectors per Track 32 x 1024 x 127 = 4,161,536 Sectors x 512 bytes 2,130,706,432 bytes 2032 MB 1.98 GB ~ 2 GB File Allocation Table (FAT) FAT16 Maximum storage capacity of 2 GB, Cluster # s stored in 2 bytes (65536) Drive size Sectors per Cluster FAT16 Cluster Size in Bytes 0-32 MB bytes MB 2 1 KB MB 4 2 KB MB 8 4 KB MB 16 8 KB MB KB MB KB MB KB Page 8

9 Problem C What is the cluster size of a 500MB hard drive (using FAT16)? 500MB = 524,288,000 bytes / / bytes Sectors are 512 bytes, so how many sectors are needed to fit 8000 bytes? 16 Sectors in each Cluster (16 x 512 bytes = 8192 bytes 8KB) Problem D What is the cluster size of a 2GB hard drive (using FAT16)? 2GB = 2,147,483,648 bytes / / bytes Sectors are 512 bytes, so how many sectors are needed to fit bytes? 64 Sectors in each Cluster (64 x 512 bytes = bytes 32KB) Whole File EOF RAM Slack End of Sector File Slack End of Cluster Problem E Using the Hard Drive from Problem C, how much memory will a 20KB file take up? The Hard Drive from Problem C use Clusters of size 8KB! 20KB = bytes 3 x Cluster size (8KB) = 3 x 8192 = 24,576 bytes 4KB wasted Problem F Using the Hard Drive from Problem D, how much memory will a 20KB file take up? The Hard Drive from Problem D use Clusters of size 32KB! 20KB = bytes 1 x Cluster size (32KB) = 1 x = 32,768 bytes 12KB wasted Page 9

10 Time Date Item & Range bits Item & Range bits Hour (0 23) Year (0 = 1980) 9 15 Minutes (0 59) 5 10 Month (1 12) 5 8 Seconds/2 (0 29) 0 4 Day (1 31) 0 4 NOTE: Year (Range is 1980 to 2099 in years & 0 to 119 in values) Time Example Normal time: 18:12:44 or 6:12:44 pm Each number to binary 10110:001100:10010 Binary number put in 2 bytes ( )2 = 0xB192 = (B192)16 Date Example Normal date: Sept 20th 2005 or 20/9/ Each number to binary 10100:1001: Binary number put in 2 bytes ( )2 = 0xA499 = (A499)16 Problem G How is Normal time 3:15:08 am represented? Each number to binary 00100:001111:00011 Binary number put in 2 bytes ( )2 = 0x21E3 = (21E3)16 16 Page 10

11 Final Study Notes Chapter 6 & 8 (File Systems Compared) CIST2612 File Systems (Where are they used?) A file system gives an Operating System (OS) a road map to data on a disk. It is usually directly related to the OS. File Allocation Table (FAT) Flash Drives & Older Window Computers New Technology File System (NTFS) Current Window Computers Hierarchical File System (HFS) Macintosh/Apple Computers, iphones UNIX & Linux Android phones Disk Drives (All these File Systems use this disk structure) Disk drives are made up of one or more platters coated with magnetic material, and data is stored on platters in a particular way. Data is stored in group of bytes called Sectors or Blocks on the disk (currently the normal is 512 bytes each. List of disk drive components: Head The head is the device that reads and writes data to a drive. There s one head per platter. Tracks Tracks are circle areas that go around a platter where data is located. Sectors A sector is a section on a track, a group of 512 bytes. What happens when a file is Created How many bytes are set aside for a file when it is created? File Allocation Table (FAT) A 32 bytes record is created, and the record points to the first grouping of sectors (cluster) only. New Technology File System (NTFS) A 1024 bytes record is created, and the record points to each grouping of sectors (cluster). Hierarchical File System (HFS) A 512 bytes record is created, and the record points to each grouping of blocks (allocation blocks). A tree structure is used called a B*-tree (balanced tree) which allows files to be found much faster than searching for it by name. UNIX & Linux A 512 bytes record is created called an inode, and this inode used address pointers (direct, single, double, or triple) to point to each block. Note block are not grouped, to make cluster like bigger block! Page 11

12 Structure of each file system All these file systems search the list of file records to find a file! How information is stored is where they are different! File Allocation Table (FAT) Record (called Short Entry, 32B) {Long Entries is used for long file name only} a) Name {8 characters for name and 3 for extension NNNNNNNN.EEE} b) Attribute (Read Only, Hidden, System, Subdirectory) c) Times & Dates (Creation, Access {only date}, Changes) d) First Cluster (Start of File s Linked List) e) File Size NOTE: No Access Security for files. Times & Dates (2B for time, 2B for date) Time (Seconds/2, Minutes, Hours) SSSSS:MMMMMM:HHHHH {16 bits} Date (Day, Month, Years since 1980) DDDDD:MMMM:YYYYYYY {16 bits} The FAT is a Linked List of all clusters with a pointer to the next cluster. FFFF/FFFFFFFF End of File FFFF FFFF FFFF 1508 FFFF New Technology File System (NTFS) Master File Table (MFT) Record (1024B, a record in the MFT has 15 subparts, Each start with FILE ) a) 0x10 Standard Times & Dates (Creation, Access, Data & Record Changes) b) 0x30 File Name Short & Long (up to 255) c) 0x40 Object ID Ownership & Access Rights d) 0x50 Security Access Control List e) 0x80 Data File Data (if under 512B) or Data Runs (groups of connected clusters) Note: This File System has the fastest Access Time for small files (under 512 bytes)! Times & Dates (WIN32 format, 8B) {100 nanosecond count used} 10,000,000 counts per second since Jan. 1 st 1601 Data Run (Examples) 1) 21 4B CA 08 This data run contains 75 clusters & starts at cluster 2250 (0x4B = 75 & 0x8CA = 2250) 2) 32 2C 01 F2 D4 01 This data run contains clusters 300 starts at cluster (0x12C = 300 & 0x1D4F2 = ) Page 12

13 Hierarchical File System (HFS) Master Directory Block (MDB) Record (512B, a data fork & a resource fork {things like icons}) Like the data on a UNIX & Linux (minus the Block Address) Note: The B-tree (or balanced tree) allows HFS file systems to find a file record faster! Times & Dates (4B 32 bits, 1 bit for sign +/-) Seconds since Jan. 1 st 1970 (range of 13Dec1901 to 19Jan2038) UNIX & Linux Record (Inode,512B) a) Mode & Type b) Number of Links (like short cuts) c) UID & GID d) Size in bytes e) Time & Dates (record change time, and data access & modified time) f) Block Address ([10] direct, [1] indirect, [1] double-indirect, [1] triple-indirect) g) Number of blocks h) File generation number and version number Note: The create time & date is not stored! 2 nd Note: Bad blocks are tracked! The book pointed out that data could be hidden by adding good block to the bad list. Times & Dates (4B 32 bits, 1 bit for sign +/-) Seconds since Jan. 1 st 1970 (range of 13Dec1901 to 19Jan2038) Double-Indirect Pointers (1 pointer 128 pointers Each pointer to another 128) [897, 925, 977,, {128}] 897[10501, 12876, 16456,, {128}] Page 13

14 What happens when a file is Searched for so the file can be loaded on the computer What steps are done by the computer? General Steps 1) Search the list of records to find the needed file record {Search Time} a) Check the 1 st record by name or file # (if found stop) b) Check the 2 nd record by name or file # (if found stop) c) Repeat, Repeat, Repeat until found 2) When the record is found, use the information in the file record to put the file together piece by piece {Access Time} Note: Information is loaded in chunks of data (cluster/allocation blocks) during the search for file record also. File Allocation Table (FAT) o Check each 32 byte record to see if the names match o When the file record found, use the first cluster location to find the first piece of the file o Now use the Linked List to find any other pieces of the file and put New Technology File System (NTFS) o Check each 1024 byte record (marked with FILE ) to see if the names match o When the file record is found If file is under 512 bytes in size, your done data in already in the computer o If file is over 512 bytes in size, use all the Data Run to information to put the file together piece by piece Hierarchical File System (HFS) o Search the B*-tree structure 512 byte records to find the file record that matches the file number Note: The B*-tree can be searched much faster than a normal list of records o When the file record is found, locate the allocated block in the file record o Use the allocated block information to find all the blocks and put the file together block by block UNIX & Linux o Check each 512 byte record (called an Inode) to see if the file numbers match o When the file record is found, locate the pointers (direct, indirect, double-indirect, triple-indirect) and the number of blocks in the file record (called an Inode) o Use the pointers (direct, indirect, double-indirect, triple-indirect) and the number of blocks to put the file together block by block Page 14

15 Final Study Notes Chapter 6 & 8 (File Systems - Examples) CIST2612 Example (Clusters are 4 Sectors/Blocks each) A Sector/Block is 512 bytes and a Cluster is 4 Sectors/Blocks, so a Cluster is 2KB or 2048 bytes. File is named FOODLIST.DAT and contains 1825 bytes. Cluster # Sector/Block # Sector/Block # Sector/Block # Sector/Block # How would the data for this file be stored in our file systems? File Allocation Table (FAT16) It s 32 bytes file record would have a field for the [Start Cluster] = Cluster_List[0] = Cluster_List[1] = : Cluster_List[2758] = 2759 Cluster_List[2759] = 7432 : Cluster_List[7432] = 7433 Cluster_List[7433] = : Cluster_List[8793] = 0 : FAT16 Short Entry (Record) for this file Field Length Sample Value Meaning 8 bytes FOODLIST Short File Name 3 bytes DAT Short File Extension 1 byte 0x01 File Attributes 1 byte 0x10 Windows NT Uses 1 byte 150 Create Time 10ms/1 st Char of Del File 2 bytes 0xB192 Create Time (Hours, Minutes, Sec) 2 bytes 0xA499 Create Date (Year, Month, Day) 1 bytes 0xA499 Last Access Date/Last Modified Date 2 bytes 0x0FFF Access Rights 2 bytes 0xB192 Last Modified Time (Hours, Minutes, Sec) 2 bytes 0xA499 Last Modified Data (Year, Month, Day) 2 bytes C6 0A Start Cluster (0xAC6 = 2758) 4 bytes File Size in Bytes (0x721 = 1825) 32 bytes Page 15

16 File is named FOODLIST.DAT and contains 1825 bytes. Cluster # Sector/Block # Sector/Block # Sector/Block # Sector/Block # New Technology File System (NTFS) It s a 1024 bytes file record that has a data file attribute (0x80) {1 of 15} that stores the data or the data location(s). Nonresident Flag Start of attribute 0x80 Length of attribute 0x C AD 1A C B B C6 0A D FF FF FF FF Data Run 1 Data Run 2 End of Data Runs End of file record Data Run C6 0A Data Run D Page 16

17 File is named FOODLIST.DAT and contains 1825 bytes. Cluster # Sector/Block # Sector/Block # Sector/Block # Sector/Block # UNIX & Linux A 512 bytes record is created called an inode, and this inode used address pointers (direct, single, double, or triple) to point to each block. Note: Block are not grouped, to make cluster like bigger block! Inode other file information Size 1825 # of Blocks 16 Block Address Block Address Block Address Block Address Block Address Block Address Block Address Block Address Block Address Block Address Indirect Address D-Indirect Address 0 T-Indirect Address : : Page 17

18 Final Study Notes Chapter 10 (Graphic Files - BMP) CIST2612 bitmap (BMP file format) = Device Independent Bitmap (DIB) The BMP file format is capable of storing two-dimensional digital images of arbitrary width, height, and resolution, both monochrome and color, in various color depths, and optionally with data compression, alpha channels, and color profile. (*.bmp, *.dib) BMP File Structure (these parts come in order) Only 3 parts are required (1) Bitmap file header, (2) DIB header, and (3) Pixel array. Bitmap file header General information about the bitmap image file. DIB header Detailed information about the bitmap image and define the pixel format. Extra bit masks Pixel format. Color table Colors used by the bitmap image data (Pixel array). Required for color depths < 8 bits. Gap1 Structure alignment for the File offset to Pixel array in the bitmap file header. Pixel array The actual values of the pixels. Each row in the Pixel array is padded to a multiple of 4 bytes in size. Pixels are stored upside-down and left to right. Gap2 Structure alignment for the ICC profile data offset field in the DIB header. ICC color profile The color profile for color management. Bitmap File Header (only 14 bytes) Page 18

19 DIB header (bitmap information header) BMP Example Small black & white smiley face (only 100 pixels in size, 10 x 10). Page 19

20 BMP File Header Example - Black & White Smiley Face (See next page) Header Field 42 4D BM Size of BMP file x176 (374)10 Offset to bitmap image data (pixel array) (54)10 DIB Header Example - Black & White Smiley Face (See previous page) Size of the Header x28 (40)10 bitmap width in pixels 0A xA (10)10 bitmap height in pixels 0A xA (10)10 number of color panels x1 (1)10 10 number of bits per pixels x18 (24)10 compression method image size x140 (320)10 horizontal resolution of the image (pixel per meter) vertical resolution of the image (pixel per meter) number of colors in the color palette (0 = 2 n ) number of important colors used Pixel array Example - Black & White Smiley Face (See previous page) The Bottom row comes first! Bottom row of image FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF (white dot white dot white dot white dot white dot white dot white dot white dot white dot white dot padding) nd Bottom row image FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF (white dot white dot white dot black dot black dot black dot black dot white dot white dot white dot padding) 2 nd Page 20

21 Final Study Notes Chapter 10 (Graphic Files - GIF) CIST2612 GIF (Graphics Interchange Format) Introduced in 1987 The format supports up to 8 bits per pixel for each image, allowing a single image to reference its own palette of up to 256 different colors chosen from the 24-bit RGB color space. It also supports animations and allows a separate palette of up to 256 colors for each frame. These palette limitations make the GIF format less suitable for reproducing color photographs and other images with continuous color, but it is well-suited for simpler images such as graphics or logos with solid areas of color. GIF images are compressed using the Lempel-Ziv-Welch (LZW) lossless data compression technique to reduce the file size without degrading the visual quality. GIF File Structure (Main parts only ) Header GIF89a/GIF87a Logical Screen Descriptor Width, Height, Color Table Type *, Background, aspect ratio Global Color Table (GCT) List of up to 256 RGB colors starts at 0 Graphic Control Extension 21 F9 GCE code, Size of GCE, Animation Delay, Transparent # Image Descriptor C2, NW corner position, Width & Height, Local Color Table * Image Start/LZW code size, LZW data size, LSW data GIF File Header (All parts) Offset Offset Size hex dec bytes Purpose Header GIF89a ( ) or GIF87a ( ) Logical screen width in pixels Logical screen height in pixels 0A 10 1 * Color Table Type F7 (Flag[1]:Color Bit Sz[3]:Sorted[1]:Table Sz[3]) 0B 11 1 Background color (00 to FF, 0 to 255) 0C 12 1 Default pixel aspect ratio (0 means 1:1) 0D 13 1 to = to FF = FF FF FF (Max of 256) 2 Graphic Control Extension (GCE) (21 F9) 1 Size of GCE in bytes 1 * Disp Meth (3 bits):usr In F(1 bit):delay(3 bits):transparency F(1 bit) 2 Delay for animation (00 00 means not used) 1 Number of Transparent Color in GCT 1 End of GCE block (00) 1 Image Descriptor (2C =, {Comma}) 4 NW corner position of image in logical screen 4 Image width and height in pixels 1 * Local color table Descriptor (0 = no local color table) 1 Start of image LZW minimum bit code size (8 bit code size) 1 Size of LZW encode image data follow var LZW encode image data (based of previous byte) 1 End of image data marker (00) 1 End of GIF file (3B = ; {semicolon} Page 21

22 GIF File Header Example 1 pixel GIF Header Field GIF89a Width in pixels x1 (1)10 10 Height in pixels x1 (1)10 10 Color Table Type 08 0x8 (8)10 Background Color 00 0x0 (0)10 Aspect Ratio 00 0x0 (0)10 Global Color Table FF FF FF Graphic Control Extension 21 F9 0x21F9 {21 is the ASCII code for!} Size of GCE 04 0x4 (4)10 Graphic Control Extension Special Byte 01 0x1 (1)10 10 Animation Delay x0 (0)10 Transparent Color 00 0x0 (0)10 End of GCE 00 0x0 (0)10 Image Marker 2C 0x2C {ASCII for comma,} NW Corner Position x0 Width & Height x1 & 0x1 Local Color Table 00 0x0 {not used} Image Start/LZW code size 01 0x2 (2)10 LZW data size 01 0x1 (1)10 10 LZW data 44 0x44 ( )2 End of data marker 00 0x0 (0)10 End of GIF file marker 3B 0x3B {ASCII for semicolon ;} *Color Table Type (Global Color Table Flag (1 bit) : Bit Color Resolution (3 bits) Value + 1 : Global Table Sort Flag (1 bit) : Size of Global Color Table (3 bits) 2 Value + 1 *Graphic Control Extension Special Byte (Disposal Method (3 bits) (0=No Disp,1=Do Not Dispose,2=Restore BKGR,3=Restore Previous) : User Input Flag (1 bit) : User Input Delay Time (3 bits) : Transparency Flag (1 bit) *Local Color Table Type (Local Color Table Flag (1 bit) : Interlace Flag (1 bit) : Local Table Sort Flag (1 bit) : RESERVED (2 bits) : Size of Local Color Table (3 bits) 2 Value + 1 Page 22

23 Final Study Notes Chapter 10 (Graphic Files - PNG) CIST2612 PNG (Portable Network Graphics) Introduced in 1996 PNG was created as an improved, non-patented replacement for Graphics Interchange Format (GIF), and is the most used lossless image compression format on the Internet. PNG was and is intended to be a single-image format only. Compression used is like LZ77 called Deflate, and a filter step used. PNG File header (A PNG file starts with an 8-byte signature) Values 89 Purpose Has the high bit set to detect transmission systems that do not support 8 bit data and to reduce the chance that a text file is mistakenly interpreted as a PNG, or vice versa. 50 4E 47 In ASCII, the letters PNG, allowing a person to identify the format easily if it is viewed in a text editor. 0D 0A 1A 0A A DOS-style line ending (CRLF) to detect DOS-Unix line ending conversion of the data. A byte that stops display of the file under DOS when the command type has been used the end-of-file character A Unix-style line ending (LF) to detect Unix-DOS line ending conversion. PNG File Structure (chunks of information {4 Critical types & 15 Ancillary types}) After header comes a series of chunks, each of which gives certain information about the image. Chuck Data Length Chunk type Chunk data CRC 4 bytes 4 bytes Length bytes 4 bytes NOTE: CRC = Cyclic Redundancy Code (checksum) A decoder must be able to interpret critical chunks to read and render a PNG file. IHDR must be the first chunk; it contains (in this order) the image's width, height, bit depth, color type, compression method, filter method, interlace method. PLTE contains the palette; list of colors (indexed color like in a GIF). IDAT contains the image, which may be split among multiple IDAT chunks. Such splitting increases filesize slightly, but makes it possible to generate a PNG in a streaming manner. The IDAT chunk contains the actual image data, which is the output stream of the compression algorithm. IEND marks the image end. Color type Name PNG color types Binary A C P 0 Grayscale True color (RGB) color Masks 3 Indexed color, palette 4 Grayscale and alpha alpha 6 True color and alpha alpha, color Page 23

24 PNG Example Small black & white smiley face (only 100 pixels in size, 10 x 10). Figure 1 - PNG file with IDAT information highlighted File Header Header Field E 47 0D 0A 1A 0A 89 P N G {CR} {Line Feed} {End of File} {LF} IHDR Chunk Chunk Data Length in Bytes D 0xD (13)10 10 Chunk Type IHDR Width in pixels A 0xA (10)10 Height in pixels A 0xA (10)10 Bit Depth 08 0x8 (8)10 Color Type 06 True color (RGB) & Alpha Compression method 00 Compression method 0 Filter method 00 Filter method 0 Interlace method 00 0 = No Interlace Chunk Checksum 8D 32 CF BD 0x8D32CFBD IDAT Chunk Chunk Data Length in Bytes x46 (70)10 Chunk Type IDAT Image data CE 70 Bytes {highlighted above} Chunk Checksum AE xAE IEND Chunk Chunk Data Length in Bytes x0 (0)10 Chunk Type E 44 IEND Image data 0 Bytes Chunk Checksum 4C EE 0x4C6256EE Page 24

25 Final Study Notes Chapter 10 (Graphic Files JPEG) CIST2612 JPEG (Joint Photographic Experts Group) Introduced in 1991 Uses Lossy Compression JPG is optimized for photographs and similar continuous tone images that contain many, many colors. It can achieve astounding compression ratios even while maintaining very high image quality. JPG works by analyzing images and discarding kinds of information that the eye is least likely to notice. It stores information as 24 bit color. JPEG File header (Segment FF D8 = Start Of Image, FF E0 = Application Specific) Values FF D8 FF E0 Purpose Start Of Image Segment Application Specific Segment for a JPEG JFIF (File Interchange Format Specification) Byte count (does not include Segment Marker) 4A Identifier (zero terminated string { JFIF }) Version of Application 01 Units for the X and Y densities (0 = no units, 1 = dots per inch, 2 = dots per cm) Horizontal pixel density {0x60 = (96) 10} 96 dots per inch is common! Vertical pixel density {0x60 = (96) 10} 96 dots per inch is common! 00 Thumbnail horizontal pixel count 00 Thumbnail vertical pixel count There are more bytes if thumbnails are not 0 JPEG File Structure (segments of information {11 segment types}) A JPEG image consists of a sequence of segments, each beginning with a marker, each of which begins with a 0xFF byte followed by a byte indicating what kind of marker it is. Some markers consist of just those two bytes; others are followed by two bytes (high then low) indicating the length of marker-specific payload data that follows. (The length includes the two bytes for the length, but not the two bytes for the marker.) Segment Marker Length of Segment Data Segment data Entropy-data FF 2 bytes 2 bytes Length bytes? bytes Most Common JPEG Segment markers (not all) Name Bytes Payload Name Comments SOI 0xFF, 0xD8 none Start Of Image SOF0 SOF2 APPn 0xFF, 0xC0 0xFF, 0xC2 0xFF, 0xEn variable size variable size variable size Start Of Frame (Baseline DCT) Start Of Frame (Progressive DCT) Applicationspecific EOI 0xFF, 0xD9 none End Of Image Indicates that this is a baseline DCT-based JPEG, and specifies the width, height, number of components, and component subsampling (e.g., 4:2:0). Indicates that this is a progressive DCT-based JPEG, and specifies the width, height, number of components, and component subsampling (e.g., 4:2:0). For example, an Exif JPEG file uses an APP1 marker to store metadata, laid out in a structure based closely on TIFF. Page 25

26 JPEG Example Small black & white smiley face (only 100 pixels in size, 10 x 10). Figure 1 Start of Frame (Baseline DCT) (Width, Height, # of Components, Component subsampling) Start of Frame (Baseline DCT) Segment Data Segment Marker FF C0 Length of Segment Data x11 (17)10 10 Bit Sample Precision 08 0x8 (8)10 Width in pixels 00 0A 0xA (10)10 Height in pixels 00 0A 0xA (10)10 Number of Component 03 0x3 (3)10 1 st Component Subsampling (1:34:0) 2 th Component Subsampling (2:17:1) 3 rd Component Subsampling (3:17:1) Page 26

Bytes are read Right to Left, so = 0x3412, = 0x

Bytes are read Right to Left, so = 0x3412, = 0x Practice - Quiz #5 CIST 2612 Computer Forensics Bitmap File Information Bytes are read Right to Left, so 12 34 = 0x3412, 12 34 56 70 = 0x70563412 Figure 1 - Bitmap File Header Figure 2 - Device Independent

More information

Guide to Computer Forensics and Investigations Fourth Edition. Chapter 6 Working with Windows and DOS Systems

Guide to Computer Forensics and Investigations Fourth Edition. Chapter 6 Working with Windows and DOS Systems Guide to Computer Forensics and Investigations Fourth Edition Chapter 6 Working with Windows and DOS Systems Understanding Disk Drives Disk drives are made up of one or more platters coated with magnetic

More information

Machine Language and System Programming

Machine Language and System Programming زبان ماشين وبرنامه نويسی سيستم Machine Language and System Programming جلسه دوازدھم دانشگاه صنعتی ھمدان پاييز 1389 Objectives Explain the purpose and structure of file systems Describe Microsoft file structures

More information

Dissecting Files. Endianness. So Many Bytes. Big Endian vs. Little Endian. Example Number. The "proper" order of things. Week 6

Dissecting Files. Endianness. So Many Bytes. Big Endian vs. Little Endian. Example Number. The proper order of things. Week 6 Dissecting Files Endianness Week 6 The "proper" order of things So Many Bytes So Many Bytes On a 32-bit system, each word consists of 4 bytes So, when any 32-bit value is stored in memory, each of those

More information

Advanced Operating Systems

Advanced Operating Systems Advanced Operating Systems File Systems: File Allocation Table, Linux File System, NTFS Lecture 10 Case Studies of File Systems File Allocation Table (FAT) Unix File System Berkeley Fast File System Linux

More information

makes floppy bootable o next comes root directory file information ATTRIB command used to modify name

makes floppy bootable o next comes root directory file information ATTRIB command used to modify name File Systems File system o Designed for storing and managing files on disk media o Build logical system on top of physical disk organization Tasks o Partition and format disks to store and retrieve information

More information

ECE 598 Advanced Operating Systems Lecture 17

ECE 598 Advanced Operating Systems Lecture 17 ECE 598 Advanced Operating Systems Lecture 17 Vince Weaver http://web.eece.maine.edu/~vweaver vincent.weaver@maine.edu 3 April 2018 Announcements Project Topics Should have gotten response on project topic

More information

Understanding FAT12. Introduction to Computer Forensics. Kessler/Schirling

Understanding FAT12. Introduction to Computer Forensics. Kessler/Schirling Understanding FAT12 Introduction to Computer Forensics Kessler/Schirling Fall 2002 EXP 248 Project #3 You have a floppy disk image file Examine floppy to find an address and a password, and verify MD5

More information

Chapter Two File Systems. CIS 4000 Intro. to Forensic Computing David McDonald, Ph.D.

Chapter Two File Systems. CIS 4000 Intro. to Forensic Computing David McDonald, Ph.D. Chapter Two File Systems CIS 4000 Intro. to Forensic Computing David McDonald, Ph.D. 1 Learning Objectives At the end of this section, you will be able to: Explain the purpose and structure of file systems

More information

Data Storage JMU Computer Science Content Teaching Academy 2014

Data Storage JMU Computer Science Content Teaching Academy 2014 Data Storage JMU Computer Science Content Teaching Academy 2014 Florian Buchholz buchhofp@jmu.edu Abstraction layers to interpret data and information Physical layer Data is physically stored Device BIOS

More information

ECE 598 Advanced Operating Systems Lecture 14

ECE 598 Advanced Operating Systems Lecture 14 ECE 598 Advanced Operating Systems Lecture 14 Vince Weaver http://www.eece.maine.edu/~vweaver vincent.weaver@maine.edu 19 March 2015 Announcements Homework #4 posted soon? 1 Filesystems Often a MBR (master

More information

File System Interpretation

File System Interpretation File System Interpretation Part III. Advanced Techniques and Tools for Digital Forensics CSF: Forensics Cyber-Security Fall 2018 Nuno Santos Previously: Introduction to Android forensics! How does Android

More information

Common File Formats. Need a standard to store images Raster data Photos Synthetic renderings. Vector Graphic Illustrations Fonts

Common File Formats. Need a standard to store images Raster data Photos Synthetic renderings. Vector Graphic Illustrations Fonts 1 Image Files Common File Formats Need a standard to store images Raster data Photos Synthetic renderings Vector Graphic Illustrations Fonts Bitmap Format - Center for Graphics and Geometric Computing,

More information

This is not yellow. Image Files - Center for Graphics and Geometric Computing, Technion 2

This is not yellow. Image Files - Center for Graphics and Geometric Computing, Technion 2 1 Image Files This is not yellow Image Files - Center for Graphics and Geometric Computing, Technion 2 Common File Formats Need a standard to store images Raster data Photos Synthetic renderings Vector

More information

The FAT File System. 1. FAT Overview. 2. Boot Sector, FAT, Root Directory, and Files The FAT F 䤀耄 le System

The FAT File System. 1. FAT Overview. 2. Boot Sector, FAT, Root Directory, and Files The FAT F 䤀耄 le System CIS 24 Home http://www.c jump.com/cis24/cis24syllabus.htm The FAT File System 1. FAT Overview 2. Boot Sector, FAT, Root Directory, and Files 3. FAT File System Layout 4. FAT Clusters and Sectors 5. FAT,

More information

File Systems. What do we need to know?

File Systems. What do we need to know? File Systems Chapter 4 1 What do we need to know? How are files viewed on different OS s? What is a file system from the programmer s viewpoint? You mostly know this, but we ll review the main points.

More information

File System Case Studies. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

File System Case Studies. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University File System Case Studies Jin-Soo Kim (jinsookim@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Today s Topics The Original UNIX File System FFS Ext2 FAT 2 UNIX FS (1)

More information

Operating Systems. Lecture File system implementation. Master of Computer Science PUF - Hồ Chí Minh 2016/2017

Operating Systems. Lecture File system implementation. Master of Computer Science PUF - Hồ Chí Minh 2016/2017 Operating Systems Lecture 7.2 - File system implementation Adrien Krähenbühl Master of Computer Science PUF - Hồ Chí Minh 2016/2017 Design FAT or indexed allocation? UFS, FFS & Ext2 Journaling with Ext3

More information

File System Concepts File Allocation Table (FAT) New Technology File System (NTFS) Extended File System (EXT) Master File Table (MFT)

File System Concepts File Allocation Table (FAT) New Technology File System (NTFS) Extended File System (EXT) Master File Table (MFT) File System Concepts File Allocation Table (FAT) New Technology File System (NTFS) Extended File System (EXT) Master File Table (MFT) 1 FILE SYSTEM CONCEPTS: FILE ALLOCATION TABLE (FAT) Alex Applegate

More information

ECE 598 Advanced Operating Systems Lecture 18

ECE 598 Advanced Operating Systems Lecture 18 ECE 598 Advanced Operating Systems Lecture 18 Vince Weaver http://web.eece.maine.edu/~vweaver vincent.weaver@maine.edu 5 April 2016 Homework #7 was posted Project update Announcements 1 More like a 571

More information

File System Case Studies. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

File System Case Studies. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University File System Case Studies Jin-Soo Kim (jinsookim@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Today s Topics The Original UNIX File System FFS Ext2 FAT 2 UNIX FS (1)

More information

Operating Systems. Operating Systems Professor Sina Meraji U of T

Operating Systems. Operating Systems Professor Sina Meraji U of T Operating Systems Operating Systems Professor Sina Meraji U of T How are file systems implemented? File system implementation Files and directories live on secondary storage Anything outside of primary

More information

COMP091 Operating Systems 1. File Systems

COMP091 Operating Systems 1. File Systems COMP091 Operating Systems 1 File Systems Media File systems organize the storage space on persistent media such as disk, tape, CD/DVD/BD, USB etc. Disk, USB drives, and virtual drives are referred to as

More information

Multimedia Systems. Part 4. Mahdi Vasighi

Multimedia Systems. Part 4. Mahdi Vasighi Multimedia Systems Part 4 Mahdi Vasighi www.iasbs.ac.ir/~vasighi Department of Computer Science and Information Technology, Institute for Advanced Studies in Basic Sciences, Zanjan, Iran Image Formats

More information

The Extended MBR (version 1.05) (dated: 01 Nov 2018) by Benjamin David Lunt Copyright (c) Forever Young Software

The Extended MBR (version 1.05) (dated: 01 Nov 2018) by Benjamin David Lunt Copyright (c) Forever Young Software The Extended MBR (version 1.05) (dated: 01 Nov 2018) by Benjamin David Lunt Copyright (c) Forever Young Software 1984-2018 http://www.fysnet.net You may distribute this document in its entirety and/or

More information

FILE SYSTEMS. CS124 Operating Systems Winter , Lecture 23

FILE SYSTEMS. CS124 Operating Systems Winter , Lecture 23 FILE SYSTEMS CS124 Operating Systems Winter 2015-2016, Lecture 23 2 Persistent Storage All programs require some form of persistent storage that lasts beyond the lifetime of an individual process Most

More information

Segmentation with Paging. Review. Segmentation with Page (MULTICS) Segmentation with Page (MULTICS) Segmentation with Page (MULTICS)

Segmentation with Paging. Review. Segmentation with Page (MULTICS) Segmentation with Page (MULTICS) Segmentation with Page (MULTICS) Review Segmentation Segmentation Implementation Advantage of Segmentation Protection Sharing Segmentation with Paging Segmentation with Paging Segmentation with Paging Reason for the segmentation with

More information

Typical File Extensions File Structure

Typical File Extensions File Structure CS 355 Operating Systems File Systems File Systems A file is a collection of data records grouped together for purpose of access control and modification A file system is software responsible for creating,

More information

Introduction to OS. File Management. MOS Ch. 4. Mahmoud El-Gayyar. Mahmoud El-Gayyar / Introduction to OS 1

Introduction to OS. File Management. MOS Ch. 4. Mahmoud El-Gayyar. Mahmoud El-Gayyar / Introduction to OS 1 Introduction to OS File Management MOS Ch. 4 Mahmoud El-Gayyar elgayyar@ci.suez.edu.eg Mahmoud El-Gayyar / Introduction to OS 1 File Management Objectives Provide I/O support for a variety of storage device

More information

File System Implementation. Sunu Wibirama

File System Implementation. Sunu Wibirama File System Implementation Sunu Wibirama File-System Structure Outline File-System Implementation Directory Implementation Allocation Methods Free-Space Management Discussion File System Structure File

More information

CSE 4482 Computer Security Management: Assessment and Forensics. Computer Forensics: Working with Windows and DOS Systems

CSE 4482 Computer Security Management: Assessment and Forensics. Computer Forensics: Working with Windows and DOS Systems CSE 4482 Computer Security Management: Assessment and Forensics Computer Forensics: Working with Windows and DOS Systems Instructor: N. Vlajic,, Fall 2010 Required reading: Guide to Computer Forensics

More information

bytes per disk block (a block is usually called sector in the disk drive literature), sectors in each track, read/write heads, and cylinders (tracks).

bytes per disk block (a block is usually called sector in the disk drive literature), sectors in each track, read/write heads, and cylinders (tracks). Understanding FAT 12 You need to address many details to solve this problem. The exercise is broken down into parts to reduce the overall complexity of the problem: Part A: Construct the command to list

More information

Image Compression. cs2: Computational Thinking for Scientists.

Image Compression. cs2: Computational Thinking for Scientists. Image Compression cs2: Computational Thinking for Scientists Çetin Kaya Koç http://cs.ucsb.edu/~koc/cs2 koc@cs.ucsb.edu The course was developed with input from: Ömer Eǧecioǧlu (Computer Science), Maribel

More information

CSN08101 Digital Forensics. Module Leader: Dr Gordon Russell Lecturers: Robert Ludwiniak

CSN08101 Digital Forensics. Module Leader: Dr Gordon Russell Lecturers: Robert Ludwiniak CSN08101 Digital Forensics Lecture 8: File Systems Module Leader: Dr Gordon Russell Lecturers: Robert Ludwiniak Objectives Investigative Process Analysis Framework File Systems FAT NTFS EXT2/EXT3 last

More information

File Systems. Martin Děcký. DEPARTMENT OF DISTRIBUTED AND DEPENDABLE SYSTEMS

File Systems. Martin Děcký. DEPARTMENT OF DISTRIBUTED AND DEPENDABLE SYSTEMS File Systems Martin Děcký DEPARTMENT OF DISTRIBUTED AND DEPENDABLE SYSTEMS http://d3s.mff.cuni.cz/ CHARLES UNIVERSITY IN PRAGUE FACULTY OF MATHEMATICS AND PHYSICS MS-DOS FAT History 1977 1996 FAT32 FAT12

More information

Filesystem. Disclaimer: some slides are adopted from book authors slides with permission

Filesystem. Disclaimer: some slides are adopted from book authors slides with permission Filesystem Disclaimer: some slides are adopted from book authors slides with permission 1 Recap Directory A special file contains (inode, filename) mappings Caching Directory cache Accelerate to find inode

More information

FILE SYSTEM IMPLEMENTATION. Sunu Wibirama

FILE SYSTEM IMPLEMENTATION. Sunu Wibirama FILE SYSTEM IMPLEMENTATION Sunu Wibirama File-System Structure Outline File-System Implementation Directory Implementation Allocation Methods Free-Space Management Discussion File-System Structure Outline

More information

Introduction to Network Operating Systems

Introduction to Network Operating Systems File Systems In a general purpose operating system the local file system provides A naming convention A mechanism for allocating hard disk space to files An method for identifying and retrieving files,

More information

BMP file format - Wikipedia

BMP file format - Wikipedia Page 1 of 3 Bitmap file header This block of bytes is at the start of the file and is used to identify the file. A typical application reads this block first to ensure that the file is actually a BMP file

More information

Filesystem. Disclaimer: some slides are adopted from book authors slides with permission 1

Filesystem. Disclaimer: some slides are adopted from book authors slides with permission 1 Filesystem Disclaimer: some slides are adopted from book authors slides with permission 1 Storage Subsystem in Linux OS Inode cache User Applications System call Interface Virtual File System (VFS) Filesystem

More information

8/31/2015 BITS BYTES AND FILES. What is a bit. Representing a number. Technically, it s a change of voltage

8/31/2015 BITS BYTES AND FILES. What is a bit. Representing a number. Technically, it s a change of voltage Personal Computing BITS BYTES AND FILES What is a bit Technically, it s a change of voltage Two stable states of a flip-flop Positions of an electrical switch That s for the EE folks It s a zero or a one

More information

Table 12.2 Information Elements of a File Directory

Table 12.2 Information Elements of a File Directory Table 12.2 Information Elements of a File Directory Basic Information File Name File Type File Organization Name as chosen by creator (user or program). Must be unique within a specific directory. For

More information

,879 B FAT #1 FAT #2 root directory data. Figure 1: Disk layout for a 1.44 Mb DOS diskette. B is the boot sector.

,879 B FAT #1 FAT #2 root directory data. Figure 1: Disk layout for a 1.44 Mb DOS diskette. B is the boot sector. Homework 11 Spring 2012 File Systems: Part 2 MAT 4970 April 18, 2012 Background To complete this assignment, you need to know how directories and files are stored on a 1.44 Mb diskette, formatted for DOS/Windows.

More information

File systems Computer Forensics

File systems Computer Forensics Mag. iur. Dr. techn. Michael Sonntag File systems Computer Forensics E-Mail: sonntag@fim.uni-linz.ac.at http://www.fim.uni-linz.ac.at/staff/sonntag.htm Institute for Information Processing and Microprocessor

More information

UNIX File Systems. How UNIX Organizes and Accesses Files on Disk

UNIX File Systems. How UNIX Organizes and Accesses Files on Disk UNIX File Systems How UNIX Organizes and Accesses Files on Disk Why File Systems File system is a service which supports an abstract representation of the secondary storage to the OS A file system organizes

More information

7: Image Compression

7: Image Compression 7: Image Compression Mark Handley Image Compression GIF (Graphics Interchange Format) PNG (Portable Network Graphics) MNG (Multiple-image Network Graphics) JPEG (Join Picture Expert Group) 1 GIF (Graphics

More information

Simple variant of coding with a variable number of symbols and fixlength codewords.

Simple variant of coding with a variable number of symbols and fixlength codewords. Dictionary coding Simple variant of coding with a variable number of symbols and fixlength codewords. Create a dictionary containing 2 b different symbol sequences and code them with codewords of length

More information

BMP file format. Contents. Pixel storage. The BMP file format, sometimes called bitmap. or DIB file format (for device-independent

BMP file format. Contents. Pixel storage. The BMP file format, sometimes called bitmap. or DIB file format (for device-independent 1 of 7 BMP file format From Wikipedia, the free encyclopedia Windows Bitmap The BMP file format, sometimes called bitmap File extension:.bmp or.dib or DIB file format (for device-independent MIME type:

More information

File system internals Tanenbaum, Chapter 4. COMP3231 Operating Systems

File system internals Tanenbaum, Chapter 4. COMP3231 Operating Systems File system internals Tanenbaum, Chapter 4 COMP3231 Operating Systems Summary of the FS abstraction User's view Hierarchical structure Arbitrarily-sized files Symbolic file names Contiguous address space

More information

NTFS Recoverability. CS 537 Lecture 17 NTFS internals. NTFS On-Disk Structure

NTFS Recoverability. CS 537 Lecture 17 NTFS internals. NTFS On-Disk Structure NTFS Recoverability CS 537 Lecture 17 NTFS internals Michael Swift PC disk I/O in the old days: Speed was most important NTFS changes this view Reliability counts most: I/O operations that alter NTFS structure

More information

File System Case Studies. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

File System Case Studies. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University File System Case Studies Jin-Soo Kim (jinsookim@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Today s Topics The Original UNIX File System FFS Ext2 FAT 2 UNIX FS (1)

More information

File Systems: Fundamentals

File Systems: Fundamentals File Systems: Fundamentals 1 Files! What is a file? Ø A named collection of related information recorded on secondary storage (e.g., disks)! File attributes Ø Name, type, location, size, protection, creator,

More information

Lesson 09: SD Card Interface

Lesson 09: SD Card Interface Lesson 09: SD Card Interface 1. Introduction A Secure Data (SD) card is a data storage device that can be used as massive storage in an embedded system. We will introduce a method to access data on a SD

More information

1.6 Graphics Packages

1.6 Graphics Packages 1.6 Graphics Packages Graphics Graphics refers to any computer device or program that makes a computer capable of displaying and manipulating pictures. The term also refers to the images themselves. A

More information

Computer Systems. Assembly Language for x86 Processors 6th Edition, Kip Irvine

Computer Systems. Assembly Language for x86 Processors 6th Edition, Kip Irvine Computer Systems Assembly Language for x86 Processors 6th Edition, Kip Irvine Chapter 15: Disk Fundamentals Yonsei University Department of Computer Science Jaekyung Kim(kimjk@cs.yonsei.ac.kr) (c) Pearson

More information

File Systems: Fundamentals

File Systems: Fundamentals 1 Files Fundamental Ontology of File Systems File Systems: Fundamentals What is a file? Ø A named collection of related information recorded on secondary storage (e.g., disks) File attributes Ø Name, type,

More information

Hard facts. Hard disk drives

Hard facts. Hard disk drives Hard facts Text by PowerQuest, photos and drawings Vlado Damjanovski 2004 What is a hard disk? A hard disk or hard drive is the part of your computer responsible for long-term storage of information. Unlike

More information

we are here Page 1 Recall: How do we Hide I/O Latency? I/O & Storage Layers Recall: C Low level I/O

we are here Page 1 Recall: How do we Hide I/O Latency? I/O & Storage Layers Recall: C Low level I/O CS162 Operating Systems and Systems Programming Lecture 18 Systems October 30 th, 2017 Prof. Anthony D. Joseph http://cs162.eecs.berkeley.edu Recall: How do we Hide I/O Latency? Blocking Interface: Wait

More information

Introduction. Collecting, Searching and Sorting evidence. File Storage

Introduction. Collecting, Searching and Sorting evidence. File Storage Collecting, Searching and Sorting evidence Introduction Recovering data is the first step in analyzing an investigation s data Recent studies: big volume of data Each suspect in a criminal case: 5 hard

More information

File system internals Tanenbaum, Chapter 4. COMP3231 Operating Systems

File system internals Tanenbaum, Chapter 4. COMP3231 Operating Systems File system internals Tanenbaum, Chapter 4 COMP3231 Operating Systems Architecture of the OS storage stack Application File system: Hides physical location of data on the disk Exposes: directory hierarchy,

More information

we are here I/O & Storage Layers Recall: C Low level I/O Recall: C Low Level Operations CS162 Operating Systems and Systems Programming Lecture 18

we are here I/O & Storage Layers Recall: C Low level I/O Recall: C Low Level Operations CS162 Operating Systems and Systems Programming Lecture 18 I/O & Storage Layers CS162 Operating Systems and Systems Programming Lecture 18 Systems April 2 nd, 2018 Profs. Anthony D. Joseph & Jonathan Ragan-Kelley http://cs162.eecs.berkeley.edu Application / Service

More information

Windows File System. File allocation table (FAT) NTFS - New Technology File System. used in Windows 95, and MS-DOS

Windows File System. File allocation table (FAT) NTFS - New Technology File System. used in Windows 95, and MS-DOS Windows File System Windows File System File allocation table (FAT) used in Windows 95, and MS-DOS NTFS - New Technology File System 2 Key features of NTFS NTFS uses clusters(rather than sectors) as units

More information

FILE SYSTEMS, PART 2. CS124 Operating Systems Fall , Lecture 24

FILE SYSTEMS, PART 2. CS124 Operating Systems Fall , Lecture 24 FILE SYSTEMS, PART 2 CS124 Operating Systems Fall 2017-2018, Lecture 24 2 Last Time: File Systems Introduced the concept of file systems Explored several ways of managing the contents of files Contiguous

More information

Hong Kong Polytechnic University Department of Electronic and Information Engineering. Experiment On DOS File system

Hong Kong Polytechnic University Department of Electronic and Information Engineering. Experiment On DOS File system DOSFS/CC/v1 Hong Kong Polytechnic University Department of Electronic and Information Engineering Experiment On DOS File system Objectives : To study how an OS manages its file system in a floppy disk.

More information

On-disk filesystem structures

On-disk filesystem structures On-disk filesystem structures Jan van Wijk Filesystem on-disk structures for FAT, HPFS, NTFS, JFS, EXTn and ReiserFS Presentation contents Generic filesystem architecture (Enhanced) FAT(32), File Allocation

More information

Exam Number/Code: Exam Name: Computer Hacking. Version: Demo. Forensic Investigator.

Exam Number/Code: Exam Name: Computer Hacking. Version: Demo. Forensic Investigator. Exam Number/Code:312-49 Exam Name: Computer Hacking Forensic Investigator Version: Demo http://www.it-exams.com QUESTION NO: 1 When an investigator contacts by telephone the domain administrator or controller

More information

Older geometric based addressing is called CHS for cylinder-head-sector. This triple value uniquely identifies every sector.

Older geometric based addressing is called CHS for cylinder-head-sector. This triple value uniquely identifies every sector. Review: On Disk Structures At the most basic level, a HDD is a collection of individually addressable sectors or blocks that are physically distributed across the surface of the platters. Older geometric

More information

Lecture S3: File system data layout, naming

Lecture S3: File system data layout, naming Lecture S3: File system data layout, naming Review -- 1 min Intro to I/O Performance model: Log Disk physical characteristics/desired abstractions Physical reality Desired abstraction disks are slow fast

More information

THOMAS RUSSELL, Information Technology Teacher

THOMAS RUSSELL, Information Technology Teacher THOMAS RUSSELL, Information Technology Teacher Historical/Conceptual After installing the hard drive it needs to be partitioned. Partitioning is the process of electronically subdividing the physical hard

More information

File Management 1/34

File Management 1/34 1/34 Learning Objectives system organization and recursive traversal buffering and memory mapping for performance Low-level data structures for implementing filesystems Disk space management for sample

More information

CHAPTER 11: IMPLEMENTING FILE SYSTEMS (COMPACT) By I-Chen Lin Textbook: Operating System Concepts 9th Ed.

CHAPTER 11: IMPLEMENTING FILE SYSTEMS (COMPACT) By I-Chen Lin Textbook: Operating System Concepts 9th Ed. CHAPTER 11: IMPLEMENTING FILE SYSTEMS (COMPACT) By I-Chen Lin Textbook: Operating System Concepts 9th Ed. File-System Structure File structure Logical storage unit Collection of related information File

More information

A file system is a clearly-defined method that the computer's operating system uses to store, catalog, and retrieve files.

A file system is a clearly-defined method that the computer's operating system uses to store, catalog, and retrieve files. File Systems A file system is a clearly-defined method that the computer's operating system uses to store, catalog, and retrieve files. Module 11: File-System Interface File Concept Access :Methods Directory

More information

More HTML. Images and links. Tables and lists. <h1>running in the family</h1> <h2>tonight 9pm BBC One</h2>

More HTML. Images and links. Tables and lists. <h1>running in the family</h1> <h2>tonight 9pm BBC One</h2> More HTML Images and links Tables and lists running in the family tonight 9pm BBC One hurdles legend Colin Jackson traces his family tree to Jamaica in Who Do You Think You Are?

More information

File System Basics. Farmer & Venema. Mississippi State University Digital Forensics 1

File System Basics. Farmer & Venema. Mississippi State University Digital Forensics 1 File System Basics Farmer & Venema 1 Alphabet Soup of File Systems More file systems than operating systems Microsoft has had several: FAT16, FAT32, HPFS, NTFS, NTFS2 UNIX certainly has its share, in typical

More information

Graphics File Formats

Graphics File Formats 1 Graphics File Formats Why have graphics file formats? What to look for when choosing a file format A sample tour of different file formats, including bitmap-based formats vector-based formats metafiles

More information

File Systems Forensics

File Systems Forensics File Systems Forensics Section II. Basic Forensic Techniques and Tools CSF: Forensics Cyber-Security MSIDC, Spring 2017 Nuno Santos Summary! Analysis of file systems! Recovery of deleted files 2 Recall

More information

INFS 2150 / 7150 Intro to Web Development / HTML Programming

INFS 2150 / 7150 Intro to Web Development / HTML Programming XP INFS 2150 / 7150 Intro to Web Development / HTML Programming Working with Graphics in a Web Page 1 Objectives Learn about different image formats Control the placement and appearance of images on a

More information

Standard File Formats

Standard File Formats Standard File Formats Introduction:... 2 Text: TXT and RTF... 4 Grapics: BMP, GIF, JPG and PNG... 5 Audio: WAV and MP3... 8 Video: AVI and MPG... 11 Page 1 Introduction You can store many different types

More information

Data Representation From 0s and 1s to images CPSC 101

Data Representation From 0s and 1s to images CPSC 101 Data Representation From 0s and 1s to images CPSC 101 Learning Goals After the Data Representation: Images unit, you will be able to: Recognize and translate between binary and decimal numbers Define bit,

More information

WINDISK: A File and disk Editor

WINDISK: A File and disk Editor s WINDISK: A File and disk Editor Table of content Introduction Loading a file Saving the edited file DBCS files DBCS language selection SBCS files Disk geometry Print view Printer Setup Save view to file

More information

412 Notes: Filesystem

412 Notes: Filesystem 412 Notes: Filesystem A. Udaya Shankar shankar@cs.umd.edu December 5, 2012 Contents 1 Filesystem interface 2 2 Filesystem implementation 3 3 FAT (mostly from Wikepedia) 5 4 UFS (mostly from Wikepedia)

More information

Frequently asked questions from the previous class survey

Frequently asked questions from the previous class survey CS 370: OPERATING SYSTEMS [FILE SYSTEMS] Shrideep Pallickara Computer Science Colorado State University L28.1 Frequently asked questions from the previous class survey How are files recovered if the drive

More information

Hard Disk Organization. Vocabulary

Hard Disk Organization. Vocabulary Hard Disk Organization Vocabulary Platter: one ceramic plate, covered with magnetizable film where the bits are actually stored. Both sides of a platter can be used. Increasing the number of platters is

More information

Microsoft File Allocation Table

Microsoft File Allocation Table Microsoft File Allocation Table CSC362, Information Security originally appeared in late 1970s for small disks with simple folder structures uses a FAT to index files (naturally) the original FAT- 12 gave

More information

CS 111. Operating Systems Peter Reiher

CS 111. Operating Systems Peter Reiher Operating System Principles: File Systems Operating Systems Peter Reiher Page 1 Outline File systems: Why do we need them? Why are they challenging? Basic elements of file system design Designing file

More information

Chapter 11: File System Implementation. Objectives

Chapter 11: File System Implementation. Objectives Chapter 11: File System Implementation Objectives To describe the details of implementing local file systems and directory structures To describe the implementation of remote file systems To discuss block

More information

Preview. COSC350 System Software, Fall

Preview. COSC350 System Software, Fall Preview File System File Name, File Structure, File Types, File Access, File Attributes, File Operation Directories Directory Operations File System Layout Implementing File Contiguous Allocation Linked

More information

Introduction. Secondary Storage. File concept. File attributes

Introduction. Secondary Storage. File concept. File attributes Introduction Secondary storage is the non-volatile repository for (both user and system) data and programs As (integral or separate) part of an operating system, the file system manages this information

More information

COMP 530: Operating Systems File Systems: Fundamentals

COMP 530: Operating Systems File Systems: Fundamentals File Systems: Fundamentals Don Porter Portions courtesy Emmett Witchel 1 Files What is a file? A named collection of related information recorded on secondary storage (e.g., disks) File attributes Name,

More information

Motivation. Operating Systems. File Systems. Outline. Files: The User s Point of View. File System Concepts. Solution? Files!

Motivation. Operating Systems. File Systems. Outline. Files: The User s Point of View. File System Concepts. Solution? Files! Motivation Operating Systems Process store, retrieve information Process capacity restricted to vmem size When process terminates, memory lost Multiple processes share information Systems (Ch 0.-0.4, Ch.-.5)

More information

File Management. Ezio Bartocci.

File Management. Ezio Bartocci. File Management Ezio Bartocci ezio.bartocci@tuwien.ac.at Cyber-Physical Systems Group Institute for Computer Engineering Faculty of Informatics, TU Wien Motivation A process can only contain a limited

More information

JPEG File Layout and Format

JPEG File Layout and Format Page 1 of 6 JPEG File Layout and Format The File Layout A JPEG file is partitioned by markers. Each marker is immediately preceded by an all 1 byte (0xff). Although t more markers, We will discuss the

More information

A Novel Image Compression Technique using Simple Arithmetic Addition

A Novel Image Compression Technique using Simple Arithmetic Addition Proc. of Int. Conf. on Recent Trends in Information, Telecommunication and Computing, ITC A Novel Image Compression Technique using Simple Arithmetic Addition Nadeem Akhtar, Gufran Siddiqui and Salman

More information

Long-term Information Storage Must store large amounts of data Information stored must survive the termination of the process using it Multiple proces

Long-term Information Storage Must store large amounts of data Information stored must survive the termination of the process using it Multiple proces File systems 1 Long-term Information Storage Must store large amounts of data Information stored must survive the termination of the process using it Multiple processes must be able to access the information

More information

File Systems Management and Examples

File Systems Management and Examples File Systems Management and Examples Today! Efficiency, performance, recovery! Examples Next! Distributed systems Disk space management! Once decided to store a file as sequence of blocks What s the size

More information

There is a general need for long-term and shared data storage: Files meet these requirements The file manager or file system within the OS

There is a general need for long-term and shared data storage: Files meet these requirements The file manager or file system within the OS Why a file system? Why a file system There is a general need for long-term and shared data storage: need to store large amount of information persistent storage (outlives process and system reboots) concurrent

More information

File Systems. CS170 Fall 2018

File Systems. CS170 Fall 2018 File Systems CS170 Fall 2018 Table of Content File interface review File-System Structure File-System Implementation Directory Implementation Allocation Methods of Disk Space Free-Space Management Contiguous

More information

Data Storage. Slides derived from those available on the web site of the book: Computer Science: An Overview, 11 th Edition, by J.

Data Storage. Slides derived from those available on the web site of the book: Computer Science: An Overview, 11 th Edition, by J. Data Storage Slides derived from those available on the web site of the book: Computer Science: An Overview, 11 th Edition, by J. Glenn Brookshear Copyright 2012 Pearson Education, Inc. Data Storage Bits

More information

File Layout and Directories

File Layout and Directories COS 318: Operating Systems File Layout and Directories Jaswinder Pal Singh Computer Science Department Princeton University (http://www.cs.princeton.edu/courses/cos318/) Topics File system structure Disk

More information

Main Points. File layout Directory layout

Main Points. File layout Directory layout File Systems Main Points File layout Directory layout File System Design Constraints For small files: Small blocks for storage efficiency Files used together should be stored together For large files:

More information