MacsBug es un nivel bajo ( lenguaje ensamblador / máquina-nivel) depurador para el Mac OS clásico ( Macintosh sistema operativo). MacsBug es un acrónimo de M OTOROLA A dvanced C omputer S ISTEMAS De bug ger , en contraposición a depurador Macintosh (El Motorola 68000 microprocesador se imprime con el acrónimo MACSS [1] ). La versión original fue desarrollada por Motorola como un depurador general para sus sistemas 68000 ; fue portado a Mac como una herramienta de programación al principio del desarrollo del proyecto.
Desarrollador (es) | computadora Apple |
---|---|
Versión inicial | 1981 |
Lanzamiento estable | 6.6.3 / 14 de septiembre de 2000 |
Sistema operativo | Mac OS clásico |
Plataforma | 680x0 y PowerPC |
Tipo | depurador |
Sitio web | desarrollador |
MacsBug se invoca presionando la " Tecla de programador " de Macintosh o, como se conoció más tarde, la "Tecla de interrupción" o presionando "Comando-Encendido". MacsBug ofrece muchos comandos para desensamblar , buscar y ver datos, así como controlar los registros del procesador . MacsBug no se instala por defecto con Mac OS, aunque todos los Macintosh desde Macintosh Plus incluyen un depurador en ROM conocido como MicroBug. [2]
Los usuarios que se topan con MacsBug por accidente solo necesitan ingresar G y presionar Intro para escapar de MacsBug; sin embargo, MacsBug no se instala de forma predeterminada, lo que requiere una extensión del sistema, por lo que un entorno de usuario típico no lo incluye. Sin embargo, los usuarios finales lo instalaron ocasionalmente para proporcionar una recuperación de errores muy básica. Como el Mac OS clásico carecía de protección de memoria , no eran infrecuentes los "fallos duros", en los que la caída de una aplicación simplemente congelaba todo el sistema. Con MacsBug instalado, en lugar de un sistema que no responde, el usuario sería arrojado a MacsBug, donde podría escribir ES para salir a Shell (forzar el cierre de la aplicación bloqueada y regresar al Finder ) o RB para ReBoot, que reinicia el sistema. [3] Estos esfuerzos de recuperación a menudo no tuvieron éxito, con la única alternativa un restablecimiento completo .
En Mac OS versiones 7.5 y posteriores, la presencia de MacsBug se indica al inicio; está presente si el usuario ve el texto Debugger instalado (aunque, ocasionalmente, esto puede indicar la presencia de otra pieza de software cargada en el área de memoria reservada para el depurador).
MacsBug fue originalmente para la serie de procesadores Motorola 68000 solamente. Cuando Apple introdujo el Power Macintosh en 1994, fue seguido por un MacsBug actualizado que admitía el conjunto de instrucciones y la arquitectura de PowerPC .
La última versión de MacsBug fue 6.6.3, lanzada el 14 de septiembre de 2000. Esta versión final funciona con todas las máquinas lanzadas en el período de julio a septiembre de 2000, incluida la Power Mac G4 (uni y multiprocesador), Power Mac G4 Cube , la familia iMac (Ruby, Indigo, Sage, Graphite y Snow) y la familia iBook (Indigo, Key Lime y Graphite).
6.6.3 incluye un mejor soporte para depurar tareas MP y corrige algunos errores graves en los comandos de configuración de la memoria cuando se usa en el espacio de E / S PCI . También se puede usar en Classic cuando se ejecuta en Mac OS X, donde se invoca presionando "⌘-⏏" (o "⌘-F12" en sistemas sin una tecla de expulsión).
Mac OS X permite a los programadores utilizar comandos conocidos de MacsBug en gdb . Este complemento de gdb se incluye con las herramientas de desarrollo de OS X, ubicadas en el directorio / usr / libexec / gdb / plugins / MacsBug /.
Las alternativas de terceros a MacsBug incluían TMON de ICOM Simulations , que venía con el área de usuario extendida y la disciplina de trampa de Darin Adler (que permite verificar todos los parámetros de la API de Mac documentados) y el depurador Jasik completamente simbólico , que era mucho más poderoso, pero más difícil de usar. debido a la interfaz de usuario intrincada y no estándar.
Referencias
- ^ "Imagen: L_Motorola-XC68000L% 20 (SN807) .jpg, (890 × 425 px)" . cpu-world.com . Consultado el 2 de septiembre de 2015 . CS1 maint: parámetro desalentado ( enlace )
- ^ Karl Dandenell (11 de febrero de 2001). "TN 1136: MicroBug: El depurador de ROM" (PDF) . Consultado el 2 de septiembre de 2015 . CS1 maint: parámetro desalentado ( enlace )
- ^ https://developer.apple.com/tools/debuggers/MacsBug/Documentation/MacsBugRef_6.2.pdf Archivado el 5 de junio de 2011 en Wayback Machine