Інші об’єкти підсистеми VFS

Структури для VFS – це сама улюблена річ, і в цій підсистемі існують не тільки розглянуті структури, а й ще деякі Кожна зареєстрована файлова система представлена структурою file_system_type, Обєкти цього типу описують файлову систему і її властивості Більш того, кожна точка монтування предстаплена у вигляді структури vfsmount Ця структура містить інформацію про точку монтування, таку […]

Об’єкт inode

Обєкт inode містить всю інформацію, яка необхідна ядру для маніпуляцій з файлами та каталогами У файлових системах в стилі Unix вся інформація просто зчитується з дискових індексів і поміщається в обєкт inode підсистеми VFS Якщо файлові системи не мають індексів, то цю інформацію необхідно отримати з інших дискових структур4

Удосконалення C: покращена конструкція struct

Самою очевидною новою особливістю C + + є конструкція class Конструкція class в C + + це майже те ж саме, що struct, тому я на деякий час відволікся від нової форми запису і поясню, як же C + + покращує конструкцію struct Навіть якщо ви не цікавилися обєктно-орієнтованим программиро-

Об’єкти kobjec t

Серцем моделі представлення пристроїв є обєкти kobject, які представляються за допомогою структури struc t kobject, визначеної у файлі Тип kobjec t аналогічний класу Objec t таких обєктно-орієнтованих мов програмування, як С # і Java Цей тип визначає загальну функціональність, таку як лічильник посилань, імя, покажчик на батьківський обєкт, що дозволяє створювати обєктну ієрархію

Структури даних, пов’язані з процесом

Кожен процес в системі має свої відкриті файли, кореневу файлову систем) поточний робочий каталог, точки монтування і тд Наступні три структури даних повязують разом підсистему VFS і процеси, які виконуються в системі Це структури files_struct, fs_struc t і namespace

Об’єкт dentry

Як вже розповідалося, підсистема VFS представляє каталоги так само, як і файли В імені шляху / bin / vi, і елемент bin, і елемент vi – це файли, тільки bi n – це спеціальний файл, який є каталогом, a vi – це звичайний файл Обєкти файлових індексів служать для представлення обох цих компонентів Незважаючи на […]

Сторінковий кеш

Як випливає з назви, сторінковий кеш (page cache) – це кеш сторінок памяті Відповідні сторінки памяті виходять в результаті читання і запису звичайних файлів на файлових системах, спеціальних файлів блочних пристроїв і файлів, що відображаються в память Таким чином, в сторінковому кеші містяться сторінки памяті, повністю заповнені даними з файлів, до яких тільки що проводився […]

Типи ktyp e

Обєкти kobjec t можуть бути повязані з певним типом, який називається ktype Типи ktype представляються за допомогою структури struc t kobj_type, визначеної у файлі наступним чином struct kobj_type { void (*release)(struct kobject *) struct sysfs_ops       *sysfs_ops struct attribute       **default_attrs

Об’єкт file

Останнім з основних обєктів підсистеми VFS розглянемо обєкт файлу Обєкт File використовується для представлення файлів, які відкриті процесом Коли ми думаємо про підсистему VFS з точки зору простору користувача, то обєкт файлу – це те, що перше приходить в голову Процеси безпосередньо працюють з файлами, а не з суперблоками, індексами або елементами каталогів Не дивно, […]

Дескриптор процесу і структура task structure

Ядро зберігає інформацію про всі процеси в двохзвязної списку, який називається task list3  (Список задач) Кожен елемент цього списку є дескриптором процесу і має тип структури struc t task_struct, яка описана у файлі include / linux / schedh Дескриптор процесу містить всю інформацію про певний процесі