FILE SYSTEM
# A file system is basically a set of rules used to decide how data is stored and fetched in a storage device, be it a hard drive, flash drive or something else. Like the conventional way we used to store data in our offices in different files, the same method is deployed in computing.
# A defined set of data called a ‘File’ is stored at a specified location in a storage device. If the file system is kicked out of the computing world, all we will be left with is a large chunk of unrecognizable data in our storage media.
# A defined set of data called a ‘File’ is stored at a specified location in a storage device. If the file system is kicked out of the computing world, all we will be left with is a large chunk of unrecognizable data in our storage media.
What Is FAT32 File System?
# Standing for File Allocation Table, it’s the oldest and the most experienced file system in the history of computing.
# It was coded by Marc McDonald following discussions with Microsoft’s co-founder Bill Gates.
# Further utilization of the FAT File System or FAT Structure as it was called referred earlier, was done in Microsoft’s 8080/Z80 platform-based operating system MDOS/MIDAS written by Marc McDonald, who was Microsoft’s first salaried employee.
# In the subsequent years, the FAT file system advanced to FAT12, FAT16 and finally FAT32 that has been synonymous to the word file system when we have to deal external storage media like removable drives.
# The 32-bit File Allocation Table was released in August 1995, with the Windows 95 operating system. It allows you to store files of size up to 4 Gigs and the maximum disk size can go up to 16TB.
# The fatty file system can’t be used to install heavy apps or store large files, that’s why the modern Windows uses a new file system known as NTFS, for which we don’t have to worry about the file size and disk size limits.
# It was coded by Marc McDonald following discussions with Microsoft’s co-founder Bill Gates.
# Further utilization of the FAT File System or FAT Structure as it was called referred earlier, was done in Microsoft’s 8080/Z80 platform-based operating system MDOS/MIDAS written by Marc McDonald, who was Microsoft’s first salaried employee.
# In the subsequent years, the FAT file system advanced to FAT12, FAT16 and finally FAT32 that has been synonymous to the word file system when we have to deal external storage media like removable drives.
# The 32-bit File Allocation Table was released in August 1995, with the Windows 95 operating system. It allows you to store files of size up to 4 Gigs and the maximum disk size can go up to 16TB.
# The fatty file system can’t be used to install heavy apps or store large files, that’s why the modern Windows uses a new file system known as NTFS, for which we don’t have to worry about the file size and disk size limits.
What Is NTFS File System?
# Another Microsoft proprietary file system was introduced in 1993 with their Windows NT 3.1 coming into existence.
# It offers inexhaustible file size limits and you won’t run out of it anytime soon.
# IBM made HPFS (High Performance File System) which was used in the OS/2 operating system and the Redmond created NTFS v1.0 released with Windows NT 3.1.
# The NTFS or New Technology File System offers a theoretical file size of 16 EB (Exa Byte) – 1 KB which is 18,446,744,073,709,550,592 bytes.
# NTFS v3.1 was launched with Microsoft’s Windows XP and it hasn’t been changed much since then, although numerous additions like partition shrinking, self-healing, and NTFS Symbolic links have been added.
# Also, the implemented capacity of NTFS file system is only 256 TB out the whopping 16 EB – 1 KB which was done with the launch of Windows 8, for which Microsoft ended support.
# Other notable features include reparse points, sparse file support, disk usage quotas, distributed link tracking, and file-level encryption.
# The NTFS file system supports backward compatibility with the previous versions and it’s a journaling file system that proves to be an important tool when it comes to reviving a corrupt file system. It maintains a Journal, a data structure which keeps track of any potential modifications to the file system and is used to recover the file system.
# This file system is supported by Windows XP and later versions. Apple’s Mac OSX provides read-only support to an NTFS-formatted drive and only a few Linux variants are able to provide write support for NTFS.
# It offers inexhaustible file size limits and you won’t run out of it anytime soon.
# IBM made HPFS (High Performance File System) which was used in the OS/2 operating system and the Redmond created NTFS v1.0 released with Windows NT 3.1.
# The NTFS or New Technology File System offers a theoretical file size of 16 EB (Exa Byte) – 1 KB which is 18,446,744,073,709,550,592 bytes.
# NTFS v3.1 was launched with Microsoft’s Windows XP and it hasn’t been changed much since then, although numerous additions like partition shrinking, self-healing, and NTFS Symbolic links have been added.
# Also, the implemented capacity of NTFS file system is only 256 TB out the whopping 16 EB – 1 KB which was done with the launch of Windows 8, for which Microsoft ended support.
# Other notable features include reparse points, sparse file support, disk usage quotas, distributed link tracking, and file-level encryption.
# The NTFS file system supports backward compatibility with the previous versions and it’s a journaling file system that proves to be an important tool when it comes to reviving a corrupt file system. It maintains a Journal, a data structure which keeps track of any potential modifications to the file system and is used to recover the file system.
# This file system is supported by Windows XP and later versions. Apple’s Mac OSX provides read-only support to an NTFS-formatted drive and only a few Linux variants are able to provide write support for NTFS.
What Is exFAT File System?
# The exFAT (Extended FAT) is another Microsoft proprietary file system which finds its use in ball games where the FAT32 feels out of breath.
# Most of the modern digital cameras use exFAT.
# High capacity SDXC memory cards are now pre-formatted with the exFAT, as it is lightweight in contrast to NTFS and supports file size more of than 4 GB.
# So, if you have an exFAT SD card you will have no issues while copying full-length HD movies on it which is not the case with FAT32.
# A FUSE-based version of the exFAT file system, named exfat-fuse, provides read/write operations for many Linux distributions including FreeBSD.
# Launched in 2006, it has the same 16 EB file size limit as NTFS, but it is way lighter as it doesn’t contain many of the extra features that the latter has.
# Talking about the compatibility, full read and write support is provided by Mac, Android, and Windows operating system but for Linux distributions, the appropriate software facilitates the support.
# Most of the modern digital cameras use exFAT.
# High capacity SDXC memory cards are now pre-formatted with the exFAT, as it is lightweight in contrast to NTFS and supports file size more of than 4 GB.
# So, if you have an exFAT SD card you will have no issues while copying full-length HD movies on it which is not the case with FAT32.
# A FUSE-based version of the exFAT file system, named exfat-fuse, provides read/write operations for many Linux distributions including FreeBSD.
# Launched in 2006, it has the same 16 EB file size limit as NTFS, but it is way lighter as it doesn’t contain many of the extra features that the latter has.
# Talking about the compatibility, full read and write support is provided by Mac, Android, and Windows operating system but for Linux distributions, the appropriate software facilitates the support.
DBMS
# DBMS contains information about a particular enterprise
# Collection of interrelated data
# Set of programs to access the data
# An environment that is both convenient and efficient to use
# Database Applications:
>> Banking: all transactions
>> Airlines: reservations, schedules
>> Universities: registration, grades
>> Sales: customers, products, purchases
>> Online retailers: order tracking, customized recommendations
>> Manufacturing: production, inventory, orders, supply chain
>> Human resources: employee records, salaries, tax deductions
>> Databases touch all aspects of our lives
# In the early days, database applications were built directly on top of file systems
# Drawbacks of using file systems to store data:
>> Data redundancy and inconsistency , Multiple file formats, duplication of information in different files
>> Difficulty in accessing data Need to write a new program to carry out each new task
>> Data isolation — multiple files and formats
>> Integrity problems Integrity constraints (e.g. account balance > 0) become “buried” in program code rather than being stated explicitly
>> Hard to add new constraints or change existing ones
>> Atomicity of updates : Failures may leave database in an inconsistent state with partial updates carried out
Example: Transfer of funds from one account to another should either complete or not happen at all Concurrent access by multiple users Concurrent accessed needed for performance
>> Uncontrolled concurrent accesses can lead to inconsistencies–Example: Two people reading a balance and updating it at the same time
>> Security problems : Hard to provide user access to some, but not all, data
# Database systems offer solutions to all the above problems.
# Levels of Abstraction
>> Physical level: describes how a record (e.g., customer) is stored.
>> Logical level: describes data stored in database, and the relationships among the data.
# View level: A way to hide:
(a) details of data types and
(b) information (such as an employee’s salary) for security purposes.
# View of Data: An architecture for a database system
# Instances and Schemas: Similar to types and variables in programming languages
# Schema– the logical structure of the database
>> Example: The database consists of information about a set of customers and accounts and the relationship between them)
>> Physical schema: database design atthe physical level
>> Logical schema: database design atthe logical level
# Instance– the actual content of the database at a particular point in time, Analogous to the value of a variable.
# Physical Data Independence– the ability to modify the physical schema without changing the logical schema.
>> Applications depend on the logical schema
>> In general, the interfaces between the various levels and components should be well defined so that changes in some parts do not seriously influence others.
# Data Models: A collection of tools for describing
>> Data
>> Data relationships
>> Data semantics
>> Data constraints
# Relational model
>> Entity- Relationship data model (mainly for database design)
>> Object- based data models (Object-oriented and Object-relational)
>> Semistructured data model (XML)
# Other older models:
>> Network model
>> Hierarchical model
# Data Manipulation Language (DML)
Language for accessing and manipulating the data organized by the appropriate data model
>> DML also known as query language
# Two classes of languages
>> Procedural – user specifies what data is required and how to get those data
>> Declarative (nonprocedural) – user specifies what data is required without specifying how to get those data
>> SQL is the most widely used query language
# Data Definition Language (DDL)
>> DDL compiler generates a set of tables stored in a data dictionary
# Data dictionary contains metadata (i.e., data about data)
>> Database schema
>> Integrity constraints
# Collection of interrelated data
# Set of programs to access the data
# An environment that is both convenient and efficient to use
# Database Applications:
>> Banking: all transactions
>> Airlines: reservations, schedules
>> Universities: registration, grades
>> Sales: customers, products, purchases
>> Online retailers: order tracking, customized recommendations
>> Manufacturing: production, inventory, orders, supply chain
>> Human resources: employee records, salaries, tax deductions
>> Databases touch all aspects of our lives
# In the early days, database applications were built directly on top of file systems
# Drawbacks of using file systems to store data:
>> Data redundancy and inconsistency , Multiple file formats, duplication of information in different files
>> Difficulty in accessing data Need to write a new program to carry out each new task
>> Data isolation — multiple files and formats
>> Integrity problems Integrity constraints (e.g. account balance > 0) become “buried” in program code rather than being stated explicitly
>> Hard to add new constraints or change existing ones
>> Atomicity of updates : Failures may leave database in an inconsistent state with partial updates carried out
Example: Transfer of funds from one account to another should either complete or not happen at all Concurrent access by multiple users Concurrent accessed needed for performance
>> Uncontrolled concurrent accesses can lead to inconsistencies–Example: Two people reading a balance and updating it at the same time
>> Security problems : Hard to provide user access to some, but not all, data
# Database systems offer solutions to all the above problems.
# Levels of Abstraction
>> Physical level: describes how a record (e.g., customer) is stored.
>> Logical level: describes data stored in database, and the relationships among the data.
# View level: A way to hide:
(a) details of data types and
(b) information (such as an employee’s salary) for security purposes.
# View of Data: An architecture for a database system
# Instances and Schemas: Similar to types and variables in programming languages
# Schema– the logical structure of the database
>> Example: The database consists of information about a set of customers and accounts and the relationship between them)
>> Physical schema: database design atthe physical level
>> Logical schema: database design atthe logical level
# Instance– the actual content of the database at a particular point in time, Analogous to the value of a variable.
# Physical Data Independence– the ability to modify the physical schema without changing the logical schema.
>> Applications depend on the logical schema
>> In general, the interfaces between the various levels and components should be well defined so that changes in some parts do not seriously influence others.
# Data Models: A collection of tools for describing
>> Data
>> Data relationships
>> Data semantics
>> Data constraints
# Relational model
>> Entity- Relationship data model (mainly for database design)
>> Object- based data models (Object-oriented and Object-relational)
>> Semistructured data model (XML)
# Other older models:
>> Network model
>> Hierarchical model
# Data Manipulation Language (DML)
Language for accessing and manipulating the data organized by the appropriate data model
>> DML also known as query language
# Two classes of languages
>> Procedural – user specifies what data is required and how to get those data
>> Declarative (nonprocedural) – user specifies what data is required without specifying how to get those data
>> SQL is the most widely used query language
# Data Definition Language (DDL)
>> DDL compiler generates a set of tables stored in a data dictionary
# Data dictionary contains metadata (i.e., data about data)
>> Database schema
>> Integrity constraints
ROUTER
# Computer device that determines the best path out of the available path for a transmission.
# 2 main Softwares used in it:
1. Operating System
2. Routing Protocol
# Router uses Logical and Physical Address to connect two or more logically separate network.
# It converts large network into logical network segments or Sub Network.
# Each Sub Network has its own Logical Address.
It looks like the separation made these Sub Network secluded but they can still access other network also and can exchange data when needed.
# The Packet contains:
1. Physical Device Address and
2. Logical Network Address.
# Router can used to connect identical networks as well as network of different types of hardware.
# Bridges are used in LAN only whereas Router used in LAN, WAN, FDDI and others.
Compare to one giant LAN It would be good to use router supported Network.
BENEFITS
# 2 main Softwares used in it:
1. Operating System
2. Routing Protocol
# Router uses Logical and Physical Address to connect two or more logically separate network.
# It converts large network into logical network segments or Sub Network.
# Each Sub Network has its own Logical Address.
It looks like the separation made these Sub Network secluded but they can still access other network also and can exchange data when needed.
# The Packet contains:
1. Physical Device Address and
2. Logical Network Address.
# Router can used to connect identical networks as well as network of different types of hardware.
# Bridges are used in LAN only whereas Router used in LAN, WAN, FDDI and others.
Compare to one giant LAN It would be good to use router supported Network.
BENEFITS
1. SECURITY: LAN uses broadcast mode and so security is less there. Though only the destinational computer can read data but the data has to go through whole network till it reached to the destination that makes LAN connection vunerable in case of security. Using Router can increase the security bu making whole LAN into segement.
2. RELIABILITY: If one network goes down the router isolates the affected network and send the message through another route.
3. PERFORMANCE ENHANCEMENT: It splits the network and so the traffic on those.
4. NETWORKING RANGE: In some network cable length can’t eceed 1000 meters. A Router can used there to increase the length.
TYPES OF ROUTERS
2. RELIABILITY: If one network goes down the router isolates the affected network and send the message through another route.
3. PERFORMANCE ENHANCEMENT: It splits the network and so the traffic on those.
4. NETWORKING RANGE: In some network cable length can’t eceed 1000 meters. A Router can used there to increase the length.
TYPES OF ROUTERS
CISCO is the major manufacturer.
1. Edge Router: Routes data between LAN and ATM network. ATM (Asynchronous Transfer Mode)
They are placed at the edge of the ISP network.
2. Subscribe Edge Router: Used in Organization.
It uses EBGP Protocol also called Extended Border Gateway Protocol.
3. Inter-provided Border Router: Interconnect the Internet Service Provider.
BGP Protoco used here.
4. Core Router: When Router is used in LAN is called Core Router.
uses BGP protocol.
5. SOHO Router: used to connect network in small geographical area.
6. Wired and Wireless Router: Used in Office.
Some Wireless Routers use Firewall functions also.
BRAND IN ROUTERS
1. Edge Router: Routes data between LAN and ATM network. ATM (Asynchronous Transfer Mode)
They are placed at the edge of the ISP network.
2. Subscribe Edge Router: Used in Organization.
It uses EBGP Protocol also called Extended Border Gateway Protocol.
3. Inter-provided Border Router: Interconnect the Internet Service Provider.
BGP Protoco used here.
4. Core Router: When Router is used in LAN is called Core Router.
uses BGP protocol.
5. SOHO Router: used to connect network in small geographical area.
6. Wired and Wireless Router: Used in Office.
Some Wireless Routers use Firewall functions also.
BRAND IN ROUTERS
CISCO, NET GEAR, LinkSys and D-Link.
Speed: 802.11a, 802.11g, 802.11n etc.
WORKING OF ROUTERS
Speed: 802.11a, 802.11g, 802.11n etc.
WORKING OF ROUTERS
# It is an Inter connectivity device.
# Router visualize the network path.
# The paths may be:
Electric Network.
Transport Network or
Phone Network.
# Routing Control Plane: Part of Router architect that concerned with drawing the network map.
# Routing Forwarding Plane: Part of the Router architect that decided hat to do with the packet arriving on an inbound Interface.
# Convergence: is the process of agreement, by all routers on OPTIMAL ROUTES. When a network event cause routes to fail or become unavailable the Convergence method is used to find out the route.
# Router visualize the network path.
# The paths may be:
Electric Network.
Transport Network or
Phone Network.
# Routing Control Plane: Part of Router architect that concerned with drawing the network map.
# Routing Forwarding Plane: Part of the Router architect that decided hat to do with the packet arriving on an inbound Interface.
# Convergence: is the process of agreement, by all routers on OPTIMAL ROUTES. When a network event cause routes to fail or become unavailable the Convergence method is used to find out the route.
ASCII vs EBCDIC
ASCII American Standard Code for Information Interchange also known as ANSI X3.4
7 bit code uses 8th bit as most significant bit for error checking.
Text files stored in ASCII format are sometimes called ASCII files. Text editors and word processors are usually capable of storing data in ASCII format, although ASCII format is not always the default storage format. Most data files, particularly if they contain numeric data, are not stored in ASCII format. Executable programs are never stored in ASCII format.
65 – 90 : A – Z
97 – 122 : a – z
48 – 57 : 0 – 9
EBCDIC Extended Binary Coded Decimal Interchange Code (pronounced either “ehb-suh-dik” or “ehb-kuh-dik”) is a binary code for alphabetic and numeric characters that IBM developed for its larger operating systems.
# Character Set used by IBM Mainframe.
# Use Full 8 bit code so there is no parity checking bit (as in ASCII).
# Wider range of control characters than ASCII.
0000 0000 to 0011 1111 : CONTROL CHARACTER
0100 0000 to 0111 1111 : PUNCTUATION CHARACTER
1000 0000 to 1011 1111 : LOWERCASE CHARACTER
1100 0000 to 1111 1111 : UPPERCASE CHARACTER AND NUMBERS
Why EBCDIC is better than ASCII?
# Easier to use on Punched Cards.
# Include the ⊄ (cent sign) that ASCII doesn’t.
Why ASCII is better than EBCDIC?
# Writing Code; Where EBCDIC is a mess.
# Most of the World runs on ASCII.
Standard version of EBCDIC does not have [ ] \ { } ^ ~ |.
# EBCDIC’s some variants are incompatible with other variants of EBCDIC.
Documentation is very hard on EBCDIC.
7 bit code uses 8th bit as most significant bit for error checking.
Text files stored in ASCII format are sometimes called ASCII files. Text editors and word processors are usually capable of storing data in ASCII format, although ASCII format is not always the default storage format. Most data files, particularly if they contain numeric data, are not stored in ASCII format. Executable programs are never stored in ASCII format.
65 – 90 : A – Z
97 – 122 : a – z
48 – 57 : 0 – 9
EBCDIC Extended Binary Coded Decimal Interchange Code (pronounced either “ehb-suh-dik” or “ehb-kuh-dik”) is a binary code for alphabetic and numeric characters that IBM developed for its larger operating systems.
# Character Set used by IBM Mainframe.
# Use Full 8 bit code so there is no parity checking bit (as in ASCII).
# Wider range of control characters than ASCII.
0000 0000 to 0011 1111 : CONTROL CHARACTER
0100 0000 to 0111 1111 : PUNCTUATION CHARACTER
1000 0000 to 1011 1111 : LOWERCASE CHARACTER
1100 0000 to 1111 1111 : UPPERCASE CHARACTER AND NUMBERS
Why EBCDIC is better than ASCII?
# Easier to use on Punched Cards.
# Include the ⊄ (cent sign) that ASCII doesn’t.
Why ASCII is better than EBCDIC?
# Writing Code; Where EBCDIC is a mess.
# Most of the World runs on ASCII.
Standard version of EBCDIC does not have [ ] \ { } ^ ~ |.
# EBCDIC’s some variants are incompatible with other variants of EBCDIC.
Documentation is very hard on EBCDIC.