Programação Sistemas Computacionais



Documentos relacionados
Programação Sistemas

GUIA DE FUNCIONAMENTO DA UNIDADE CURRICULAR

CONCEITOS BÁSICOS DE UM SISTEMA OPERATIVO

Um sistema SMS 1 simplificado

Introdução à Programação B Licenciatura em Engenharia Informática. Enunciado do trabalho prático. Quem quer ser milionário? 20 de Dezembro de 2007

Componente de Formação Técnica. Disciplina de

Arquitecturas de Software Licenciatura em Engenharia Informática e de Computadores

E B I / J I d e T Á V O R A

Departamento de Informática Código de Ética do Estudante do Departamento de Informática da FCT/UNL (Versão 1.0)

Manual de utilização do Moodle

Programação de Sistemas

Programação de Sistemas

Relatório Preliminar de. Projecto em Contexto Empresarial I. VoIP Desenvolvimento de Aplicações em Plataformas Open Source

COMPUTAÇÃO e PROGRAMAÇÃO

PADI Plataformas para Aplicações Distribuídas na Internet

Apresentação do programa e bibliografia; Regras de funcionamento e de avaliação; Organização interna de um computador

Arquitetura de Sistemas Operativos

Engenharia de Software Sistemas Distribuídos

Curso básico em técnicas de Manutenção para activistas comunitários

Estrutura e Funcionamento de um Computador

Capítulo 8. Software de Sistema

Virtualização Gerencia de Redes Redes de Computadores II

SIS17-Arquitetura de Computadores

1.3. Componentes dum sistema informático HARDWARE SOFTWARE

Introdução aos Sistemas Operativos

SISTEMAS OPERACIONAIS. Maquinas Virtuais e Emuladores

Ação de Formação TRABALHAR NA NUVEM 2.0. Formador Dr. João Paulo Fonseca Abril: 8 e 22 Maio: 6 e 20 Junho: 3 e 29

Referencial do Módulo B

Avanços na transparência

Computadores Portáteis. Regulamento de utilização

SISTEMAS DISTRIBUÍDOS

Introdução aos Sistemas da InformaçãoAula 4 p. 1

UNIDADE 1 TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO

Programa de Parcerias e Submissão de Propostas 2014/15

academia portuguesa de seguros

Relatório SHST

Sistemas Operacionais 1/66

REGULAMENTO TRABALHO DE CONCLUSÃO DE CURSO

TUTORIAL PARA UTILIZAÇÃO DA PLATAFORMA LMS

FICHA TÉCNICA DO CURSO FOTOGRAFIA DIGITAL E PÓS-PRODUÇÃO DE IMAGEM EDIÇÃO Nº 01/2012

Sistemas Operacionais. Roteiro. Sistemas de Computadores. Os sistemas de computadores são projetados com basicamente 3 componentes: Marcos Laureano

O 1º Ciclo do Ensino Básico é um espaço privilegiado onde se proporcionam aos alunos aprendizagens mais ativas e significativas,

SISTEMAS INFORMÁTICOS

Instituto Superior Técnico MEEC/MEAR. Programação de Sistemas

Esclarecimento: Não, a operação de matching ocorre no lado cliente da solução, de forma distribuída.

ESTUDO DE CASO WINDOWS VISTA

Guia de Acesso à Formação Online Formando

BOAS PRÁTICAS PEDAGÓGICAS. Faculdade de Farmácia da Universidade do Porto. Índice Introdução Provas Escritas... 2

Projeto CONDIGITAL Mergulhando na Função Guia do Professor

ferramentas e funcionalidades básicas

Sistemas Operacionais Gerência de Dispositivos

INICIAÇÃO À INVESTIGAÇÃO CIENTÍFICA I E II

Introdução aos Computadores

Manual de Procedimentos POSI-E3

UNIVERSIDADE CATÓLICA PORTUGUESA

PLANO DE ENSINO DA DISCIPLINA

Prof. Sandrina Correia

PORTO EDITORA AREAL EDITORES LISBOA EDITORA. Manual do Utilizador. Aluno.

Grupo I [4v] executaprograma();

Memória. Espaço de endereçamento de um programa Endereços reais e virtuais Recolocação dinâmica Segmentação

CONSIDERAÇÕES SOBRE USO DO SOFTWARE EDUCACIONAL FALANDO SOBRE... HISTÓRIA DO BRASIL EM AULA MINISTRADA EM LABORATÓRIO DE INFORMÁTICA

ICORLI INSTALAÇÃO, CONFIGURAÇÃO E OPERAÇÃO EM REDES LOCAIS E INTERNET

