LINUX.ORG.RU

Linux 33 года

 

Linux 33 года

1

2

Создавать монолитное ядро в 1991 году — фундаментальная ошибка. Скажите спасибо, что вы не мой студент: за такой дизайн я бы не поставил высокой оценки.
Профессор Эндрю Таненбаум.

Оригинальное сообщение в почтовой рассылке:
I’ve currently ported bash(1.08) and gcc(1.40), and things seem to work. This implies that I’ll get something practical within a few months, and I’d like to know what features most people would want. Any suggestions are welcome, but I won’t promise I’ll implement them :-)



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

чтоб одна программа случайно не перезаписала память другой программы.

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

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

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

У вас цель спор ради спора, коротким сообщением доказать ошибочность собеседника, без развернутой аргументации. Мне надоело. Все ваши потуги описаны и у Столярова и у Таненбаума, я в курсе.

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

Вы просто не разбираетесь в общих понятиях, сосредотачиваясь на часностях. Возьмите Таненбаума

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

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

Ваше понимание доктрины Таненбаума основано на частностях, в целом не отражающих ни современный, ни исторический контекст.

Обращаюсь к публике. Хотите разобраться в процессах:

  1. Modern Operating Systems (с) A. Tanenbaum cтр 39. 1.5.1 Processes.
  2. Программирование и введение в профессию. Том2. Системы и сети (с) Столяров А.В. стр 321. 5.3.3 Виртуальное адресное пространство.

Эту самодеятельность «ты дурак, нет ты дурак» можно продолжать долго, тем более в технических вопросах с массой нюансов в конкретной реализации. Читайте книги, форумы это только запал для исследования темы.

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

Концепция процесса заключается в том, чтоб одна программа случайно не перезаписала память другой программы. На концепции процесса базируется концепция микроядра, когда часть функций ядра выносится в отдельные процессы с собтственными адресными пространствами и они не могут навредить друг другу, в отличии от монолита где все функции ядра исполняются в едином адресном пространстве.

Концепция микроядра и реальность вещи слегка различные.

У QNX менеджер процессов не входит в микроядро, но работает в его адресном пространстве.

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

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

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

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

Мне было интересно проверить ваше утверждение в том, что на основанни ptrace концепции процесса для монолитного и микро ядра различаются.

Вы «не той стороной бутерброд кладёте». Вы из ptrace рассматриваете концепции монолита и микроядра, а нужно наоборот - из концепции ядра рассматривать ptrace.

Адресное пространство процесса герметично.

Это абсолютное утверждение, которое точно также абсолютно вызывает кучу замечаний. Что значит «герметично»? В него нельзя проникнуть извне? Как видим, можно, для этого даже есть системные вызовы. Причём, даже из другого пользовательского процесса, не говоря уже о kernel mode.

Разница между монолитным ядром и мкро ядром в том, что в монолитном ядре драйверы это процедуры внутри ядра, а в микро ядре это отдельные процессы в user-mode.

Что в данном абзаце Вы имеете в виду под словом «драйверы»? Драйверы оборудования? Тогда это не так, в user space в микроядре может быть вынесено значительно больше.

Обясняется что ядро это одна большая программа работающая в kernel-mode.

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

Диспетчер внутри ядра вместо процедур обращается к отдельным пользовательским процессам.

И именно здесь мы и натолкнёмся на то, что для того, чтобы одному процессу похозяйничать в памяти другого, нужно обратиться к третьему и все эти процессы равны между собой, поскольку запущены в user space. Соответственно, на пути создания аналогов ReadMemory лежат грабли by design самого микроядра. Попросить само микроядро пропустить один процесс в память другого тоже невозможно, т.к. оно реализует только обмен сообщениями между процессами и более ничего.

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

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

Всё теперь разборались. Понятно.

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

Чтоб вас понять надо было неделю вчитываться в Танебаума, при этом не пропуская ни одной строчки.

Processes can also grant limited permission for other processes to have the kernel access their address spaces.

Modern Operating Systems. A. Tanenbaum 1.7.3 стр 67.

В такие моменты мне жаль, что можно поставить только один лайк.

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

Концепция процесса заключается в том, чтоб одна программа случайно не перезаписала память другой программы

Нет, это концепция изоляции процессов. Концепция процесса заключается в оснащении однозадачной программы метаданными, позволяющими, с привлечением разбирающей их программы, реализовать возможность исполнения однозадачных программ в заданной последовательности.

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

