Constituição de Grupos, Projecto e Turnos de Laboratório

P: Posso fazer o projecto sozinho?

R: Contrariamente aos anos anteriores, os projectos de IAED este ano serão feitos individualmente pelo que TEM DE fazer o projecto sozinho.

P: Existirá discussão do projecto?

R: Este ano IAED substituirá as discussões de projecto por testes práticos individuais. A nota da componente prática da avaliação terá em conta tanto a avaliação do projecto submetido como o resultado obtido no teste prático. Ver secção Métodos de Avaliação para mais informações.

P: Posso assistir a uma aula de laboratório em que não estou inscrito?

Não. Apenas os alunos inscritos podem assistir à aula de laboratório. Estas aulas funcionarão como aulas de apoio a cada aluno, o mais personalizadas possível. O excesso de alunos para além do previsto torna impossível este apoio individualizado.

P: A minha situação é muito especial e não está contemplada nesta FAQ. O que devo fazer?

R: Contactar o responsável da cadeira (email: reis.santos@tecnico.ulisboa.pt).

Linux e laboratórios

P: O que posso encontrar nos laboratórios?

R: Os computadores disponíveis nos laboratórios têm em geral uma distribuição de Linux instalada, em que os ficheiros de cada utilizador são guardados num sistema de armazenamento central ao IST e, portanto, os ficheiros de cada utilizador estão disponíveis de forma transparente em qualquer computador nos laboratórios ou em qualquer servidor integrado neste sistema. Para que um utilizador do IST consiga aceder aos computadores nos laboratórios, e também aos servidores disponíveis, terá de activar pelo menos os serviços de shell e afs no self service da DSI. Depois de activar estes serviços, passamos a ter acesso ao ambiente de desenvolvimento utilizado em IAED. Para termos também acesso a partir do nosso computador pessoal bastará utilizar um cliente de ssh ou um cliente de sftp.

P: Que ferramentas vamos utilizar em IAED?

R: 1) um compilador de C, nomeadamente o GCC; 2) uma ferramenta de depuração, GDB (a interface gráfica DDD pode também ser útil e está disponível nos computadores dos laboratórios); 3) uma ferramenta de depuração e verificação de memória, valgrind.

Para além destas ferramentas teremos de utilizar um editor de texto. Qualquer editor de texto serve para o que pretendemos. Aqui ficam alguns exemplos: Geany, Sublime-text, Kate, Gedit, Emacs, vi, etc.

Sugerimos que quem opte por trabalhar remotamente num dos servidores e que não tenha experiência com editores de texto mais avançados, utilize o editor de texto nano.

P: Como posso instalar o Linux no meu computador pessoal?

R: Poderá fazer Download do DVD de instalação (para aprender a gravar um DVD consulte este link) e seguir as instruções de instalação. Sugerimos aqui a instalação da distribuição Ubuntu, ou OpenSuse que é a que se encontra instalada nos computadores dos laboratórios, mas poderá utilizar qualquer outra distribuição da sua preferência. Se encontrar problemas a fazer boot a partir do DVD verifique as notas disponíveis aqui. Outras alternativas: USB installer; experimentar sem instalar; windows ubuntu installer.

P: Problemas com dual boot Windows + Ubuntu?

R: Vários colegas têm tido alguns problemas com dual-boot Windows 10 + Ubuntu. Uma das formas encontradas para resolver o problema consiste na utilização do efibootmgr (sudo apt-get install efibootmgr). Com o recurso ao comando (sudo efibootmgr) obtem a lista de arranque por ordem de prioridade que por sua vez poderá ser alterada através do comando (sudo efibootmgr -o x, 1) sendo o x a posição correspondente ao SO Ubuntu nessa lista. Não resolve todos os problemas, mas poderá ajudar em alguns casos.

P: Gostava de aprender mais sobre o Linux. Recomenda algum material online específico sobre o assunto?

R: Recomendamos por exemplo este curso. Dito isto, a web está repleta de cursos interessantes sobre o assunto. A dificuldade está mesmo na escolha...

P: Tenho um Mac. Preciso de instalar o Linux?

R: Não. O OS X é um sistema operativo que possui todos os recursos básicos Unix acessíveis por meio de uma interface de linha de comando (ver aplicação Terminal). Para instalar o compilador GCC, instale os pacotes Xcode e Xcode Command Line Tools. Há vários editores de texto simples onde poderá escrever confortavelmente o seu código (Geany, Sublime Text, TextMate, Aquamacs, etc., ver em baixo)

P: Posso escrever código C em ambiente Windows?

R: Sim, mas não recomendamos no contexto desta unidade curricular. A versão do compilador será diferente daquele que será utilizado para analisar o seu projecto. Também poderá encontrar pequenas diferenças no Input/Output dos programas discutidos nas teóricas e não utilizará as ferramentas da linha de comandos sugeridas ao longo do semestre. Por fim, perde a oportunidade de aprender a utilizar um sistema operativo que lhe será útil em disciplinas futuras. Se mesmo assim optar pelo ambiente windows, p.f. não se esqueça de testar os seus projectos numa máquina Linux antes de os submeter.

P: Como posso então desenvolver o meu trabalho de IAED continuando a usar o ambiente Windows?

R: Uma possível solução é instalar uma máquina virtual Linux num ambiente Windows. Para isso necessita de um software de virtualização, um hypervisor, por exemplo VirtualBox (open-source) ou VMWare Fusion (VMWare), e uma qualquer distribuição Linux.

Um tutorial de como instalar uma VM Linux em VirtualBox pode ser encontrado aqui. Em VMWare Fusion o processo é semelhante.

Sistema de submissão de projectos (Mooshak)

P: O nome de utilizador e password serão os mesmos para as diferentes entregas do projecto?

R: Sim. Não é necessário pedir nova password para as entregas seguintes do projecto. No caso de perda da password, é possível pedir outra no link fornecido.

P: Qual é o meu nome de utilizador?

R: O nome de utilizador tem o formato tgNNNNN onde NNNNN é o número do aluno.

P: Fiz uma submissão há pouco tempo e quero fazer outra, mas o sistema não reconhece a nova submissão. Porquê?

R: Existe um tempo mínimo de 15 minutos entre submissões do mesmo utilizador. Aguarde esse tempo e tente novamente.