Formação: o Bacharel em Sistemas de Informações (SI); o MBA em Tecnologia da Informação e Comunicação (TIC).

Guia de Acesso à Formação Online Formando 2011

Modelo de Trabalho de Culminação de Estudos na Modalidade de Projecto de Pesquisa

Curso Técnico de Informática de Sistemas

Programação

PVANET: PRINCIPAIS FERRAMENTAS E UTILIZAÇÃO DIDÁTICA

Curso EFA Técnico/a de Informática - Sistemas. Óbidos

Planificação Anual da disciplina de TIC 9ºANO

UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO PRÓ-REITORIA DE ENSINO DE GRADUAÇÃO

Manual de Infraestrutura para Alunos

O que é Gestão de Projetos? Alcides Pietro, PMP

Bem-vindo ao nosso mundo virtual! Guia do Portal de Ensino à Distância da Get Training 1

Programação 2ºSemestre MEEC /2011. Programação 2º Semestre 2010/2011 Enunciado do projecto

O Social pela Governança. Mestrados Profissionalizantes Planos Curriculares Empreendedorismo

Indicie. 1.Introdução Como Surgiu Para que serve Instalação Oque ele permite fazer Primeiro Cenário...

Apresentação. Nossa sugestão é que você experimente e não tenha medo de clicar!!!

BRAlarmExpert. Software para Gerenciamento de Alarmes. BENEFÍCIOS obtidos com a utilização do BRAlarmExpert:

REFORÇO DE PROGRAMAÇÃO ESTRUTURADA EM LINGUAGEM C PARA GRADUAÇÃO EM ENGENHARIA ELÉTRICA

2-Introdução e Conceitos Básicos das TIC

PROJ. Nº LLP NL-ERASMUS-ECUE

NCE/10/00116 Relatório final da CAE - Novo ciclo de estudos

OFICIAL DA ORDEM MILITAR DE CRISTO MEDALHA DE EDUCAÇÃO FÍSICA E BONS SERVIÇOS. Circular n.º 029/2014 PORTAL FPT Abertura aos atletas

REGULAMENTO DE REALIZAÇÃO DE CURSOS DE FORMAÇÃO PÓS-GRADUADA NO ISA

Ajuda ao SciEn-Produção O Artigo Científico da Pesquisa Experimental

NOTIFICAÇÃO DE NEGÓCIO

Akropole Catequista. Todos os Ficheiros no Akropole Catequista trabalham com uma simples barra de edição, com 4 botões:

Cursos da Escola de Engenharias e Ciências Exatas - UnP

Transcrição:

Programação Sistemas Computacionais LEE - 2013/14 Os acetatos foram escritos de acordo com a ortografia antiga Programação de Sistemas Introdução : 1/22

Enquadramento Disciplina no semestre de primavera dos seguintes cursos: LEE [Licenciatura Engª Electrónica], 1º ciclo - 3º ano, semestre inverno Precedência: Programação (1º ano) Programação de Sistemas Introdução : 2/22

Objectivos Apresentar conceitos de Programação de Sistemas Interacção directa com o sistema operativo da máquina Aumentar conhecimentos sobre o funcionamento, organização e interface do sistema Fomentar o desenvolvimento de projectos de índole sistémica. Explorar ferramentas e funcionalidades do sistema para boas prácticas de desenvolvimento e gestão de projectos. Programação de Sistemas Introdução : 3/22

Sistemas e Sistema Operativo [Def] Sistema: conjunto de partes dependentes umas das outras*. A disciplina aborda as seguintes partes, nos pontos de vista de arquitectura e de programação Sistema operativo do computador. Dispositivos de acesso ao exterior do computador. [Def] Sistema operativo: plataforma de software (conjunto de programas) de baixo nível que gere todas as aplicações (programas de utilizador) e implementa interface entre as aplicações e todos os componentes de hardware (discos, memória volátil RAM, monitor, portas de acesso à rede, ) * dicionário Porto Editora Programação de Sistemas Introdução : 4/22

Sistema Operativo/SO O SO é todo o código que o utilizador não necessita de escrever para desenvolver a aplicação. Melhor ainda, o utilizador não tem que se preocupar com os bits de controlo do hardware! Aplicação Aplicação Sistema operativo Hardware Máquina virtual Máquina física O SO pode ser visto como o código que transforma uma máquina física numa máquina virtual (i.e., independente do hardware) que disponibiliza recursos lógicos básicos ao desenvolvimento de aplicações. Programação de Sistemas Introdução : 5/22

