Skip navigation.
Home

Лекция для колхозников

Попросили меня тут прочитать для "колхозников" лекцию об операционных системах. Ради этого дела я решил взрыхлить порядком уже затвердевший навоз знаний и представить всё это публике в пристойном виде. Помимо общеизвестных истин из древних напластований выковырялась мысль, которая показалась мне интересной: операционные системы появились на свет исключительно по финансовым соображениям и никаких технических причин создавать это дерьмо не было. Процессорное время было дорогим и время простоя процессора надо было минимизировать. Вдогонку к этому был создан UI, который позволил использовать в процессе эксплуатации ЭВМ умственно неполноценных и потому сильно дешёвых индивидов ранее известных публике под ныне запрещёнными из соображений политкорректности словами "операторы ЭВМ" и "кодеры".

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

Единственным возражением из зала была реплика, что оно, дескать, неподдерживаемое и не переносимое. На что я ответил своим любимым кейсом: Винда ХР на современном железе грузится за две секунды, чтобы запустить на ней "современное" приложение вам нужно посадить на неё дотНЕТ фреймворк, который весит больше, чем сама система, майнтэйнится отдельно, несовместим сам с собой и грузится в десять раз дольше. Вы это называете поддерживаемостью и переносимостью? А пляски с бубном вокруг Джава, если вы не дай Бог, решили запускать приложение одновременно под Виндой и Линуксом? Ни одно коммерческое приложение, как физический код, а не идея, нынче не живёт дольше, чем живёт железо на/для которого оно было изначально разработано.

Но это всё словоблудие, которое элементарно разбивается крупной коммерцией и перераспределением рисков от самых умных к просто умным и ниже.

Далее у меня возникла мысль, которую я "колхозникам" не озвучил: если у нас уже есть операционная система, то по принципу "не пропадать же дерьму", к ней нужен "дорогой" процессор, загрузить который ей будет по зубам. Вот был же кейс, когда некие перцы собрали в гараже кластер из Плейстейшнов, подняли на нём NUMA-Linux и с шутками-прибаутками ломанули SHA-1. Скажите же мне, дорогие мои читатели, кто ещё, кроме меня гениального, конечно-же, догадался дома набить стойку тысячей-другой "бананов" или "распей" или чем-то подобным и использовать это добро на благо всеобщего мира и процветания?

На мой взгляд

На мой взгляд это элитизм чистой воды. Так можно закопаться в тему где «Sinclair ZX Spectrum паяли те кто реально понимал, знал и хотел» Да, какие-то вещи проще и быстрее было бы исполнять на barebone, для этого есть специальные системы.

Операционные системы, особенно винда, выполнили одну важную функцию - они принесли компьютер в дом и толкнули техническое развитие. Ну было бы как ты хочешь, и что? Сидели бы до сих пор с мейнфреймами размером с паровоз. Ибо «процессорный ресурс нынче настолько дешев...» не было бы. Тот же домашний гейминг является постоянным движком для прогресса технологии. А в твоем сценарии, как я вижу, стимула развивать те же процессоры было бы почти ноль.

Кстати, на какой ОСи ты сидишь? :)

Категорически

Категорически не согласен!

Компьютер в доме - по совокупности, один только ущерб. В моём доме компьютер не решает ни одной задачи, в решении которых я (лично Я) нуждаюсь. Меня ВЫНУЖДАЮТ пользоваться компьютером в ущерб себе.
Никакого технического прогресса десктоп и бытовой компьютер не стимулировали. Прогресс идёт в параллельном пространстве и сильно впереди того, что мы видим на полках магазинов и не менее ортогонально нашим личным интересам.

> Сидели бы до сих пор с мейнфреймами
Так кому надо до сих пор на них и сидят. Вон, ранее уже упоминали.

> на какой ОСи ты сидишь?
Ни на какой! Я хожу в библиотеку. Обычную бумажную библиотеку.

Меня ВЫНУЖДАЮТ пользоваться различными ОСями, хотя всю реальную работу (стиралкой, например управляют) в моём доме делают микроконтроллеры на голом железе. Для десктопных задач мне за глаза и за уши хватило бы ДОСа даже сейчас, который по сути реализован в железе современных Кортекс'ов M и R.

Якобы удешевление как результат массового производства - это один из великих "экономических" мифов.

а по поводу

а по поводу кластеров - есть закон Джина Амдала, мир праху его - как вариация на общий закон распределенных вычислений Гюнтера.
1) не все задачи параллелятся как хотелось бы - именно поэтому есть оракл и есть горизонтально масштабируемые бд
2) затраты на интерконнект - начиная от сетей, заканчивая протоколами когерентности кешей в многосокетниках.

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

time-sharing, os, vmmon,

time-sharing, os, vmmon, hypervisor - все оттуда, из 70-х, упыри завсегда хотят эффективности, Томасуло даже гениальный алгоритм родил.
туда же можно запихать и нейман vs гарвард - UNISYS не смогла в развитие гарвардской архитектуры, бабло победило преимущества в отсутствие critical sections и в разы более высокой скорости исполнения.
Таненбаум так вообще достаточно иронично и едко периодически высказывается про текущий момент ;)

