Nano-X (Microwindows)
Mais informações
- Criado por
- Greg Haerr
- Ano
- 1999
- Tipo
- Sistema de janelas
- Licença
- MPL / GPL
- Código-fonte
- github.com/ghaerr/microwindows
O minúsculo sistema de janelas para Linux embarcado que desenha direto no framebuffer e oferece duas APIs ao mesmo tempo, uma parecida com a Win32 e outra com a Xlib — rebatizado de Microwindows depois que a Microsoft entrou em contato.
Greg Haerr começou o Microwindows em 1999 para pôr gráficos em handhelds e eletrodomésticos onde o X11 não cabia. O sistema inteiro, com servidor, drivers e fontes, ocupava algumas centenas de quilobytes e rodava no framebuffer do Linux, mas também no RTEMS, no eCos e dentro de uma janela num display X para quem estava desenvolvendo. O estranho era a dualidade. A API Microwindows imitava a Win32, com HWND e GetDC, de modo que programas simples de Windows podiam ser recompilados; a API Nano-X partia do mini-X de David Bell, de 1991, e parecia uma Xlib enxuta, com funções como GrNewWindow, com sua própria divisão cliente–servidor por socket e um pequeno gerenciador de janelas, o nanowm.
O Agenda VR3, o primeiro handheld com Linux, em 2001, rodava Microwindows com um FLTK adaptado por cima, e o sistema apareceu numa série de dispositivos chineses e japoneses. Em 2005 o projeto se rebatizou como Nano-X Window System depois que a Microsoft deu a entender que "Windows" era dela. A concorrência da variante embarcada do Qt e de um X.Org encolhido na forma do KDrive levou então a maior parte do mercado, mas o código ainda é mantido e continua sendo um dos exemplos mais legíveis de como um sistema de janelas é de fato construído.