Critérios e Objectivos para o SO Principais critérios a atingir na construção de um sistema operativo Desempenho: a utilização dos recursos físicos (CPU, memória, discos, ) que suportam os recursos lógicos (processos, ficheiros, ) deve eficiente. Segurança: utilizadores devem poder trabalhar isoladamente, mas os recursos lógicos devem poder ser partilhados. Facilidade: interface de programação deve ser simples para os utilizadores dos recursos lógicos Portabilidade: a máquina virtual deve poder ser instalada em máquinas físicas distintas. Por exemplo, o sistema operativo Linux é portado para mp Intel Core usado em computadores pessoais, mp ARM usado em telemóveis, e computadores de grande porte IBM, dedicados a cálculo numérico. Programação de Sistemas Introdução : 6/22

Programa-tópicos (1) Programa indicativo, que pode sofrer alterações pontuais (consultar planeamento e enunciados de laboratório) A. História e tipos de sistemas operativos [Cap. 1] B. Desenvolvimento de programas [Cap. 2] C. Processos e fluxos de execução ( threads ) [Cap. 3] D. Comunicação entre processos [Cap. 4] E. Sincronização de processos [Cap. 5] F. Sistema de ficheiros [Cap. 7] G. Gestão de memória e de dispositivos [Cap. 6 e 8] Programação de Sistemas Introdução : 7/22

Programa-tópicos (2) As aulas teóricas incluem componentes de programação. Alguns acetatos listam programas exemplo. Em 6 aulas teóricas os docentes orientam a resolução, por parte dos alunos, de exercícios. Nenhum aluno é avaliado e é normal que alunos proponham ideias incorrectas: o erro faz parte da aprendizagem! Calendário previsto: 1) Sem 3/2ª aula : lançamento/terminação processos. 2) Sem 4/2ª aula: lançamento/parâmetros/terminação threads. 3) Sem 5/2ª aula: criação e comunicação por tubos. 4) Sem 6/1ª aula: sinais e alarmes. 5) Sem 7/2ª aula: envio de uma mensagem entre 2 PCs por sockets. 6) Sem 9/2ª aula: sincronização de produtor/consumidor. Programação de Sistemas Introdução : 8/22

Laboratórios Decorrem no 1-15 Inscrições entregar folha com foto e o número de aluno na primeira aula pratica! Grupos de 3 alunos. Turnos limitados a 24 alunos. Aulas de laboratório iniciadas na semana 2. Semanas reservadas Entrega de uma ficha semanal na própria aula pratica. Ultima semana dedicada à defesa do trabalho. O sistema operativo adoptado é o Linux No laboratório usada a distribuição Ubuntu 10.4 Outras distribuições (RedHat, ) podem ser usadas sem problemas de maior. Programação de Sistemas Introdução : 9/22

Docentes Rui Ferreira Neves [rui.neves@ist.utl.pt] Nota: horários de dúvidas a afixar mais tarde na página da disciplina. Programação de Sistemas Introdução : 10/22

Avaliação (1) A. Laboratorial [3 valores] Ficha semanal entregue na própria aula. Enunciado sai uma semana antes. 1+7 fichas para entregar. O número pode vir a ser alterado. Grupos de 3 alunos, iguais aos alunos do projecto. Programação de Sistemas Introdução : 11/22

Avaliação (2) B. Projecto [7 valores] Grupo de 3 alunos. Enunciado previsto ser afixado na semana de 14 de Outubro (semana 5). Relatório final, entregue no dia 12 de Dezembro (semana 13) com defesa na semana 14. Em caso de pendura avaliado a 0. C. Teórica [10 valores] 2 exames Datas de exame: 1ª época 14 Janeiro, 2ª época 29 Janeiro Programação de Sistemas Introdução : 12/22

Avaliação (3) Notas mínimas no laboratório: 9,5 v Nota mínima no exame 8v. Dos exames e projecto dos anos anteriores são recuperados os resultados positivos. Alunos nessa situação enviar um email ao docente da cadeira. Nota: datas sujeitas a confirmação no Fenix. Programação de Sistemas Introdução : 13/22

Avaliação (4) Calendário previsto Enunciado projecto 1ºLab Rel projecto Defesa projecto 1º 2º Semanas 2 5 13 14 14J 29J Dias Projecto/Laboratórios Exames Programação de Sistemas Introdução : 14/22

