Перейти к содержимому
  • 0
anton3312578859

Вопрос по разработке ОС

Вопрос

Можно ли сделать директорию типа proc в линуксе, только под OpenOS. Типа что бы все процессы хранились там.
Для справки, вот статья про директорию proc:

 

На самом деле папка proc - это совсем необычная папка. Ее не существует на диске или даже в оперативной памяти, как это делается в /tmp. Все поддиректории, файлы и хранящаяся в них информация генерируется ядром на лету, как только вы ее запрашиваете. Но работает все настолько прозрачно, что вы не заметите никакой разницы между обычной файловой системой и proc, если откроете ее с помощью файлового менеджера.

Только папка proc linux содержит файлы нулевого размера. А также у каждого файла будет текущая дата создания. Например файл /proc/meminfo будет содержать разные данные при каждом открытии, поскольку использование памяти постоянно колеблется.

С помощью такой системы разработчики придерживаются главной концепции Unix - все есть файл. Все файлы доступны для редактирования любым редактором, и все они в простом текстовом формате, но для того чтобы проанализировать весь каталог вам понадобятся права суперпользователя. Почти все файлы доступны только для чтения, с них мы можем только получать информацию. Но есть и доступные для записи, в частности это /proc/sys с помощью которого вы можете настраивать различные параметры ядра.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Рекомендуемые сообщения

  • 0

В OpenOS такое сплошь да рядом, виртуальные устройства, API компонентов, все в виде файлов.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0
15 минут назад, Doob сказал:

В OpenOS такое сплошь да рядом, виртуальные устройства, API компонентов, все в виде файлов.

Так возможно ли сделать папку proc?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0
7 часов назад, anton3312578859 сказал:

Так возможно ли сделать папку proc?

Если ты пишешь свою ОС - ты пишешь и свой API к файловым системам.

Ничего не мешает тебе сделать сколько угодно и каких угодно виртуальных ФС, или папок, или файлов.

 

Для примера - тут где-то валялась программа, которая позволяла объединять жесткие диски в один, с тем чтобы обойти лимит на максимальный размер диска, и иметь возможность работать с файлами по 4+ мегабайт. Она как раз создает виртуальную ФС над стандартной.

В реальности файл разбит на множество частей - а программы которые с ним работают этого не замечают.

Так же этого файла в принципе может не существовать, и он может генериться системой на лету - и программы тоже не заметят.

 

Короче не вижу препятствий.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0

Я конечно с линуксом на вы, но вроде там есть команда ln которая позволяет создать типа ссылку на оригинальный файл. Если циклом прогнать по всем папкам эту команду то думаю вы получите то что хотите.

P.S. помидорами не кидать я реально с линуксом мало знаком.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0
27 минут назад, Asior сказал:

Я конечно с линуксом на вы, но вроде там есть команда ln которая позволяет создать типа ссылку на оригинальный файл. Если циклом прогнать по всем папкам эту команду то думаю вы получите то что хотите.

По идее достаточно одной команды ln для ссылки на всю директорию /proc. Но зачем? Если я верно понял вопрос, цель заключается не в получении доступа к параметрам хостовой системы на Linux, а в том, чтобы сделать OpenOS ещё более похожей на Linux.

 

Не понятно лишь, с какой целью. Дополнительная функциональность точно поднимет требования к оперативной памяти, но насколько оправданы эти траты?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0

Ну, devfs в OpenOS уже давно есть. А это то же самое по своей сути. Если сделать таблицу, в которой заимплементить все функции прокси filesystem, её можно будет примонтировать и использовать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вы вставили отформатированное содержимое.   Удалить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.


×
×
  • Создать...