LINUX.ORG.RU

Написание ОС на базе Linux/Unix для своей школы

 , , все свое


1

2

Я хочу написать свою ОС. Только реально свою, а не повторить подвиг Дениса Попова. Думал, как это лучше сделать. Вы бы как сделали - взяли бы за основу ядро Linux, или все свое (в том числе и Shell, ФС, ядро)? По языкам - ядро + бутлоадер = ассемблер, остальное - С.

★★★★★

Ответ на: комментарий от DeadEye

чтобы их потом за задницу не взяли

А у тебя папа из ФСБ?

shamaz
()

RADDyomin, если реально нужна будет помощь в системном программировании можешь кастовать.

Kernel Hacking, osdev - достойные хобби. Сборка дистрибутива тоже вещь хорошая, но магии в этом меньше.

tlx ★★★★★
()
Ответ на: комментарий от DeadEye

Так ядра и ОС пилят уже 60 лет,
а ты решил сделать компиляцию текущих идей.
Т.е. заделаться фабрикатором. Это не плохо.

Но спрос ты так и не изучил.
Коммерческие компашки не всегда вытягивают поддержку широкого спектра оборудования, а ты один - на всю школу замахнулся.

Deleted
()
Ответ на: комментарий от Deleted

Да нет. Просто у меня в этом поддержка есть. От учителя информатики учителя русского языка. Подсадить школу на Линь. Причем результативно так.

DeadEye ★★★★★
() автор топика
Ответ на: комментарий от DeadEye

Просто у меня в этом поддержка есть. От учителя информатики учителя русского языка. Подсадить школу на Линь.

Тогда и думать нечего о написании своей ОС и даже о LFS/BLFS. Есть школьный Альтлинукс. Уже сделанный и даже худо-бедно чем-то методически обеспеченный. Берёшь, ставишь, выписываешь проблемы, возникающие конкретно по твоей школе и конкретно по твоему оборудованию. Решаешь их. :) Только будь готов, что проблем будет дофига и больше. «А чем заменить программу NNN», «а к нашему принтеру драйверов нет», «а у нас все документы свёрстаны в MSO, и в других офисах вёрстка разваливается», и так далее. Делаешь в рамках локальной сетки свой репозитарий пакетов с Lazarus и «парой приложений собственной сборки».

Тебе работы невпроворот будет. Заодно пообщаешься с разработчиками. А самое плохое, если тебе в один прекрасный момент всё надоест, ты бросишь свою затею, а люди останутся с ощущением «какое говно этот ваш линукс». Очень надеюсь, что этого не произойдёт.

А LFS-ом можешь заняться как-нибудь при наличии свободного времени. Только не привязывай его к своей идее линуксофикации школы. И без него проблем хватит.

Желаю удачи. Серьёзно.

hobbit ★★★★★
()
Последнее исправление: hobbit (всего исправлений: 1)

хоспаде, ты для начала генту собери или слаку поюзай, убунтовод... в школе он с преподом на пару ось собрался писать. Да Вы LFS до пригодного школе состояния будете до твоего выпускного пилить, и то не факт, что успеете. зы, как поменяешь обои в бубунте, не забудь антивирь на баше и копирайты ;)

foreigner_web
()
Ответ на: далее от DeadEye

Я вот и думаю - что лучше, просто сделать что-то на базе Линя, либо делать все свое.

Для начала изучи как работают уже имеющиеся небольшие ОС, научись писать на ассемблере под DOS (есть freeDOS в виртуалке или DOSbox и fasm. рекомендую) и под Unix. Посмотри исходники того же FreeDOS или KolibriOS.

Судя по твоему вопросу ты сам ещё не знаешь, чего хочешь — поэтому действительно, LFS — неплохой вариант. с ним ты изучишь структуру хотя бы одной настоящей полноценной ОС.

Я считаю что в ОС самое интересное — это как раз ядро, поэтому брать Linux смысла нет, так как кроме него только юзерспейс, которого и так множество вариантов (например toolbox под Android и busybox — упрощённые, GNU — полноценный). Не советую тебе делать велосипедный юзерспейс для линукса с нуля, это бессмысленно и мало что тебе даст — лучше ограничься плагином для бизибокса каким-нбидуь, реализующим утилиту, которой в нём ещё нет и пошли разработчикам. Если они примут её в официальный релиз — считай достиг цели. Хотя для тренировки можешь конечно написать на C аналоги cat, dc и ed ещё до этого.

Xenius ★★★★★
()
14 марта 2015 г.
Ответ на: Прр от anonymous

Ff

anonymous
()

тертическая разработка ядра ОС - 1 чел.
реализация прототипа в коде 1-2 человека.

промышленный запуск ОС общего назначения - коллектив аффтарафф и 2.000.000.000 долларов на счету у этого коллектиффчика.

Deleted
()
Последнее исправление: RTP (всего исправлений: 1)

Ради опыта и интереса, вполне можно написать нечто мелкое, повторюсь ради опыта и интереса. Писать полностью ОС, для публики, смысла нет, если ты не корпорация уровня MS или не целое сообщество Open Source.

