![Page 1: 1 uCLinux Mônica L. M. Corrêa Rafael Matone Chanin Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática Programa de Pós-Graduação](https://reader036.vdocuments.com.br/reader036/viewer/2022062318/552fc10c497959413d8c338f/html5/thumbnails/1.jpg)
1
uCLinux
Mônica L. M. CorrêaRafael Matone Chanin
Pontifícia Universidade Católica do Rio Grande do SulFaculdade de Informática
Programa de Pós-Graduação em Ciência da Computação
![Page 2: 1 uCLinux Mônica L. M. Corrêa Rafael Matone Chanin Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática Programa de Pós-Graduação](https://reader036.vdocuments.com.br/reader036/viewer/2022062318/552fc10c497959413d8c338f/html5/thumbnails/2.jpg)
2
Agenda
• Introdução• Unidade de Gerenciamento de Memória (MMU)• Alocação de memória do uCLinux• Diferenças entre Linux e uCLinux• Desenvolvendo aplicações• Utilização do uCLinux • uCLinux no kernel 2.6• Plataformas suportadas• Conclusão• Referências Bibliográficas
![Page 3: 1 uCLinux Mônica L. M. Corrêa Rafael Matone Chanin Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática Programa de Pós-Graduação](https://reader036.vdocuments.com.br/reader036/viewer/2022062318/552fc10c497959413d8c338f/html5/thumbnails/3.jpg)
3
Introdução
• Popularização do Linux;• Desenvolvimento de sistemas embarcados;• Microprocessadores sem MMU;• uCLinux - suprir esta demanda.
uCLinux• Microprocessador sem MMU é mais barato;• Kernel < 512 KB;• Kernel + utilitários < 900 KB;• Distribuição gratuita;• Todas as vantagens do Linux.
![Page 4: 1 uCLinux Mônica L. M. Corrêa Rafael Matone Chanin Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática Programa de Pós-Graduação](https://reader036.vdocuments.com.br/reader036/viewer/2022062318/552fc10c497959413d8c338f/html5/thumbnails/4.jpg)
4
MMU
Unidade de Gerenciamento de Memória (MMU)
• Responsável pelo mapeamento de endereços de memória virtuais em endereços físicos.
• Permite aplicações maiores do que a memória do sistema.
• Permite executar concorrentemente mais processos do que a memória física suporta (swap).
• Oferece proteção de memória.
• Custo do hardware.
![Page 5: 1 uCLinux Mônica L. M. Corrêa Rafael Matone Chanin Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática Programa de Pós-Graduação](https://reader036.vdocuments.com.br/reader036/viewer/2022062318/552fc10c497959413d8c338f/html5/thumbnails/5.jpg)
5
MMU
CPU
MMU
Memória
Barramento
MMU envia endereço físico para memória
CPU envia o endereço virtual para MMU
![Page 6: 1 uCLinux Mônica L. M. Corrêa Rafael Matone Chanin Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática Programa de Pós-Graduação](https://reader036.vdocuments.com.br/reader036/viewer/2022062318/552fc10c497959413d8c338f/html5/thumbnails/6.jpg)
6
Alocação de memória do uCLinux
• Processos devem utilizar endereçamento relativo;
• Uma aplicação que necessita mais memória do que há disponível, é suspensa (não deve ocorrer!!!);
• Idealmente não utiliza alocação de memória dinâmica.
• Espaço de endereçamento de processos é contíguo.
• Problema de fragmentação da memória.
![Page 7: 1 uCLinux Mônica L. M. Corrêa Rafael Matone Chanin Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática Programa de Pós-Graduação](https://reader036.vdocuments.com.br/reader036/viewer/2022062318/552fc10c497959413d8c338f/html5/thumbnails/7.jpg)
7
Diferenças entre Linux e uCLinux
• Linux não suporta processadores sem MMU;
• Tamanho do Kernel;
• uCLinux não implementa as chamadas de sistemas fork() e brk().
• uCLinux não oferece proteção de memória;
• uCLinux não oferece memória virtual.
![Page 8: 1 uCLinux Mônica L. M. Corrêa Rafael Matone Chanin Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática Programa de Pós-Graduação](https://reader036.vdocuments.com.br/reader036/viewer/2022062318/552fc10c497959413d8c338f/html5/thumbnails/8.jpg)
8
Desenvolvendo aplicações
• uCLibc oferece a maioria das funcionalidades utilizadas por programas C para Linux;
• uCLibc pode incorporar novas funcionalidades;
• Programador deve ter cuidado ao desenvolver aplicações, pois não há proteção de memória.
![Page 9: 1 uCLinux Mônica L. M. Corrêa Rafael Matone Chanin Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática Programa de Pós-Graduação](https://reader036.vdocuments.com.br/reader036/viewer/2022062318/552fc10c497959413d8c338f/html5/thumbnails/9.jpg)
9
Utilização do uCLinux
• Roteadores;• Web cam;• DVD;• Palms.
uClinux no Real Palm IIIx
![Page 10: 1 uCLinux Mônica L. M. Corrêa Rafael Matone Chanin Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática Programa de Pós-Graduação](https://reader036.vdocuments.com.br/reader036/viewer/2022062318/552fc10c497959413d8c338f/html5/thumbnails/10.jpg)
10
uCLinux no kernel 2.6
• Versões anteriores do Linux necessitavam de um patch para gerar a imagem do uCLinux;
• Kernel 2.6 incorpora as funcionalidades oferecidas pelo uCLinux (para a maioria das plataformas).
![Page 11: 1 uCLinux Mônica L. M. Corrêa Rafael Matone Chanin Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática Programa de Pós-Graduação](https://reader036.vdocuments.com.br/reader036/viewer/2022062318/552fc10c497959413d8c338f/html5/thumbnails/11.jpg)
11
Plataformas suportadas
• ARM;
• MIPS;
• SPARC;
• SH;
• ETRAX.
![Page 12: 1 uCLinux Mônica L. M. Corrêa Rafael Matone Chanin Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática Programa de Pós-Graduação](https://reader036.vdocuments.com.br/reader036/viewer/2022062318/552fc10c497959413d8c338f/html5/thumbnails/12.jpg)
12
Conclusão
• Solução barata para sistemas simples:
- sistema monousuário;
- aplicações pré-definidas e de tamanho conhecido;
- não há necessidade de MMU.
Características de muitos sistemas embarcados!
![Page 13: 1 uCLinux Mônica L. M. Corrêa Rafael Matone Chanin Pontifícia Universidade Católica do Rio Grande do Sul Faculdade de Informática Programa de Pós-Graduação](https://reader036.vdocuments.com.br/reader036/viewer/2022062318/552fc10c497959413d8c338f/html5/thumbnails/13.jpg)
13
Referências Bibliográficas
www.uclinux.org
www.arcturusnetworks.com/uclinux.shtml
www.linuxdevices.com/links/LK8053710489.html