Я продолжаю видеть "начальную загрузку", упомянутую в обсуждениях разработки приложений. Это кажется широко распространенным и важным, но мне еще не приходилось сталкиваться даже с плохим объяснением того, что собой представляет самозагрузка; скорее, кажется, что все просто должны знать, что это значит. Я не, хотя. Насколько я понимаю, это как-то связано с задачами инициализации, которые требуются приложению при запуске, но я могу быть совершенно неправ в этом. Может ли кто-нибудь помочь мне понять эту идею?
bootstrapping
Алекс Бассон
источник
источник
Ответы:
«Самозагрузка» происходит от термина «подтягивание себя своими собственными самозагрузками». Это вы можете получить из Википедии .
В вычислениях загрузчик начальной загрузки - это первый фрагмент кода, который запускается при запуске компьютера и отвечает за загрузку остальной части операционной системы. На современных компьютерах он хранится в ПЗУ, но я вспоминаю процесс начальной загрузки на PDP-11, где вы вставляете биты с помощью переключателей на передней панели для загрузки определенного сегмента диска в память, а затем запускаете его. Излишне говорить, что загрузчик начальной загрузки обычно довольно маленький.
«Начальная загрузка» также используется как термин для построения системы, использующей себя - или, вернее, версию предшественника. Например, версия 3 ANTLR написана с использованием синтаксического анализатора, разработанного в версии 2 ANTLR.
источник
Пример начальной загрузки есть в некоторых веб-фреймворках. Вы вызываете index.php (загрузчик), а затем он загружает вспомогательные средства, модели, конфигурацию, а затем загружает контроллер и передает ему управление.
Как видите, это простой файл, который запускает большой процесс.
источник
Смотрите в Википедии статью о начальной загрузке .
Есть раздел и ссылки, объясняющие, что это означает в вычислительной технике . У этого есть четыре различных использования в области.
Вот некоторые цитаты, но для более глубокого объяснения и альтернативных значений, обратитесь к ссылкам выше.
источник
Термин «самозагрузка» обычно применяется к ситуации, когда система зависит от себя, чтобы начать, своего рода проблема курицы и яйца.
Например:
В этом случае начальная загрузка относится к способу разрушения циклической зависимости, обычно с помощью внешнего объекта, например
и т.п.
источник
В контексте разработки приложений «самозагрузка» обычно возникает, когда речь идет о модульном и / или автоматически обновляемом программном обеспечении.
Вместо того, чтобы загружать все приложение целиком, включая ненужные ему функции, а также повторно загружать и обновлять его вручную всякий раз, когда происходит обновление, пользователь загружает и запускает только небольшой исполняемый файл «начальной загрузки», который, в свою очередь, загружает и устанавливает эти файлы. части приложения, которые нужны пользователю. Кроме того, компонент начальной загрузки может искать обновления и устанавливать их при каждом запуске.
источник
Алекс, это почти то, что делает твой компьютер при загрузке. («Загрузка» компьютера на самом деле происходит от слова «начальной загрузки»)
Сначала запускается небольшая программа в вашем BIOS. В нем достаточно машинного кода для загрузки и запуска более крупной и сложной программы.
Эта вторая программа, вероятно, похожа на NTLDR (в Windows) или LILO (в Linux), которая затем запускается и может загрузить, а затем запустить остальную часть операционной системы.
источник
Для полноты, это также довольно важный (и относительно новый) метод в статистике, который использует повторную выборку / моделирование, чтобы вывести свойства популяции из выборки. У него есть своя длинная статья в Википедии о начальной загрузке (статистика) .
источник
Загрузка, связывающая словарь, означает запуск с минимальными ресурсами. В контексте ОС ОС должна быть способна быстро загружаться после того, как самотестирование при включении питания (POST) определит, что безопасно пробуждать процессор. Код загрузочного ремешка будет запущен из BIOS. BIOS - это небольшой размер ПЗУ. Обычно это инструкция перехода к набору инструкций, которая загружает операционную систему в ОЗУ. Пункт назначения перехода - это загрузочный сектор на жестком диске. После того, как программа bios проверит, это допустимый загрузочный сектор, который содержит начальный адрес сохраненной ОС, т. Е. Является ли это действительной MBR (Master Boot Record) или нет. Если это действительный MBR, ОС будет скопирована в память (ОЗУ) оттуда в ОС, заботится об управлении памятью и процессами.
источник
ИМХО, нет лучшего объяснения, чем факт о том, как был написан первый компилятор?
В наши дни загрузка операционной системы является наиболее распространенным процессом, называемым начальной загрузкой.
источник
Bootstrapping имеет еще одно значение в контексте обучения с подкреплением, которое может быть полезно знать разработчикам, помимо его использования в разработке программного обеспечения (большинство ответов здесь, например, kdgregory ) и его использования в статистике, как обсуждал Дирк Эддельбюттель .
Из Саттона и Барто :
Книга описывает различные алгоритмы подкрепления, где целевое значение основано на предыдущем приближении в качестве методов начальной загрузки:
Обратите внимание, что это отличается от агрегирования начальной загрузки и интеллектуального взрыва, о котором упоминается на странице википедии по начальной загрузке.
источник
С точки зрения этого в отношении использования популярной Twitter Bootstrap, я чувствую, что этот тип начальной загрузки - это действие по интеграции модульного компонента в веб-приложение, при котором веб-приложение не должно даже признавать, что модульный компонент существует до тех пор, пока он не потребуется или не ссылается на него. ,
Разработчик может легко интегрировать стандартную копию темы «Twitter Twitter Bootstrap» по умолчанию, просто загрузив ее (ссылаясь) в веб-приложение. Вуола! Тогда вам может потребоваться переопределить некоторые из этих изменений, но вы можете сделать это таким образом, чтобы ресурс / компонент не затрагивался и не использовался полностью.
Эта же концепция заключается в том, как Web Devs реализует API-интерфейсы jQuery и т. Д., Но на самом деле Devs не выражает их как самозагрузку. Он повышает гибкость и возможность повторного использования, позволяя изоляции различных компонентов / ресурсов приложения свободно размещаться на одном и том же сервере или, возможно, в CDN.
ПРИМЕЧАНИЕ. При вычислении начальной загрузки имеет дело с MBR, а в UNIX требуется специальный загрузчик или менеджер, представляющий собой небольшую программу в ПЗУ, которая загружает ОС в ОЗУ. Если вы подумаете об этом, то же самое происходит в действии загрузчика начальной загрузки, проверяющего MBR и загружающего ОС на основе этой таблицы, что происходит, когда ОС не подозревает, что это происходит.
источник
Я принадлежу к поколению, которое переключало переключатели, чтобы войти в загрузочную программу. В начале 1980-х я работал на микрокомпьютере Micro-78, разработанном компанией Electronics Corporation of India Ltd (ECIL). Это был своего рода клон Altair 8800. Я отчетливо помню, что происходит, когда небольшая загрузочная программа вводилась с помощью тумблеров и выполнялась нажатием кнопки. Программа считывает вторую загрузочную программу, содержащуюся в первой дорожке дискеты, и перезаписывает ее на себя таким образом, что вторая загрузочная программа начинает выполняться для загрузки операционной системы диска. Я думаю, что термин «начальная загрузка» относится к этому процессу, когда первая загрузочная программа читает и перезаписывает вторую загрузочную программу на себя, таким образом, «подтягивая себя» с дополнительными функциями второй загрузочной программы.
источник
Будучи скромным новичком в мире программирования и, просматривая все ответы здесь, после того, как увидел, что это слово использовалось, по-видимому, немного по-разному в разных местах, я обнаружил, что читал страницу Википедии по начальной загрузке (да! Я не думал о это либо на первый взгляд) очень информативно, чтобы понять различия в использовании этого слова. Может ли это быть ...... в крайне редких случаях ...... Википедия может даже лучше объяснить некоторые термины, чем .... (отредактировано)? Будут ли они приносить очки репутации в Википедии?
Мне кажется, что все значения имеют какое-то отношение: начните с чего-то настолько простого, насколько это возможно, Thing1, сделайте что-то немного более сложным с этим Thing2, и теперь вы можете использовать Thing2 для выполнения каких-то задач более эффективно и быстро, чем вы могли бы первоначально с Thing1. Затем повторите с Thing2 до Thing 3 до бесконечности ...
Я считаю, что это тесно связано как с биологической эволюцией, так и со «Слоями абстракции» (новички вроде меня, гм, Википедия, кашель) - эволюция компьютеров 1940-х годов с переключателями, машинным кодом, сборкой, C, Python, AI, которые вы можете дать всевозможные сложные инструкции, такие как "приготовить ужин% 4 ^% к моим требованиям по умолчанию и ^ $% и вымыть пол%% £ £" @: ~ "на пьяном сленге на английском или племенном диалекте Амазонки без них, что вызывает исключение '(для новичков снова ... вы уже догадались) - пропустил много ссылок там из-за простого невежества.
Тогда в определенных специфических значениях программного обеспечения: Значение 1: Thing1 используется для загрузки последней версии Thing2 (потому что, конечно, Thing2 будет больше, чем Thing1, точно так же, как Thing3 будет больше, чем Thing2).
Значение 2: Thing1 - это язык более низкого уровня (ближе к 1001011100 .... 011001, чем print («Hello», user.name)), используемый для написания чуть более высокого языка Thing2, тогда этот маленький кусочек Thing2 используется для расширения самого Thing2 с уровня словарного запаса ребенка до уровня словарного запаса взрослого (Thing2 начинает обрабатываться или использовать правильный технический термин «скомпилированный» по самой детской версии (это умный ребенок!), тогда как детская версия Thing2 Само собой, конечно, может быть скомпилировано только Thing1, потому что он не может существовать до того, как он существует, верно!), тогда дочерняя версия Thing2 компилирует версию Thing2 для Surly Teenager, после чего сообщество программистов решает, есть ли у Surly Teenager «проблемы» ( термин программного обеспечения и термин метафора!) стоит потратить достаточно времени, чтобы принять долгосрочное решение,или отказаться от них (не уверен, где провести аналогию здесь).
Если да, то у Thing2 сама «Bootstrapped» (возможно, несколько раз) от детства до зрелого возраста: «ребенок - отец мужчины» (Wordsworth, советуем не пытаться искать цитату или автора в переполнении стека) ,
источник