Безотносительно - имею мнение - вся история UNIX/linux это эволюция обратно в MULTICS. Unix создали потому что припухли на старте от сложности MULTICS и желания использовать более дешевые и простые CPU (напоминаю, мейнфреймы - динозавры CISC архитектуры, умели делать CISC быстро тогда, когда Intel железо для калькуляторов клепали). По итогу эволюции CPU/ОС на массмаркете, требования к системам на них стали предъявлять как к zArch, одна беда - то, что выросло из калькулятора и то, что изначально проектировалось под кровавые хотелки цыничных капиталистических упырей - отличается примерно так же, как сарай из говна и палок и добротный каменный дом. Туда же и совместимость - бинарник от S/360 нативно запускается на последнем z14. Требования к квалификации инженеров - соответствующие.

Ну и напоследок прекрасное про инженеров, эффективность и бабло - боинг:
https://www.bloomberg.com/news/articles/2019-06-28/boeing-s-737-max-soft...

“Boeing was doing all kinds of things, everything you can imagine, to reduce cost, including moving work from Puget Sound, because we’d become very expensive here,” said Rick Ludtke, a former Boeing flight controls engineer laid off in 2017. “All that’s very understandable if you think of it from a business perspective. Slowly over time it appears that’s eroded the ability for Puget Sound designers to design.”

Rabin, the former software engineer, recalled one manager saying at an all-hands meeting that Boeing didn’t need senior engineers because its products were mature. “I was shocked that in a room full of a couple hundred mostly senior engineers we were being told that we weren’t needed,” said Rabin, who was laid off in 2015."

"The Max software -- plagued by issues that could keep the planes grounded months longer after U.S. regulators this week revealed a new flaw -- was developed at a time Boeing was laying off experienced engineers and pressing suppliers to cut costs.

Increasingly, the iconic American planemaker and its subcontractors have relied on temporary workers making as little as $9 an hour to develop and test software, often from countries lacking a deep background in aerospace -- notably India."

Вот, кстати, да.

Вот, кстати, да. У меня постоянно идёт война с молодым поколением, которое всё пытается запихнуть "на борт" всю эту десктопную, выросшую из мэйнфреймов, хренотень под соусом RTOS, включая гипервизоры. Наверное, такие же мудаки, в своё время, наслушавшись рекламы "anytime, anywhere", засунули клон, кажется, S/360 (или чего-то подобного) в "Буран". Не удивительно, что пуп развязался.

Ух ты! Боинг,

Ух ты! Боинг, оказывается, тоже стал "схемы" крутить! Интересные процессы, видимо, идут в мировой экономике. Раньше за такие кунштюки SEC откручивал яйца, и часто, вместе с головой.

Насчет "...the iconic

Насчет "...the iconic American planemaker and its subcontractors have relied on temporary workers making as little as $9 an hour to develop and test software, often from countries lacking a deep background in aerospace -- notably India."

Это все отголоски святой веры держателей акций и советов директоров, что умные работники не важны вообще, совсем. Важны правильные менеджеры. Типа, если менеджер все правильно оргагизовал - любой спейсшатл или орбитальную станцию произведут любые гамадрилы - хоть из Индии, хоть из Кыргызстана. Без образования и ума. Которые только и могут либо копать, либо не копать. Главное, чтобы менеджер правильно расписал процесс. Это святая дойная корова всего современного бизнеса - слово "процесс". У нас "процессы".....

Неистово

Неистово плюсую
Раз в N месяцев, просят поделать магические пассы руками над инфраструктурными вещами на прошлом месте работы, а это, my ass, крупнейшее предприятие в мире в своей высокомаржинальной сфере. Управленцев и аналитиков ИТ - два отдела не по одному десятку человек, а инженеров - два.ок, два с половиной.

> отголоски

> отголоски святой веры держателей акций и советов директоров
Нет, нет! Это "схема". Раньше такие вещи проворачивали только на одноразовых стартапах.

"Скажите же мне,

"Скажите же мне, дорогие мои читатели, кто ещё, кроме меня гениального, конечно-же, догадался дома набить стойку тысячей-другой "бананов" или "распей" или чем-то подобным и использовать это добро на благо всеобщего мира и процветания?"

Делал кто-то. Я видел самопально собранный кластер на 48, кажется, "бананов", но вот на кой ляд он мог бы понадобиться лично мне - не понимаю.

Касательно ненужности операционных систем и пр:

Эти твои "пара сотен строк кода" на голом железе чем-то компиллировались. Где-то собирались. Кроме того, ты действительно считаешь, что люди с твоей квалификацией составляют большинство пользователей компьютеров? Нет? А многие способны писать в машинных кодах?

Пример с автомобилями: раньше каждый водитель автомобиля был и механиком, и мог починить свой тарантас почти в чистом поле. Водитель автомобиля и его владелец были разными людьми: владелец ездил, водитель водил и чинил. Картину сейчас ты знаешь, и наглядные демонстрации из серии "вы можете открыть только крышку капота, посмотреть и закрыть, потому что все остальное мы вам делать не дадим" ты тоже знаешь.

И это правильно, на самом деле. Потому что если бы телефоны покупали, к примеру, такие как я, то с моей частотой обновления телефона (примерно раз в 5-6 лет, когда трубка уже начинает чудеса вытворять), эта отрасль бы просто загнулась нахрен.

>на кой ляд Ну,

>на кой ляд
Ну, битки майнить.

Как ты думаешь, если люди на плейстешнах, ковыряя в носу в гараже разломали SHA-1, что можно сломать имея побольше денег и более конкретную цель? Это я к тому, что в 30-е годы прошлого века люди жили в землянках и при лучинах ели друг друга, и в то же время на военных самолётах стояли движки с прямым впрыском топлива.

Писано на чистом С.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.