OSDev

для всех
Текущее время: 20 апр 2024, 16:07

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 19 ]  На страницу Пред.  1, 2
Автор Сообщение
 Заголовок сообщения: Re: Разработка собственной ФС
СообщениеДобавлено: 21 июн 2018, 17:56 

Зарегистрирован: 04 мар 2018, 21:34
Сообщения: 55
Himik писал(а):
В принципе, если у тебя на компе установлена Ubuntа и Grub, то его можно использовать для запуска своей ОС. Просто добавить на жёсткий диск второй раздел для своей ОС, и добавить в Grub своё меню.

Попробовал, но толку ноль. Получается нрвый раздел для моей ос это устройство /dev/sda3 пытаюсь его подклбчить, без объявления ошибок, сразу перезагрузка.
Как /dev/sd* так только линукс видит или изначально так задуманно?

Почему этот вопрос встал. На виртуалке, понимаю что она иначе работает, но все подключая к qemu устройства/разделы(незнаю как конкретнее назвать), ос моя видит их. Т.е. фактически эти подключенные устройства и есть разделенные диски на жестком. И вот тут в голове не укладывается, как так то :oops:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка собственной ФС
СообщениеДобавлено: 22 июн 2018, 22:36 

Зарегистрирован: 21 сен 2007, 17:24
Сообщения: 1088
Откуда: Балаково
Ты пытаешься подключить /dev/sda3 к QEMU, или к Ubuntu? И кто именно сразу перезагружается?
К виртуалке лучше не подключать разделы системного диска.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка собственной ФС
СообщениеДобавлено: 22 июн 2018, 22:42 

Зарегистрирован: 04 мар 2018, 21:34
Сообщения: 55
Himik писал(а):
Ты пытаешься подключить /dev/sda3 к QEMU, или к Ubuntu?
в ядре ос подключаюсь. По вашему совету создал раздел, закинул данные в grub своей ос, и пытаюсь запустить, но не видит, если уместно это слово, раздела моего. Из-за этого просто в перезагрузку идёт.

А в виртуальном все нормально, там как бы к виртуальным томам/разделам подключается.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка собственной ФС
СообщениеДобавлено: 22 июн 2018, 23:23 

Зарегистрирован: 21 сен 2007, 17:24
Сообщения: 1088
Откуда: Балаково
Понятно. Сам GRUB ни при каких обстоятельствах в перезагрузку уйти не может. Если получается перезагрузка, значит GRUB успешно загрузил и запустил твоё ядро, а уже оно в свою очередь успешно перезагрузило компьютер.
Судя по всему, разница в архитектуре виртуального и твоего реального компьютера велика. Надо отлаживать, искать проблему в ядре.
Возможно, ядро рассчитано на загрузку с первого раздела, а там оно получается на 3-м.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка собственной ФС
СообщениеДобавлено: 25 июн 2018, 20:58 

Зарегистрирован: 04 мар 2018, 21:34
Сообщения: 55
Himik писал(а):
Понятно. Сам GRUB ни при каких обстоятельствах в перезагрузку уйти не может. Если получается перезагрузка, значит GRUB успешно загрузил и запустил твоё ядро, а уже оно в свою очередь успешно перезагрузило компьютер.

Это понимаю, не правильно выразился. Прошу прощения.

Himik писал(а):
Судя по всему, разница в архитектуре виртуального и твоего реального компьютера велика. Надо отлаживать, искать проблему в ядре. Возможно, ядро рассчитано на загрузку с первого раздела, а там оно получается на 3-м.

Я фактически подключаю разделы по их имени.
Код:
ext2_init("/dev/sda3");//на реально(не работает)
ext2_init("/dev/hda");//в qemu (работает)
//qemu-system-i386 -kernel kernel -hda hda.img - в qemu.sh, где примонтируется виртуальный жесткий.


Правка. Оказалось все тело в драйвере чтения и записи секторов. Где можно наглядный на си найти? Видимо тут и проявилась разница между виртуальной и реальной машиной.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка собственной ФС
СообщениеДобавлено: 26 июн 2018, 20:22 