Концепция процесса заключается в оснащении однозадачной программы метаданными

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

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

Всё теперь разборались. Понятно.

Да, спасибо. Приятно было пообщаться и самому память поворошить. :)

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

Концепция процесса заключается в оснащении однозадачной программы метаданными,

С определенного уровня развития техники процесс рассматривается как контейнер который содержит ресурсы и потоки (треды) которые планировщик ОС запускает, а также завершает процесс когда завершился main thread. В приложении к языку Go и горутинам, где еще есть планировщик Go который приклеивает горутины к тредам.

Вывод: в зависимости от выбранного масштаба определения или концепты различаются. На крупном масштабе при подробном рассмотрении различаются концепты процесса и изолязции процесса, на более мелком процесс по определению изолирован.

lbvf50txt
()
Последнее исправление: lbvf50txt (всего исправлений: 3)
Ответ на: комментарий от pfg

но на практике удобнее работать, так как нужно, а не так как тэоритически.

Это скользкая дорожка, самый опасный участок которой заключается в том, кто определяет «как нужно».

прикладной опыт, не связанный с погромированием :)

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

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

мусье работает только сертифицированными на безопасность инструментам в сертифицированном на безопасность снаряжении и только по сертифицированным методикам работы на сертифицированном на безопасность рабочем месте ??
мусье, практически думаю даже сами не работаете в полном соответствии со всеми техниками безопасности, да и большую часть ентих бумажек никогда и не читали… :)

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

оответственно, на пути создания аналогов ReadMemory лежат грабли by design самого микроядра.

Интересно. Так QNX - это микроядро или нет?

Как тогда там вот это появилось CVE-2002-2042?

ptrace in the QNX realtime operating system (RTOS) 4.25 and 6.1.0 allows programs to attach to privileged processes, which could allow local users to execute arbitrary code by modifying running processes.

Или все же микроядро отдельно? А память отдельно?

x86_64 ★★★
()

Возраст активное начало старения и окончательного закостенения психики, когда практически никакое развитие, адекватное, невозможно.

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

P.S. И что важно Столяров выложил свои работы бесплатно,

Вообще-то он их выложил за собранный донат.

Результат работы доступен без оплаты. Значит работа выложена бесплатно. А выполнена на донат. Посещение парков в городе бесплатно, но построены они на деньги споносора или из казны.

Не путайтесь в трех соснах.

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

Значит работа выложена бесплатно.

Бесплатная выкладка работ была условием для сбора доната.

но построены они на деньги споносора

Собранные «спонсором» с будущих посетителей парка для постройки парка?

Не путайтесь в трех соснах.

Ты сначала из одной сосны сам выйди.

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

Посещение парков в городе бесплатно, но построены они на деньги споносора или из казны.

Собранные «спонсором» с будущих посетителей парка для постройки парка?

Это называется cherry picking, и спор ради спора. За спонсора ухватились, про казну забыли. Давайте доказывайте дальше, что для скачивания книг Столярова надо заплатить ему денег, но без меня.

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

Это называется cherry picking, и спор ради спора.
Давайте доказывайте дальше, что для скачивания книг Столярова надо заплатить ему денег,

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

Спонсор-столяров предложил построить-написать парк-книги, если ему соберут на эти цели достаточно средств. Это не «бесплатно», это «за деньги». Работа Столярова была оплачена согласно его условиям. Ничего плохого в этом, конечно же нет.

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

Спонсор-столяров предложил построить-написать парк-книги

Спонсором выступает сообщество которое спонсирует работу Столярова. Как вы приклеили Столярова к споносору это вопрос интересный.

Это не «бесплатно», это «за деньги». Работа Столярова была оплачена согласно его условиям

То что за 10 лет до трехтомника Столяров написал несколько методичек которые выложены в бесплатный доступ и на который не собирали донаты вас не смущает?

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

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

Для студентов МГТУ ГА?

К сожалению, уже распроданы…

http://stolyarov.info/books/unixref

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

Как вы приклеили Столярова к споносору

Но это не я, это ты предложил такую аналогию. Ты не помнишь содержание своего собственного предыдущего поста в этой теме, написанного сегодня же 5 часов тому назад?

То что за 10 лет до трехтомника Столяров написал несколько методичек

Не пытайся съехать с темы и подменить предмет разговора. Вот твои слова:

Он написал такие книги И что важно Столяров выложил свои работы бесплатно, не требует по 1млн рублей в год.

Ну да, он не требовал, а попросил, и не в год, а единоразово, и не 1 млн, а 1’021’800 руб. Делает ли получение 1 миллиона 21 тысячи 800 рублей публикацию книг «бесплатной»? Нет, не делает. Публикация книг стоила денег.

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

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

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

Да нет, это либо ты троллишь, либо с логикой совсем всё плохо.

Давай я попробую ещё один последний раз. Вот два утверждения:

бесплатно и не требует по 1млн рублей в год.

бесплатно и требует 1 млн задатка.

Попробуй ответить на следующие вопросы:

  1. Какая из двух цитат описывает ситуацию с учебниками Столярова?
  2. Есть ли противоречие во второй цитате?
LamerOk ★★★★★
()
Ответ на: комментарий от LamerOk

Это обычная в Россиийской империи XIX века практика издания книг по подписке.

А кто не подписался, тот мог сам вручную бесплатно переписать полюбившееся. 😉

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

Давай я попробую ещё один последний раз.

Не надо пробовать. Написано «выложил свои работы бесплатно», а не «написал бесплатно». Надо читать, что написано.

Во вторых по мимо трехтомника есть методички, которые я и имел ввиду, так как это часть вузовского образования. Он не собирал деньги с сообщества для написания методичек. Но вы почему-то игнорируете эти методички.

Почему вы игнорируете и занимаетесь CherryPicking? Наверное потому, что вы занимаетесь троллингом. А может еще почему-то.

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

это часть вузовского образования. Он не собирал деньги с сообщества для написания методичек.

Кто будет покупать методички, кроме студентов, у которых по ним лабораторные работы?

Написание учебных пособий - это часть мет.-пед. работы преподавателя в вузе. С трудом представляю себе доцента, который за время своей работы не написал ни учебников, ни методичек.

Рецензент к.т.н, доц. С.Ж. Кишенский

Рассмотрено и одобрено на заседаниях кафедры 19.08.08 г. и методического совета 19.06.08 г.

Андрей Викторович, конечно, молодец, что сохранил исходник и макет, чтобы затем опубликовать на своём сайте. А мог бы и выборосить после формирования портфольо доцента.

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

Это обычная в Россиийской империи XIX века

Так это теперь и в 21-ом веке снова стало «обычной практикой».

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

мусье работает только сертифицированными на безопасность инструментам

Нет, в настоящее время мусье работает исключительно с инструментами на которых большими буквами написано что-то вроде WITHOUT WARRANTY OF ANY KIND.

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

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

Так QNX - это микроядро или нет?

Конечно.

Как тогда там вот это появилось CVE-2002-2042?

Тем самым способом «нештрафуемого интервала», который проповедует @pfg, т.е. спецификой конкретной реализации. Что достаточно регулярно проявляется в самых разных аспектах вроде существования и использования недокументированных возможностей:

https://forum.kpda.ru/index.php/topic,1782.0.html

https://www.networkcomputing.com/cybersecurity/barracuda-security-equipment-contains-hardcoded-backdoors

Или все же микроядро отдельно? А память отдельно?

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

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

Сначала предустанавливали Microsoft DOS. Потом Microsoft Windows. Потом все умерли, но это уже совсем другая история.

alt-tab-let ★★
()
Ответ на: комментарий от vtVitus

Кстати, о птичках. У меня когда-то был скан статьи англоязычной 80-х годов, где pc сравнивается с amiga и atari st, где ibm pc хуже во всём и при этом дороже, и во всём этом сквозит вопрос - а нахрена он нужен-то?

Кстати, я так до сих пор и не понял, а нахрена он нужен то? Тем более, за Amiga стояла Commodore, которая успешно продавала компы миллионами и миллионами, так что продавать умеют.

Где и как что пошло не так?

alt-tab-let ★★
()
Ответ на: комментарий от thesis

С кем у венды была конкуренция? Они забрали за собой весь OEM-рынок, и компы уже шли с вендой, которой никто не знал альтернативы.

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

alt-tab-let ★★
()
Ответ на: комментарий от alt-tab-let

