1.1: Все є файлом!
- Page ID
- 34567
Все є файлом!
Часто цитується принцип Unix-подібних систем, таких як Linux або BSD - це все, що є файлом.
Уявіть собі файл в контексті чогось знайомого на зразок текстового процесора. Є дві основні операції, які ми могли б використовувати на цьому уявному файлі обробки текстів:
- Прочитайте його (існуючі збережені дані з текстового процесора).
- Напишіть в нього (нові дані від користувача).
Розглянемо деякі загальні речі, прикріплені до комп'ютера, і те, як вони пов'язані з нашими основними файловими операціями:
- Екран
- Клавіатура
- Принтер
- КОМПАКТ-ДИСК
Екран і принтер схожі на файл лише для запису, але замість того, щоб зберігатися як біти на диску, інформація відображається у вигляді крапок на екрані або рядків на сторінці. Клавіатура схожа на файл лише для читання, з даними, що надходять від натискань клавіш, наданих користувачем. CD-ROM схожий, але замість того, щоб випадково надходити від користувача дані зберігаються безпосередньо на диску.
Таким чином, концепція файлу є гарною абстракцією або раковини для або джерела даних. Таким чином, це відмінна абстракція всіх пристроїв, які можна прикріпити до комп'ютера. Ця реалізація є великою силою UNIX і очевидна у всьому дизайні всієї платформи. Це одна з фундаментальних ролей операційної системи, щоб забезпечити цю абстракцію апаратного забезпечення програмісту.
Це, мабуть, не надто багато, щоб сказати, що абстракція є основною концепцією, яка лежить в основі всіх сучасних обчислень. Ніхто не може зрозуміти все, починаючи від проектування сучасного призначеного для користувача інтерфейсу і закінчуючи внутрішньою роботою сучасного процесора, а тим більше будувати все це самі. Для програмістів абстракції - це загальна мова, яка дозволяє нам співпрацювати та винаходити.
Навчання орієнтуватися по абстракціях дає більше розуміння того, як використовувати абстракції найкращими та найбільш інноваційними способами. У цій книзі ми стурбовані абстракціями на найнижчих шарах; між додатками та операційною системою та операційною системою та обладнанням. Над цим лежать ще багато шарів, кожен гідний своїх книг. У міру просування цих розділів ви, сподіваємось, отримаєте деяке розуміння абстракцій, представлених сучасною операційною системою.