Нет, виртуальная дискета из ROM, который замаплен в конец адресного пространства. На каждое чтение уходим в PM, копируем сектора, переключаемся обратно в RM.
Нет, он совершенно верно заметил, что никакого стораджа, кроме микросхемы BIOS в компьютере нет, значит грузится он из неё. Но про сам механизм загрузки не рассказал, хотя делал очень правильные вещи для этого — чуть-чуть не хватило упорства.
Нет, но было бы интересно посмотреть на конкурирующие альтернативы. Кстати, ответа на вопрос «как именно грузится FreeDOS» пока не было сформулированно — он действительно делает это из микросхемы биоса, но ядро FreeDOS без изменений грузиться с такого «носителя» не умеет.
Предположим, что у меня есть 486-ая машина, я прочитал эту статью и узнал из неё про PLoP, который умеет грузиться с CD, после чего я захотел себе его установить. Что скорее всего у меня будет в наличии — сетевая карта, микросхема BootROM, программатор и умение им пользоваться или обычный жёсткий диск, на который я смогу поставить загрузчик, просто запустив его инсталляционную процедуру?
В BIOS его прошить можно, но почти наверняка в штатной микросхеме для этого не хватит места, и понадобятся различные ухищрения, объёма которых хватит на ещё одну статью.
Не у каждого 486 есть сетевая карта с установленной микросхемой BootROM и программатор. Вероятность встретить жёсткий диск в 486 сильно выше.
Диск всё равно будет инициализирован BIOS'ом, даже при загрузке PLoP из BootROM.
Если сделать много допущений и всё очень сильно упростить, то получится вот так:
Пусть у нас есть система, в которой есть утверждения, причём эти утверждения мы умеем записывать в виде чисел (сериализовывать), и они могут быть либо истинными, либо ложными, и зависят от входного аргумента (есть операция подстановки). Мы хотим доказать, что в рамках такой системы невозможно определить утверждение G(f, x), которая берёт утверждение f, и подставляя в него x «возвращает true», если f(x) выводится из наших аксиом, как true, и false, если f(x) выводится, как false.
Например, пусть у нас есть числа, которые мы умеем складывать и сравнивать. Тогда мы можем сформилировать утверждения f0 «x+1=1+x», f1 «x=0» и f2 «x+1=2+x». Тогда G(f0, 5) будет true, G(f1, 0) будет true, G(f1, 1) будет false, G(f2, 0) тоже будет false.
Теперь сформулируем утверждение H(f) как «NOT G(f, f)». Если попытаться вычислить G(H, H), то мы получим противоречие: G(H, H) = H(H) = NOT G(H, H).
Эта проблема с десктопными видеокартами решается внешним CEC-адаптером. Лучше всего работают адаптеры от Pulse-eight. Ещё на некоторых моделях Intel NUC есть встроенный CEC.
Конечно. Я не утверждаю, что это не работает в обратную сторону, и что в деанонимизации всех абонентов есть польза.
Точно так же, как и если мы запретим всем, кроме полицейских владеть оружием, то это создаст чёрный рынок оружия, полученного (добровольно или не очень) от этих самых полицейских. То есть у замотивиронных преступников всё равно будет оружие.
Жёсткие запреты могут лишь несколько уменьшить размер этого рынка. И, возможно, вред от этих запретов будет больше, чем пользы от невооружения преступников.
Предположим, некто захотел не идти на пары, и звонком сообщить о заложенной в ВУЗе бомбе. Это преступление. Если у этого потенциального преступника будет сдерживающий фактов в виде «они знают, откуда я позвоню, значит смогут легко меня найти», то он захочет отказаться, и не совершит преступление.
Я не утверждаю, что число таких случаев является статистически значимым, или что вред от анонимных звонков больше, чем польза. Это лишь пример, показывающий, что усиление некоторых запретов приводит к снижению частоты некоторого класса преступлений. В примере выше, запрет анонимных звонков приводит к снижению числа ложных вызовов экстренных служб.
В этом и заключается монополия на насилие. Обычный человек не обладает правом классифицировать действия другого человека, как преступника.
Продолжая радикальные аналогии, противоположностью была бы возможность для обычного человека застрелить вора. А что если он ошибся, и это был пентестер, который договорился с владельцем вещи, что он попытается её украсть? Если наказание за такую ошибку будет слишком маленьким, то это спровоцирует друзей убитого на месть — им тоже «покажется», что стрелявший совершает преступление. А если слишком большим, то у стрелявшего не будет смысла продолжать жить — он срочно побежит стрелять всех нехороших, по его мнению, людей, ведь терять-то больше нечего. В конечном итоге он может и совершить роскомнадзор.
Если считать долю гопоты в некоторой стране константной, то число таких групп будет падать. А значит правоохранителям будет проще их находить, отслеживать, контролировать и изолировать. Поймав одного из них можно будет выйти на большее количество преступников.
Любое ужесточение влияет на криминалитет, просто в (иногда гораздо) меньшей степени, чем на «мирных жителей». Это как с SIM-картами по паспорту — преступнику не обязательно соблюдать закон, требующий от него не быть анонимным при покупке контракта сотовой связи, но на чуть-чуть этих самых преступников становится меньше, не все они осилили оформить контракт на бомжа или уговорить сотрудника/посредника указать левые данные. Превышает ли польза от такого запрета вред — это уже другой вопрос.
Если доводить контроль до абсурда, то можно разрешить полиции (с полным логированием всех действий в некий отказоустойчивый, реплицируемый и подвергаемый непрерывному аудиту журнал) стрелять на поражение в каждого, кто не является полицейским и имеет оружие. А единственной разрешённой формой самозащиты для рядовых граждан сделать «спасите! помогите! полиция!».
Лично мне идея снизить государственную монополию на насилие (как, впрочем, и любую форму централизации, где она не является безусловно необходимой) нравится больше, но, как несложно заметить, споры про- и контра-оружейников идут до сих пор, и ни у кого из них нет каких-либо достаточно сильных аргументов, чтобы окончательно завершить спор в свою сторону.
Телескопическая дубинка плохо работает против противника с огнестрельным оружием.
Чтобы решить эту проблему, надо либо ещё сильнее зарегулировать оборот оружия и тех, кто его использует (в том числе и полицию), либо позволить владеть оружием всем подряд.
Практически любой спор между сторонниками и противниками гражданского оружия сводится к этим аргументам. Типичные контрагрументы такие:
А в мире с оружием именно такие как она станут приоритетными целями всяких отморозков, потому как у кого-то другого может быть оружие, а тут его гарантированно не будет.
В мире с оружием у находящихся рядом «хороших» людей тоже может быть оружие. Сама по себе такая возможность может остановить отморозков.
Не будут они думать.
Если на жертву напал агрессор, который не подумал о последствиях, и у жертвы нет возможности защитить себя, то жизнь жертвы не просто полетит под откос, а вовсе закончится. Чем больше жертв будет защищать свою жизнь в ущерб жизни агрессора, тем больше агрессоры будут думать (и тем меньше их останется).
В случае ZeroTier приходится отдавать часть control plane своей сети третьей стороне, что не очень здорово. В решении автора такой проблемы нет (особенно если поменять Я.Диск на DHT, а stun-серверов добавить с десяток). И, кажется, в yggdrasil тоже — там узлы используют криптографию для того, чтобы назначить себе адрес, а для изменения маршрутизации нужно уметь подписывать сообщения своим секретным ключом.
files = ['aaa', 'bbb', 'ccc', 'ddd']
match_uuid = 'ccc'
callcc(found):
for uuid in files:
if uuid == match_uuid:
found(uuid)
raise FileNotFound()
Тогда из самого языка можно было бы выкинуть исключения, циклы, генераторы и ещё кучу конструкций control flow, оставив только синтаксический сахар, а реализацию переложить в стандартную библиотеку.
В BIOS его прошить можно, но почти наверняка в штатной микросхеме для этого не хватит места, и понадобятся различные ухищрения, объёма которых хватит на ещё одну статью.
Диск всё равно будет инициализирован BIOS'ом, даже при загрузке PLoP из BootROM.
Пусть у нас есть система, в которой есть утверждения, причём эти утверждения мы умеем записывать в виде чисел (сериализовывать), и они могут быть либо истинными, либо ложными, и зависят от входного аргумента (есть операция подстановки). Мы хотим доказать, что в рамках такой системы невозможно определить утверждение G(f, x), которая берёт утверждение f, и подставляя в него x «возвращает true», если f(x) выводится из наших аксиом, как true, и false, если f(x) выводится, как false.
Например, пусть у нас есть числа, которые мы умеем складывать и сравнивать. Тогда мы можем сформилировать утверждения f0 «x+1=1+x», f1 «x=0» и f2 «x+1=2+x». Тогда G(f0, 5) будет true, G(f1, 0) будет true, G(f1, 1) будет false, G(f2, 0) тоже будет false.
Теперь сформулируем утверждение H(f) как «NOT G(f, f)». Если попытаться вычислить G(H, H), то мы получим противоречие: G(H, H) = H(H) = NOT G(H, H).
Точно так же, как и если мы запретим всем, кроме полицейских владеть оружием, то это создаст чёрный рынок оружия, полученного (добровольно или не очень) от этих самых полицейских. То есть у замотивиронных преступников всё равно будет оружие.
Жёсткие запреты могут лишь несколько уменьшить размер этого рынка. И, возможно, вред от этих запретов будет больше, чем пользы от невооружения преступников.
Я не утверждаю, что число таких случаев является статистически значимым, или что вред от анонимных звонков больше, чем польза. Это лишь пример, показывающий, что усиление некоторых запретов приводит к снижению частоты некоторого класса преступлений. В примере выше, запрет анонимных звонков приводит к снижению числа ложных вызовов экстренных служб.
Продолжая радикальные аналогии, противоположностью была бы возможность для обычного человека застрелить вора. А что если он ошибся, и это был пентестер, который договорился с владельцем вещи, что он попытается её украсть? Если наказание за такую ошибку будет слишком маленьким, то это спровоцирует друзей убитого на месть — им тоже «покажется», что стрелявший совершает преступление. А если слишком большим, то у стрелявшего не будет смысла продолжать жить — он срочно побежит стрелять всех нехороших, по его мнению, людей, ведь терять-то больше нечего. В конечном итоге он может и совершить роскомнадзор.
Если доводить контроль до абсурда, то можно разрешить полиции (с полным логированием всех действий в некий отказоустойчивый, реплицируемый и подвергаемый непрерывному аудиту журнал) стрелять на поражение в каждого, кто не является полицейским и имеет оружие. А единственной разрешённой формой самозащиты для рядовых граждан сделать «спасите! помогите! полиция!».
Лично мне идея снизить государственную монополию на насилие (как, впрочем, и любую форму централизации, где она не является безусловно необходимой) нравится больше, но, как несложно заметить, споры про- и контра-оружейников идут до сих пор, и ни у кого из них нет каких-либо достаточно сильных аргументов, чтобы окончательно завершить спор в свою сторону.
Чтобы решить эту проблему, надо либо ещё сильнее зарегулировать оборот оружия и тех, кто его использует (в том числе и полицию), либо позволить владеть оружием всем подряд.
В мире с оружием у находящихся рядом «хороших» людей тоже может быть оружие. Сама по себе такая возможность может остановить отморозков.
Если на жертву напал агрессор, который не подумал о последствиях, и у жертвы нет возможности защитить себя, то жизнь жертвы не просто полетит под откос, а вовсе закончится. Чем больше жертв будет защищать свою жизнь в ущерб жизни агрессора, тем больше агрессоры будут думать (и тем меньше их останется).
Или на воображаемом питоне-с-продолжениями:
Тогда из самого языка можно было бы выкинуть исключения, циклы, генераторы и ещё кучу конструкций control flow, оставив только синтаксический сахар, а реализацию переложить в стандартную библиотеку.