ibm победил за счёт открытой архитектуры. к примеру, если ты хотел увеличить память своей атари, ты должен был разобрать свою атари, оправить её по адресу такому-то, оплатить 100500 денег и они тебе напаяют немного памяти и пришлют обратно. в ibm pc ты покупаешь планку памяти и вставляешь её в ibm, причём память производят несколько производителей разного качества и цены. Причём память чуть ли не единственное что в закрытой архитектуре можно было хотя бы теоретически менять, что запаяли и продали с тем и живи. в ibm сразу появились шины в которые можно вставлять, что хочешь и тут же появились куча сборщиков, которые собирали ibm pc в тонне вариантов. Причём конкуренция по комплектухе в течении нескольких лет сделала ibm дешевле и лучше всех закрытых конкурентов. Вот все они и умерли.

Что сделала ibm - они придумали открытые интерфейсы и на коленке силами небольшой группы за один год сделала тяп-ляп комп. Т.е. потратили 3 копейки, а дальше куче компаний стало выгодно улучшать качество ibm pc, производя для неё комплектуху, тонна сборщиков, которые из это комплектухи делали компы разных ценовых диапазонов и качества.

ibm pc - это современный комп, он до сих пор стоится по тем же принципам.

все другие это +- современный смартфон, всё анально огорожено, мало чего можно менять.

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

А IBM забросила The IBM PC.

единственное что в закрытой архитектуре можно было хотя бы теоретически менять, что запаяли и продали с тем и живи. в ibm сразу появились шины

На 8-битных Apple II были платы расширения

https://upload.wikimedia.org/wikipedia/commons/a/ac/Micromodem_II_in_Apple_II.jpg

Не говоря уже о машинах с S-100, для которых изначально разрабатывалась 86-DOS/MS-DOS.

https://vintagecomputer.ca/wp-content/uploads/2015/02/TEI-S-100-chassis1.jpg

В The IBM PC было всего 5 слотов. Один уже занят видеоадаптером.

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

Apple II были платы расширения

Да были - Стив Возняк протащил их (даже по-моему чуть ли не со спеками!), практически вопреки воле Жопса. Было и такое. Именно поэтому 2 аппле дольше всех и жила. Но это были именно расширения, можно было опять же только расширять, а не заменять. в ibm pc было всё сборным и всё заменяемым.

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

Процессорная плата The IBM PC не подлежала замене, в отличие от S-100. Планки для RAM не были предусмотрены. Было 3 свободные панельки для микросхем. Если их все заполнить, можно было расширить RAM с запаянных 16K до 64K

На некоторых более поздних и дорогих писюшных клонах процессорная плата вставляется и вынимается из корзины, как в S-100

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

Не важно, что там было в S-100. У неё цена была огромной. ibm pc предложил принцип сборки компутера, опубликовал спеки шин и выпустил джина из бутылки. Что там было в начале и какие там у ibm pc были косяки не важно (а их было тонны, они реально собрали на коленке). Важны принципы и спеки, а дальше конкуренция всё сделала. «Слишком многим стало выгодно улучшать ibm pc, поэтому мы и проиграли» (c) Жопс

vtVitus ★★★★★
()
Ответ на: комментарий от alt-tab-let

pc сравнивается с amiga и atari st, где ibm pc хуже во всём и при этом дороже, и во всём этом сквозит вопрос - а нахрена

The IBM PC на несколько лет старше. Новость 40-летней свежести

MS-DOS как программная платформа формально ещё чуть старше.

Когда выпустили The IBM PC, были первые университетские некоммерческие SUNы, а не amiga с atari st.

ftp://bitsavers.informatik.uni-stuttgart.de/pdf/stanford/sun/The_SUN_Workstation_Draft_Mar80.pdf

А хуже, чтобы не конкурировать с офисными миниЭВМ самой IBM (предками AS/400) и разрабатываемыми рабочими станциями на RISC.

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

Без понятия. s-100 пихалась в компы бизнес решений и с соответствующей ценой. Я не слышал, чтоб она присутствовала в компах в других сегментах.

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

Основной изначальный сегмент – широкий круг любителей электроники.

Позже – любители охаивать The IBM PC

https://books.google.com/books?id=EDAEAAAAMBAJ&dq=Zenith+Z-100+Original+Desktop+Computer&pg=PA35#v=onepage&q=Zenith%20Z-100%20Original%20Desktop%20Computer&f=false

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

Не важно какой у неё был изначальный сегмент, покажи компутер построенный вокруг s-100 от +- известного производителя, который бы ориентирован на +- бюджетный рынок во время появления ibm pc. Лично я про такие не знаю.

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

емкое и совершенно неинформативное заявление, как и ответ чуть выше, отлично описывает твой опыт !! :)

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

Опыт заказа +- бюджетных компутеров +- известного конкурента IBM PC в 1982?

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