Avaliação (5) Importante: Cerca de ¾ da avaliação incide sobre os capítulos 3,4 e 5: Totalidade do projecto. Totalidade da avaliação laboratorial. Parte muito significativa do exame [cerca de 6 valores]. Avaliação final cai nas seguintes gamas: NA : não avaliado nas duas componentes essenciais (exame e projecto). RE : não obteve nota mínima nas duas componentes. 5-20 : obteve nota mínima nas duas componentes. Programação de Sistemas Introdução : 15/22

Avaliação (6) Em PSis é essencial o conhecimento aprofundado de programação em C! PSis tem precedência de Programação. Muitos alunos também já frequentaram Algoritmos e Estruturas de Dados. ⅔ da avaliação foca na programação. Avaliação laboratorial 3 valores Projecto (grupo de 3 alunos) 7 valores Pergunta de desenvolvimento no exame (individual) 3.5 valores Programação de Sistemas Introdução : 16/22

Honestidade Académica (1) Nesta disciplina, espera-se de cada aluno que subscreva os mais altos padrões de honestidade académica. Isto significa que cada ideia que não seja do aluno deve ser explicitamente acreditada ao respectivo autor. O não cumprimento disto constitui plágio. O plágio inclui a utilização de ideias, código ou conjuntos de soluções de outros alunos ou indivíduos, ou quaisquer outras fontes para além dos textos de apoio à disciplina, sem dar o respectivo crédito a essas fontes. Nesta disciplina, o método de avaliação inclui vários testes, trabalhos, relatórios, etc. Os alunos são encorajados a discutir os problemas com outros alunos e devem mencionar essa discussão quando submetem os resultados. Essa menção NÃO influenciará a nota. Mas os alunos não deverão copiar código de outros alunos, ou dar o seu próprio código a outros em qualquer circunstância. De facto, não devem sequer deitar listagens fora sem primeiro as destruir, nem deixar o código desenvolvido em computadores de uso partilhado. Programação de Sistemas Introdução : 17/22

Honestidade Académica (2) A desonestidade académica inclui também a cópia em testes e exames. Nesta disciplina, estes devem ser feitos sem consulta, nem de qualquer texto, nem de outros colegas. Receber ou dar ajuda durante estas provas é um acto de desonestidade académica. Devem ser evitadas situações que possam dar azo a suspeitas de desonestidade (abrir as mochilas para buscar papel, olhar para todos os lados em vez de se concentrar na folha do exame, etc.). Nesta disciplina, a desonestidade académica é considerada fraude, com todas as consequências legais que daí advêm. Qualquer fraude terá como consequência imediata a reprovação de todos os alunos envolvidos (incluindo os que possibilitaram a ocorrência). Qualquer suspeita de desonestidade académica será relatada aos órgãos superiores da escola para instauração de um processo disciplinar. Este poderá resultar em reprovação à disciplina, reprovação de ano, suspensão temporária ou definitiva do IST ou mesmo da UTL. Programação de Sistemas Introdução : 18/22

Bibliografia (1) Advanced Programming in the UNIX Environment ; W. Richard Stevens, Stephen A. Rago; Addison-Wesley Preferencialmente usado nos laboratórios e no projecto. Programação de Sistemas Introdução : 19/22

Bibliografia (2) Modern Operating Systems; A.S. Tanenbaum; Prentice-Hall Particularmente útil na descrição dos conceitos base e seus enquadramentos. Programação de Sistemas Introdução : 20/22

Observações (1) Programação de Sistemas dá formação base em campos diversos de Engª Electronica: Redes de computadores. Interface entre computador e sistemas externos, estudada em maior profundidade nas AEs de Computadores, Controlo, Electrónica, Energia e Telecomunicações. Conteúdo extenso, abordando em simultâneo elementos distintos. Programação de Sistemas Introdução : 21/22

Observações (2) Acompanhe assiduamente a matéria teórica e laboratorial. Limitar-se ao download e olhar por cima não é suficiente, a assiduidade é fundamental! Leia acetatos antes das aulas teóricas e laboratoriais: provavelmente só vai perceber ⅓, mas vai-se mais longe partindo de ⅓, do que partindo de 0 ( candeia que vai à frente alumia duas vezes! ) e aprende a estudar por si, o que é muito vantajoso: na sua vida profissional não terá sempre um docente ao seu lado para explicar a matéria! a tese de mestrado (enquadramento, trabalho propriamente dito, conclusões e escrita da dissertação) será feita exclusivamente por si e não pelo seu orientador! Dúvidas melhor esclarecidas em horário de dúvidas, o mais próximo possível da sua geração (não apenas na véspera de provas ). Programação de Sistemas Introdução : 22/22