Зарегистрирован: 21 сен 2007, 17:24
Сообщения: 1088
Откуда: Балаково
Здесь в поле "Поиск" введи "Кулаков", и получишь кучу ссылок по этой тематике. Что-то типа
viewtopic.php?f=7&t=1068&p=12747
viewtopic.php?f=6&t=916&p=10865
А также Владимир Кулаков "Программирование на аппаратном уровне".


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка собственной ФС
СообщениеДобавлено: 27 июн 2018, 19:51 
Аватара пользователя

Зарегистрирован: 16 май 2007, 23:46
Сообщения: 1126
grenders22 писал(а):
Я фактически подключаю разделы по их имени.
Код:
ext2_init("/dev/sda3");//на реально(не работает)
ext2_init("/dev/hda");//в qemu (работает)
//qemu-system-i386 -kernel kernel -hda hda.img - в qemu.sh, где примонтируется виртуальный жесткий.


Из ваших объяснений я ровным счётом ничего не понимаю. Говорите что делаете свою ФС про груб. А в конце указываете что вызываете сервисы из ядра линукса. Соответственно у вас и не работает на реальном железе потому, что ядро надо написать своё.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка собственной ФС
СообщениеДобавлено: 04 июл 2018, 00:49 

Зарегистрирован: 21 сен 2007, 17:24
Сообщения: 1088
Откуда: Балаково
grenders22 писал(а):
Подключил я ext2 и виртуальную, но проблемы возникли с тестирование.

По совету Himik'a обновил до 18.04 свою убунту. Но дела не пошли на лад. Я решил опустит тестирование при помощи qemu, т.к. все попытки создания виртуального тома были тщетны. В итоге встает другой вопрос. Я записал загрузчик на флешку кидаю ядро и cfg. Тут все хорошо. По умолчанию фдешка форматируется только в fat. При попытке форматировать в ext2 получаю зарутованную флешку, при всем этом она становится ext3/ext4. К сути вопроса. Как создать на флешке том который для моей ос? Нужно ли вообще создавать том или достаточно правильно форматнуть? И как именно форматнуть? ЕСли форматнуть то можно задать "домашнюю папку"

Попробовал в Ubuntu 18.04 создать разделы в файле для образа диска, нет ни каких проблем.
Код:
himik@Ubuntu-Z370:~$ fdisk -c VirtualDisk1-flat.vmdk

Добро пожаловать в fdisk (util-linux 2.31.1).
Изменения останутся только в памяти до тех пор, пока вы не решите записать их.
Будьте внимательны, используя команду write.

Устройство не содержит стандартной таблицы разделов.
Создана новая метка DOS с идентификатором 0x7aa827a7.

Команда (m для справки): n
Тип раздела
   p   основной (0 первичный, 0 расширеный, 4 свободно)
   e   расширенный (контейнер для логических разделов)
Выберите (по умолчанию - p): p
Номер раздела (1-4, по умолчанию 1): 1
Первый сектор (2048-2097151, по умолчанию 2048): 2048
Последний сектор + число секторов или + размер{K,M,G,T,P} (2048-2097151, по умолча 2097151

Создан новый раздел 1 с типом 'Linux' и размером 1023 MiB.

Команда (m для справки): a
Выбранный раздел 1
Флаг загрузки раздела 1 включен.

Команда (m для справки): w
Таблица разделов была изменена.
Синхронизируются диски.

himik@Ubuntu-Z370:~$ uname -a
Linux Ubuntu-Z370 4.15.0-24-generic #26-Ubuntu SMP Wed Jun 13 08:44:47 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

После форматирования и примонтирования диска, запускаем sudo nautilus
это даёт нам возможность на правах root делать с директориями и файлами на диске всё что угодно. В принципе там можно создать новую директорию, и поменять "владельца" с root на своё имя, чтобы потом свободно с ней работать.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Разработка собственной ФС
СообщениеДобавлено: 04 июл 2018, 14:47 

Зарегистрирован: 04 мар 2018, 21:34
Сообщения: 55
Himik писал(а):
Попробовал в Ubuntu 18.04 создать разделы в файле для образа диска, нет ни каких проблем.

Видимо у меня в самой убунту проблема было, ибо при sudo apt-get update ошибки лезли. В общем переустановка мне тогдапомогла.
Himik писал(а):
В принципе там можно создать новую директорию, и поменять "владельца" с root на своё имя, чтобы потом свободно с ней работать.

Я и не знал что так можно делать, спасибо за информацию.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 19 ]  На страницу Пред.  1, 2

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB