Tornar o aluno capaz de analisar, projetar, implementar, implantar e modificar programas de sistema, cuja fundamentação tenha sido previamente estudada na disciplina teórica: carregadores (loaders), descarregadores (dumpers), montadores (assemblers), bibliotecas, relocadores, ligadores (linkers), editores, expansores de macros.Como resultado concreto, ao final desta disciplina, cada aluno deverá ter adquirido a experiência da especificação, projeto e construção de protótipos realísticos e operantes de todos os programas de sistema aqui estudados.
Para cumprir sua função de fornecer ao aluno a componente prática correspondente ao conteúdo da disciplina pré-requisito, Sistemas de Programação, logo ao seu início deste laboratório, é necessário que o aluno esteja na posse de todos os projetos desenvolvidos na disciplina teórica, os quais deverão subsidiar a implementação, integração e uso dos programas de sistema aqui considerados: carregadores (loaders), descarregadores (dumpers), montadores (assemblers), bibliotecas, relocadores, ligadores (linkers), editores, expansores de macros.
1. Uso, nas atividades de implementação desta disciplina, dos programas de sistema já construídos anteriormente pelo aluno na disciplina pré-requisito: simulador da máquina virtual, monitor básico, loader absoluto e dumper absoluto.2. Projeto e implementação de um montador de linguagem simbólica absoluta.3. Modificação do montador absoluto para suportar uma linguagem simbólica relocável.4. Implementação do ligador e do relocador já projetados anteriormente.5. Implementação de programas de sistema, já projetados anteriormente: editor de textos simples, e expansor de macros simples.6. Implementação da extensão, já projetada anteriormente, ao montador relocável disponível, para fornecer suporte a macros na linguagem simbólica relocável.
1. Leland L. Beck, "An introduction to systems programming" 3rd edition, Addison Wesley, 1997 ISBN 0321211774, 9780321211774.2. Nisan, N. and S. Schocken “The elements of Computing Systems” The MIT Press, 2005. ISBN 978-0-262-64068-8.3. Salomon, D. “Assemblers and Loaders” – Prentice Hall, 1993 – ISBN 0130525642, 13 9780130525642.4. Calingaert, P. “Program Translation Fundamentals: Methods and Issues”, Rockville, MD.: Computer Science Press, 1988, 366 pp.5. Brian W. Kernighan, P. J. Plauger "Software tools in Pascal" Addison-Wesley, 1981 ISBN 0201103427 B04062001.6. Calingaert, P. “Assemblers, Compilers, and Program Translation”, Potomac, MD: Computer Science Press, 1979, 270 pp.7. Halstead “A Laboratory Manual for Compiler and Operating System” - American Elsevier, New York, 19758. Presser, L. and J. R. White “Linkers and Loaders”, ACM Computing Surveys 4,3 (Sep. 1972) 149–167.9. Kent, W. “Assembler Language Macroprogramming”, ACM Computing Surveys 1,4 (Dec. 1969) 183–196.10. Barron, D. W. “Assemblers and Loaders”, 3rd ed., New York, N.Y.: American Elsevier 1968.