CS401 Study Guide
This study guide will help you get ready for the final exam. It discusses the key topics in each unit, walks through the learning outcomes, and lists important vocabulary terms. It is not meant to replace the course materials!
Unit 7: File System
7a. Describe a file system and its purpose
- What is a computer file system?
- What is a common and well-known file system in use today?
A computing file system controls how data is stored and retrieved. File systems usually consist of files separated into groups called directories. Directories can contain files or additional directories. Today, the most commonly used file system with Windows is NTFS (new technology file system).
Organizing computing information is critical to the proper operation of computers. A file system tells and helps a computer keep and know where all the information it needs to run is located, or should be. NTFS is a common Windows file system platform.
7b. Discuss various file allocation methods
- Why do we need a file system?
- What methods exist for creating a file system?
Without a file system, data placed in a storage medium would simply be one large body of data with no way to tell where one piece of data stops and the next begins. This would make modern computing impossible. By separating data and giving each piece its own address within the file system, necessary files can be isolated and identified quickly and efficiently.
There are many different kinds of file systems. Each one has a different structure and logic, and different properties of speed, flexibility, security, size, and more.
Methods of storing data include storing it on a local data storage device or providing file access via a network protocol. Some file systems are "virtual", which means files are computed on request or mapped in a different file system.
7c. Explain disk allocation and associated algorithms
- What is disk allocation?
- What are methods for disk allocation?
Disk allocation determines how disk blocks are allocated for files. Three methods of disk allocation include contiguous allocation, linked allocation, and indexed allocation.
Effective disk allocation algorithms are important for speed, efficiency, and response time. Effective algorithms, such as the three mentioned here, allow for the efficient use of disk space and fast access to file blocks required for computing operation.
Unit 7 Vocabulary
- Contiguous allocation
- Disk allocation
- File blocks
- File blocks
- File system
- Indexed allocation
- Linked allocation