首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >什么是bootstrapping?

什么是bootstrapping?
EN

Stack Overflow用户
提问于 2009-08-10 12:16:29
回答 14查看 316.1K关注 0票数 728

我不断看到在讨论应用程序开发时提到“引导”。它看起来既广泛又重要,但我还没有遇到一个关于bootstrapping实际上是什么的糟糕的解释;相反,似乎每个人都应该知道它的含义。不过,我不这么认为。据我所知,这与应用程序在启动时所需的初始化任务有关,但我可能完全错了。有人能帮我理解这个想法吗?

EN

回答 14

Stack Overflow用户

回答已采纳

发布于 2009-08-10 12:21:35

"Bootstrapping“来自于”靠自己的引导把自己拉起来“这个术语。这就是你能从Wikipedia得到的。

在计算中,引导加载程序是机器启动时运行的第一段代码,负责加载操作系统的其余部分。在现代计算机中,它存储在ROM中,但我记得在PDP-11上的引导过程,您可以通过前面板开关插入位,将特定的磁盘段加载到内存中,然后运行它。不用说,引导加载程序通常非常小。

"Bootstrapping“也被用作使用自身构建系统的术语--或者更准确地说,是使用以前的版本。例如,ANTLR版本3是使用在ANTLRVersion2中开发的解析器编写的。

票数 358
EN

Stack Overflow用户

发布于 2009-08-10 16:13:46

bootstrapping的一个例子是在一些web框架中。您调用index.php (引导程序),然后它加载框架的帮助器、模型、配置,然后加载控制器并将控制权交给它。

正如您所看到的,它是一个启动大型进程的简单文件。

票数 309
EN

Stack Overflow用户

发布于 2017-12-19 01:58:16

术语"bootstrapping“通常适用于系统依赖于自己启动的情况,类似于鸡和蛋的问题。

例如:

  • 如何编译用C编写的C编译器?
  • 如果尚未运行操作系统,如何启动操作系统初始化过程?
  • 如何启动分布式(点对点)系统,其中客户端依赖于其当前已知的对等点来了解系统中的新对等点?

在这种情况下,自举是指一种打破循环依赖的方式,通常在外部实体的帮助下,例如

  • 您可以使用其他C编译器编译(引导)您自己的编译器,然后可以使用它重新编译自身
  • 您可以使用单独的代码来设置初始过程,而无需依赖OS
  • 提供的任何函数您可以使用初始对等节点的硬编码列表或提供对等节点列表

的硬编码跟踪器URL

等。

票数 95
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1254542

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档