n0044h
()
Ответ на: комментарий от n0044h

не целое сообщество Open Source.

на донатах *.000.000 от корпораций

Deleted
()
Ответ на: комментарий от Zhbert

Не совсем верно. Чисто ядро написать как раз таки в одиночку реально. И оно даже запуститься на компьютере автора. Также реально написать файловый менеджер, простой текстовый редактор и оконный менеджер.

Проблемы начнуться, когда автор захочет 3D-ускорение, поддержку USB, сети, вебкамер и кучу остальной периферии. И быть может поддержку своей периферии глючно и бажно он ещё реализует, но ведь мир не ограничивается одним единственным компьютером. А потом ТС вспомнит, что софт это не только панелька и текстовый редактор, но ещё и офисные пакеты, сервера, IM-клиенты, браузеры и ещё куча всего остального.

То есть имея несколько лет вполне можно написать ОС для одного компьютера с одним пользователем. Но не более того. Нужна огромная команда разработчиков. И всё равно Linux/Windows будет лучше.

KivApple ★★★★★
()
Последнее исправление: KivApple (всего исправлений: 2)

DeadEye, мой тебе совет, потрать свободное время на что-нибудь более полезное: займись изучением языка программирования, даже хотя бы тем же Octave совместимого с Matlab.

grem ★★★★★
()

Я хочу написать свою ОС.

для своей школы

Учился бы лучше !!!

robot12 ★★★★★
()

OS это ядро. Как ты собрался писать «своё» на основе чужого? Сколько процентов ядра линукса ты готов переписать с нуля?

anonymous
()
Ответ на: комментарий от true_admin

«Ядро линукса» без драйверов и опциональных подсистем это сотни тысяч строк (а может и миллионы).

Значит ты выкинул недостаточно драйверов и опциональных подсистем, либо в том, что осталось много кода нужно для поддержки этих самых драйверов и подсистем.

Я писал учась в школе за пару месяцев многозадачную однопользовательскую недоос, которая позволяла загрузиться с дискеты и показать «Командную строку» в текстовом режиме. Из этой командной строки можно было смотреть содержимое файлов и папок дискеты, список процессов, запускать с дискеты исполняемые файлы (разумеется, в моём формате), можно было переключаться между запущенными приложениями (у каждого была своя консоль) с помощью сочетания клавиш.

Только вот вряд ли эта ОС была кому-то нужна без поддержки каких-либо устройств кроме дискет и текстового режима и единственным прикладным приложением - командной строкой. Когда я начал писать драйвер мыши всё начало необъяснимо падать и я забил.

KivApple ★★★★★
()

начни хоть с контролеров для ARM, от 100 MHz и потом выше и выше, можно самому составить плату или купить готовую, там уже писать.

res2500
()

Я хочу написать свою ОС

Пиши

Только реально свою, а не повторить подвиг Дениса Попова

Так бери и пиши

Думал, как это лучше сделать

начни с ядра

Вы бы как сделали - взяли бы за основу ядро Linux, или все свое (в том числе и Shell, ФС, ядро)

Хочешь реально свое? пиши ядро, фс и утилиты сам, иначе не мужик

umren ★★★★★
()

У меня тоже были такие мысли, т.к. я запарился копировать тудым-сюдым гентушные бинари. Собирать бы так на серваке их, а на остальных компьютерах тупо с сервака бы и утягивал emerge.

Но это придется писать обертку над emerge, влом.

Eddy_Em ☆☆☆☆☆
()

Йопт, что-то я сначала подумал о своем дистрибутиве.

А "своя ось" — это бред!

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от umren

Нет, давно бросил идею. Все кончилось в духе «глянул в окно редактора, прикинул труды и забил».

DeadEye ★★★★★
() автор топика

Я думаю тебе нужно объединиться с единомышленниками из python os project, асм очень непродуктивный, да и ты в любом случае не потянешь в ближайшие лет 20. Кроме того тебе достаточно почитать, какие задачи в процессе своей работы решает элементарный юзерспейс типа coreutils, чтобы понять всю безнадёжность ситуации.

wakuwaku ★★★★
()
Последнее исправление: wakuwaku (всего исправлений: 1)
Ответ на: комментарий от DeadEye

Тред писался давно и идиотизма из

да, когда ты был ещё маленький. год назад :3

anonymous
()
Ответ на: комментарий от Eddy_Em

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

DeadEye ★★★★★
() автор топика
Ответ на: комментарий от Eddy_Em

так вот под кого этот школьничек замаскировался!) думает что наши длинные анонимные руки его не достанут, а наша анонимная память забудет его истерики. малыш RADDyomin

anonymous
()
Ответ на: комментарий от umren

Некропостеров бы. Пальцами. За их шею. Держать. Долго. Пока. Не. Перестанут. Дергаться.

DeadEye ★★★★★
() автор топика
Ответ на: комментарий от anonymous

Слишком долгая анонимность приводит к прыщам, Вы слышали об этом? Говорят, это лечится логином.

DeadEye ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.