Bootstrapping

La paraula anglesa bootstrapping és generalment un terme utilitzat per descriure l'arrencada, o procés d'inici de qualsevol ordinador. Sol referir-se al programa que arrenca un sistema operatiu com per exemple GRUB, LiLo (utilitzats en sistemes GNU/Linux, per exemple), BCD o NTLDR (utilitzats en sistemes Windows). S'executa després del procés POST (power-on-self-test) del BIOS. També és anomenat «Boot loader» (carregador d'inici).

Procés d'arrencada

[modifica]

Quan un equip s'encén:

  1. S'executa el POST, que es troba a l'adreça F000:FFF0, que pertany al ROM-BIOS, destinada a realitzar una sèrie de tests i inicialitzacions dels components electrònics connectats (maquinari).
  2. Es carrega del disc primari el primer sector (cilindre 0, cap 0, sector 1) a l'adreça 0000:7C00 (7C00 lineal).
  3. Es comprova que contingui codi vàlid (ha d'estar signat amb els valors 0x55 i 0xAA en bytes a les posicions 511 i 512 respectivament), en aquest cas se salta a aquesta adreça (on apunta CS:IP).

Entorns de programació

[modifica]

El bootstrapping també pot referir-se al procés mitjançant el qual s'han desenvolupat entorns de programació cada vegada més complexos a partir d'uns altres més simples. L'entorn més simple seria, potser, un editor de textos molt senzill (p. ex. ed) i un programa assemblador. Utilitzant aquestes eines, es pot escriure un editor de text més complex i un compilador simple per a un llenguatge de més alt nivell i així successivament, fins a obtenir un entorn de desenvolupament integrat i un llenguatge de programació de molt alt nivell.

Components d'un sistema

[modifica]

També, per exemple, és conegut aquest terme, quan es «construeix» un sistema sencer a partir dels seus components bàsics, o bé, de prèvies versions precompilades d'aquests components, com per exemple una instal·lació via «stage1» de Gentoo Linux o 'net install' de Debian.