LINUX.ORG.RU
ФорумTalks

Linux 0.01, кто бы тогда подумал...

 , копролит,


1

1

Современные версии ядра под 35 млн строк кода и выше. А вот человек заглянул в v0.01, и улыбнулся: (https://seiya.me/blog/reading-linux-v0.01)

 *  'schedule()' is the scheduler function. This is GOOD CODE! There
 * probably won't be any reason to change this, as it should work well
 * in all circumstances (ie gives IO-bound processes good response etc).

Всё прибито гвоздями к i386, a ОС называлась даже не Linux, a:

# Makefile for the FREAX-kernel.

Стиль кодирования уровня «Бог»:

(void) open("/dev/tty0",O_RDWR,0);
(void) dup(0);
(void) dup(0);

В конце автор сокрушается, что исходник не собирается современным gcc, и ошибки компиляции нетривиальные.

Кто бы тогда подумал, во что мутирует наколеночная поделка…

★★★★★

А зачем пишут (void) перед вызовом функции? В чем тайный смысел? Подавляют какие-то варнинги? Какие?

(void) open("/dev/tty0",O_RDWR,0);
(void) dup(0);
(void) dup(0);

Xintrea ★★★★★
()

он просто пейсал программу для модема..

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

Подавляют какие-то варнинги? Какие?

Unused return value. Если у вас в коде НЕ используется результат open/dup/malloc/любой функции что аллоцирует ресурсы - вы что-то делаете не так.

Тут так надо.

PPP328 ★★★★★
()

В копилку: Linux 内核 0.12 完全注释 (для варваров) - подробнейший разбор сырцов ядра 0.12.

Подлинковали на LWN в обсуждении того, что принёс ОП - вот и решил транслировать не рефлексируя.

token_polyak ★★★★
()
Последнее исправление: token_polyak (всего исправлений: 2)
Ответ на: комментарий от Aceler

она потребует установить сначала козперского?

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

Дело даже не столько в коде, а в том, как он развивался, постепенно захватывая ресурсы, сначала энтузиастов, потом коммерции, больших корпораций. Его распространение стало похоже на захватывание материи чёрной дырой. Его суют в каждую дырку, для любого применения, потому что сила Линукс-гравитации вездесуща. Немногие пытаются бросить вызов этой черной дыре, создают свои ядра, но тщетно - Линукс сметает всё. Эта тенденция даже может привести к гибели всего человечества. А начиналось всё с безобидной поделки.

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

Линукс сметает всё

кроме десктопов( Увы, там есть более черные дыры)

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

FREAX-kernel

Правильно, только фрики используют линкус.

xwicked ★★☆
()

И это всё, до чего можно докопаться? Значит, код идеален, и не зря развился и вырос.

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

Тише, а то сейчас Карпов прийдет и начнет своим поделием спамить

Kolins ★★★★
()

В конце автор сокрушается, что исходник не собирается современным gcc, и ошибки компиляции нетривиальные.

Есть версия ядра 0.01, портированная на современный GCC.

https://github.com/mariuz/linux-0.01

hateyoufeel ★★★★★
()

Стиль кодирования уровня «Бог»:

У нас студенты тоже на доверии (ст 159 УК РФ) пишут. Потом сами свои мерж реквесты правят.

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

Да троллим их.. на доверии работают, как мошенники. А по факту негативные случаи не обрабатывают.

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

Обосрется, потому что не умеет в старые стандарты С.

С чего бы? Оно даже умеет K&R C тот где:

main(argc, argv)
int argc;
char *argv[];
{
   return 0;
}

Древний первый Word под винду был написан в K&R стиле.

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

пытаются бросить вызов этой черной дыре, создают свои ядра, но тщетно

Безъядерные программы спасут Вселенную.

vM ★★
()
22 ноября 2023 г.
Ответ на: комментарий от PPP328

Обосрется, потому что не умеет в старые стандарты С.

Можно попробовать вставить пару костылей, чтобы распарить. Если в команде найдётся доброволец с этим всем повозиться, может попробуем проверить. Мы подобное уже делали с Cfront. Там были такие штуки, как:

inline Pptr type.addrof() { return new ptr(PTR,this,0); }

Точка вместо ::. Ссылка тем, кому интересно подробности про ту проверку: К тридцатилетию первого C++ компилятора: ищем ошибки в Cfront.

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

Я представил, что будет, если на это натравить пивас-студию.

Спасибо за идею. Обсудим :)

Andrey_Karpov_2020
()
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)