DAS410037: Técnicas de Implementação de Sistemas Automatizados

Ementa:

Arquitetura e programação de sistemas microprocessados. Técnicas de programação de leis de controle digital. Interfaceamento com dispositivos externos. Estimativas de desempenho de software. Programação concorrente. Sistemas Operacionais de Tempo Real.


Técnicas de Implementação de Sistemas Automatizados - 2019

Terças 14:20-16:00 e Quartas 14:20-16:00, sala PPGEAS-1

Avaliação:  ( P1 + P2 + T + E ) / 4

T: Trabalho com programação em C no Linux
P1,P2: Prova escrita individual sem consulta
E: Lista de exercícios

19/03-Ter:  Apresentação da disciplina
20/03-Qua:  Descrição do trabalho - parte 1       
26/03-Ter:  Caracterização dos Sistemas de Tempo Real (cap 1)
27/03-Qua:  Conceitos Básicos dos Sistemas de Tempo Real (cap 2)
02/04-Ter:  Implementação de Tarefas em Sistemas Pequenos (cap 3)
03/04-Qua:  Implementação de Tarefas em Sistemas Pequenos (cap 3)
09/04-Ter:  Implementação de Tarefas em Kernel Completo (cap 4)
10/04-Qua:  Escalonamento de Tarefas (cap 5)
16/04-Ter:  Prova P1
17/04-Qua:  Sincronização e Comunicação entre Tarefas (cap 6)
23/04-Ter:  Sincronização e Comunicação entre Tarefas (cap 6)
24/04-Qua:  Mecanismos de Sincronização com Variáveis Compartilhadas (cap 8)
30/04-Ter:  Mecanismos de Sincronização com Variáveis Compartilhadas (cap 8)
01/05-Qua:  FERIADO
07/05-Ter:  Entrega do trabalho
08/05-Qua:  Prova P2

Bibliografia básica:

R. S. de Oliveira. Fundamentos dos Sistemas de Tempo Real. Edição do autor, 2018.

 Bibliografia complementar:

R. S. de Oliveira, A. Carissimi, S. Toscani. Sistemas Operacionais. 4o edição, Bookman, 2010.

A. Silberschatz,  P. Galvin. Operating Systems Concepts. 4th edition, Addison-Wesley, 1994.

A. S. Tanenbaum. Sistemas Operacionais Modernos. 2ª edition, Prentice-Hall, 2002.

W. Stallings. Operating Systems. 4th edition, Prentice-Hall, 2001.

G. R. Andrews. Concurrent Programming: Principles and Practice. Benjamin/Cummings, 1991.

B. Nichols, D. Buttlar, J. P. Farrell. Pthreads Programming. O´Reilly & Associates, 1996.

J. Liu. Real-Time Systems. Prentice-Hall, 2000.

Notas

Trabalho

Exemplo de tarefa periódica

Máquina virtual Fedora para Virtualbox

udpcliente2008.c

udpservidor2008.c


Lista 1

[Aluno matricula 201901886]: 1.4  3.1  3.3  4.5  4.9  4.11 4.16 5.7  5.9  5.10
[Aluno matricula 201804654]: 1.2  1.5  1.6  2.10 3.2  3.4  3.5  3.10 4.2  4.6
[Aluno matricula 201901888]: 1.2  2.1  2.10 2.11 3.10 3.11 4.2  4.3  4.10 4.12
[Aluno matricula 201901896]: 2.1  2.4  3.2  4.7  4.15 4.17 5.4  5.5  5.13 5.20
[Aluno matricula 201902711]: 1.1  2.4  2.11 3.2  4.6  4.8  5.9  5.15 5.20 5.22
[Aluno matricula 201902655]: 2.10 2.12 3.4  3.10 5.6  5.7  5.11 5.22 5.23 5.24
[Aluno matricula 201901899]: 2.6  2.9  3.5  3.12 4.1  4.4  4.13 4.15 4.20 5.1
[Aluno matricula 201902144]: 2.1  2.12 3.1  3.2  3.6  4.1  4.3  4.14 5.8  5.12
[Aluno matricula 201902709]: 1.3  3.7  3.8  4.5  4.6  4.19 5.3  5.6  5.14 5.18
[Aluno matricula 201901904]: 1.2  2.8  3.6  3.9  5.10 5.17 5.18 5.19 5.22 5.23
[Aluno matricula 201900781]: 2.7  4.8  4.13 4.19 4.20 5.11 5.14 5.15 5.19 5.20
[Aluno matricula 201901772]: 1.6  2.3  4.5  4.14 4.15 4.16 4.17 5.9  5.16 5.18
[Aluno matricula 201901905]: 1.1  2.2  3.6  3.9  4.2  4.6  4.7  4.10 4.19 5.3
[Aluno matricula 201901907]: 2.5  2.9  2.12 3.1  3.3  3.8  4.4  4.16 5.9  5.14
[Aluno matricula 201804838]: 1.1  3.4  3.9  3.12 4.21 5.2  5.3  5.5  5.6  5.8
[Aluno matricula 201901908]: 2.3  2.7  2.12 3.5  4.2  4.4  4.20 5.7  5.16 5.19
[Aluno matricula 201901910]: 1.3  1.4  1.6  2.5  2.7  3.11 3.12 5.12 5.16 5.19
[Aluno matricula 201901911]: 1.3  2.6  2.9  2.10 3.5  3.6  3.8  4.21 5.2  5.5
[Aluno matricula 201902943]: 2.2  2.7  3.10 4.5  4.7  4.8  4.11 4.12 4.18 4.19
[Aluno matricula 201902750]: 2.2  2.11 3.4  3.7  4.7  4.8  4.13 4.16 4.17 5.17
[Aluno matricula 201901913]: 1.5  2.1  4.18 4.21 5.7  5.13 5.15 5.17 5.18 5.21
[Aluno matricula 201902708]: 3.3  3.8  4.9  4.11 4.12 5.1  5.5  5.6  5.10 5.21
[Aluno matricula 201901773]: 1.5  2.9  3.7  4.13 4.15 5.12 5.13 5.20 5.21 5.24
[Aluno matricula 201901917]: 1.4  2.3  3.12 4.1  4.10 4.11 4.14 5.2  5.8  5.12
[Aluno matricula 201901918]: 2.5  2.6  3.1  3.3  3.9  4.1  4.10 4.20 5.1  5.4
[Aluno matricula 201804692]: 1.3  1.6  2.2  2.3  2.4  3.7  4.9  4.14 4.17 4.21
[Aluno matricula 201901920]: 1.2  1.4  2.6  2.8  3.11 4.3  4.18 5.4  5.10 5.11
[Aluno matricula 201901921]: 1.1  2.8  2.11 4.9  4.18 5.1  5.8  5.11 5.13 5.15
[Aluno matricula 201900782]: 2.5  4.3  5.2  5.3  5.4  5.17 5.21 5.22 5.23 5.24
[Aluno matricula 201909999]: 1.5  2.4  2.8  3.11 4.4  4.12 5.14 5.16 5.23 5.24


Lista 2

[Todos os alunos]: 6.1  6.2  6.3  6.4  6.5  6.6  6.7  8.2  8.3  8.4


Técnicas de Implementação de Sistemas Automatizados - 2018

Avaliação Parte 1: T

T: Trabalho com programação concorrente em C no Linux


Primeira parte (Rômulo):


06/3     TER            Apresentação da disciplina e introdução

07/3     QUA           Descrição do trabalho

13/3     TER             Programação concorrente: caracterização, pthreads

14/3     QUA           Programação concorrente: seção crítica, interrupções, spin-lock

20/3     TER             Programação concorrente: mutexes, variáveis condição, monitores

21/3     QUA           Sistemas Operacionais de Tempo Real

27/3      TER            Dúvidas sobre o trabalho

28/3      QUA          Entrega do trabalho


Bibliografia para a primeira parte:

R. S. de Oliveira, A. Carissimi, S. Toscani. Sistemas Operacionais. 4o edição, Bookman, 2010.

A. Silberschatz, P. Galvin. Operating Systems Concepts. 4th edition, Addison-Wesley, 1994.

A. S. Tanenbaum. Sistemas Operacionais Modernos. 2ª edition, Prentice-Hall, 2002.

W. Stallings. Operating Systems. 4th edition, Prentice-Hall, 2001.

G. R. Andrews. Concurrent Pogramming: Principles and Practice. Benjamin/Cummings, 1991.

B. Nichols, D. Buttlar, J. P. Farrell. Pthreads Programming. O´Reilly & Associates, 1996.

J. Liu. Real-Time Systems. Prentice-Hall, 2000.

J.-M. Farines, J. da S. Fraga, R. S. de Oliveira. Sistemas de Tempo Real. Escola de Computação 2000, IME-USP, São Paulo-SP, julho/2000.


Trabalho

Exemplo de tarefa periódica

Sistemas operacionais de tempo real

Máquina virtual Fedora para Virtualbox

udpcliente2008.c

udpservidor2008.c



Técnicas de Implementação de Sistemas Automatizados - 2017

Avaliação Parte 1: T

T: Trabalho com programação concorrente em C no Linux


Primeira parte (Rômulo):


14/3     TER             Apresentação da disciplina e introdução

15/3     QUA           Descrição do trabalho

21/3     TER             Programação concorrente: caracterização, pthreads

22/3     QUA            Programação concorrente: seção crítica, interrupções, spin-lock

28/3     TER             Programação concorrente: mutexes, variáveis condição, monitores

29/3     QUA            Sistemas Operacionais de Tempo Real

4/4       TER              Dúvidas sobre o trabalho

5/4       QUA             Entrega do trabalho


Bibliografia para a primeira parte:

R. S. de Oliveira, A. Carissimi, S. Toscani. Sistemas Operacionais. 4o edição, Bookman, 2010.

A. Silberschatz, P. Galvin. Operating Systems Concepts. 4th edition, Addison-Wesley, 1994.

A. S. Tanenbaum. Sistemas Operacionais Modernos. 2ª edition, Prentice-Hall, 2002.

W. Stallings. Operating Systems. 4th edition, Prentice-Hall, 2001.

G. R. Andrews. Concurrent Pogramming: Principles and Practice. Benjamin/Cummings, 1991.

B. Nichols, D. Buttlar, J. P. Farrell. Pthreads Programming. O´Reilly & Associates, 1996.

J. Liu. Real-Time Systems. Prentice-Hall, 2000.

J.-M. Farines, J. da S. Fraga, R. S. de Oliveira. Sistemas de Tempo Real. Escola de Computação 2000, IME-USP, São Paulo-SP, julho/2000.


Trabalho

Exemplo de tarefa periódica

Sistemas operacionais de tempo real

Máquina virtual Fedora para Virtualbox

Capítulo de livro sobre pthreads


Técnicas de Implementação de Sistemas Automatizados - 2016

Avaliação Parte 1: T

T: Trabalho com programação concorrente em C no Linux


Primeira parte (Rômulo):

16/3 QUA             Apresentação da disciplina e do trabalho

17/3 QUI               Programação concorrente: caracterização, pthreads

23/3 QUA             FERIADO

24/3 QUI              FERIADO

30/3 QUA             Programação concorrente: seção crítica, interrupções, spin-lock

31/3 QUI              Programação concorrente: mutexes, variáveis condição, monitores

06/4 QUA             Dúvidas sobre o trabalho

07/4 QUI              Sistemas Operacionais de Tempo Real

13/4 QUA             Entrega do trabalho

Bibliografia para a primeira parte:

R. S. de Oliveira, A. Carissimi, S. Toscani. Sistemas Operacionais. 4o edição, Bookman, 2010.

A. Silberschatz, P. Galvin. Operating Systems Concepts. 4th edition, Addison-Wesley, 1994.

A. S. Tanenbaum. Sistemas Operacionais Modernos. 2ª edition, Prentice-Hall, 2002.

W. Stallings. Operating Systems. 4th edition, Prentice-Hall, 2001.

G. R. Andrews. Concurrent Pogramming: Principles and Practice. Benjamin/Cummings, 1991.

B. Nichols, D. Buttlar, J. P. Farrell. Pthreads Programming. O´Reilly & Associates, 1996.

J. Liu. Real-Time Systems. Prentice-Hall, 2000.

J.-M. Farines, J. da S. Fraga, R. S. de Oliveira. Sistemas de Tempo Real. Escola de Computação 2000, IME-USP, São Paulo-SP, julho/2000.


Trabalho

Exemplo de tarefa periódica

Sistemas operacionais de tempo real

Máquina virtual Fedora para Virtualbox

Capítulo de livro sobre pthreads


Técnicas de Implementação de Sistemas Automatizados - 2015

Avaliação Parte 1: T

T: Trabalho com programação concorrente em C no Linux


Primeira parte (Rômulo):

11/3 QUA Apresentação da disciplina

12/3 QUI Programação concorrente: caracterização

18/3 QUA Descrição do trabalho, pthreads

19/3 QUI Programação concorrente: seção crítica, interrupções, spin-lock

25/3 QUA Programação concorrente: mutexes, variáveis condição, monitores

26/4 QUI Dúvidas sobre o trabalho

01/4 QUA Sistemas Operacionais de Tempo Real

02/4 QUI Entrega do trabalho

Bibliografia para a primeira parte:

R. S. de Oliveira, A. Carissimi, S. Toscani. Sistemas Operacionais. 4o edição, Bookman, 2010.

A. Silberschatz, P. Galvin. Operating Systems Concepts. 4th edition, Addison-Wesley, 1994.

A. S. Tanenbaum. Sistemas Operacionais Modernos. 2ª edition, Prentice-Hall, 2002.

W. Stallings. Operating Systems. 4th edition, Prentice-Hall, 2001.

G. R. Andrews. Concurrent Pogramming: Principles and Practice. Benjamin/Cummings, 1991.

B. Nichols, D. Buttlar, J. P. Farrell. Pthreads Programming. O´Reilly & Associates, 1996.

J. Liu. Real-Time Systems. Prentice-Hall, 2000.

J.-M. Farines, J. da S. Fraga, R. S. de Oliveira. Sistemas de Tempo Real. Escola de Computação 2000, IME-USP, São Paulo-SP, julho/2000.


Trabalho

Exemplo de tarefa periódica

Sistemas operacionais de tempo real

Máquina virtual Fedora para Virtualbox

Capítulo de livro sobre pthreads


Técnicas de Implementação de Sistemas Automatizados - 2014

Avaliação Parte 2: T

T: Trabalho com programação em C no Linux


Segunda parte (Rômulo):

16/4 QUA Programação concorrente: caracterização, especificação de paralelismo

17/4 QUI Descrição do trabalho

23/4 QUA Programação concorrente: seção crítica, spin-lock

24/4 QUI Programação concorrente: mutexes, variáveis condição, monitores, pthreads

30/4 QUA Dúvidas sobre o trabalho

01/5 QUI FERIADO

07/5 QUA Sistemas Operacionais de Tempo Real

08/5 QUI Entrega do trabalho

Bibliografia para a segunda parte:

R. S. de Oliveira, A. Carissimi, S. Toscani. Sistemas Operacionais. 4o edição, Bookman, 2010.

A. Silberschatz, P. Galvin. Operating Systems Concepts. 4th edition, Addison-Wesley, 1994.

A. S. Tanenbaum. Sistemas Operacionais Modernos. 2ª edition, Prentice-Hall, 2002.

W. Stallings. Operating Systems. 4th edition, Prentice-Hall, 2001.

G. R. Andrews. Concurrent Programming: Principles and Practice. Benjamin/Cummings, 1991.

B. Nichols, D. Buttlar, J. P. Farrell. Pthreads Programming. O´Reilly & Associates, 1996.

J. Liu. Real-Time Systems. Prentice-Hall, 2000.

J.-M. Farines, J. da S. Fraga, R. S. de Oliveira. Sistemas de Tempo Real. Escola de Computação 2000, IME-USP, São Paulo-SP, julho/2000.


Trabalho

Exemplo de tarefa periódica

Sistemas operacionais de tempo real

Máquina virtual Fedora para Virtualbox





Versão até 2013, com 3 créditos:

DAS9002: Técnicas de Implementação de Sistemas Automatizados

Ementa:

Hierarquia em sistemas automatizados. Requisitos dos sistemas informáticos para automação. Introdução a sistemas operacionais. Programação concorrente: caracterização, mecanismos de sincronização, troca de mensagens. (1 crédito).

Sistemas de tempo real, abordagem síncrona e assíncrona. Estudos de caso. (1 crédito).

Engenharia de software: modelos de desenvolvimento de software, qualidade de software, análise de requisitos, projeto, implementação, testes e manutenção. Orientação a objeto: conceituação básica, análise, projeto, implementação. (1 crédito).

Observação: Esta disciplina é oferecida preferencialmente para graduados oriundos da área das engenharias.


Técnicas de Implementação de Sistemas Automatizados - 2013

Plano
Notas
Trabalho

Exemplo de tarefa periódica

Exemplos de provas

Sistemas operacionais de tempo real

Cygwin


Técnicas de Implementação de Sistemas Automatizados - 2012

Plano
Notas
Trabalhos

Exemplo de tarefa periódica

Exemplos de provas

Sistemas operacionais de tempo real

Cygwin

Tempo real
Caracterização
Abordagens
Executivo Ciclico
Prioridade com teste

Técnicas de Implementação de Sistemas Automatizados - 2011

Plano da disciplina (primeira parte)
Notas
Trabalhos

Organização de Sistemas Operacionais - JAI 2002

Exemplo de tarefa periódica

Exemplos de provas

Sistemas operacionais de tempo real

Cygwin

Tempo real
Caracterização
Abordagens
Executivo Ciclico
Prioridade com teste

Técnicas de Implementação de Sistemas Automatizados - 2010

Plano da disciplina (primeira parte)
Notas
Trabalhos

Livro sobre Pthreads
Capítulo de livro sobre pthreads
Organização de Sistemas Operacionais - JAI 2002
Exemplo de tarefa periódica
Exemplos de provas
Sistemas operacionais de tempo real
Tempo real
Caracterização
Abordagens
Escalonamento garantido
Priodade fixa estendida


Técnicas de Implementação de Sistemas Automatizados - 2009

Plano da disciplina (primeira parte)
Notas
Trabalhos

Livro sobre Pthreads
Capítulo de livro sobre pthreads
Trabalhando com o Tempo Real em Aplicações Sobre o Linux
Conjunto de Experiências Sobre Sincronização de Relógios
Organização de Sistemas Operacionais - JAI 2002
Exemplo de tarefa periódica
Exemplos de provas
Sistemas operacionais de tempo real
Tr-relo3.pdf
Tr-intr3.pdf
Tr-abor3.pdf
Tr-pfix3.pdf
Burns-chap13.pdf


Técnicas de Implementação de Sistemas Automatizados - 2008

Plano da disciplina (primeira parte)
Notas
Trabalhos

Livro sobre Pthreads
Capítulo de livro sobre pthreads
Trabalhando com o Tempo Real em Aplicações Sobre o Linux
Conjunto de Experiências Sobre Sincronização de Relógios
Organização de Sistemas Operacionais - JAI 2002
Exemplos de provas
Sistemas operacionais de tempo real
Tr-relo3.pdf
Tr-intr3.pdf
Tr-abor3.pdf
Tr-pfix3.pdf
Burns-chap13.pdf


Técnicas de Implementação de Sistemas Automatizados - 2007

Plano da disciplina (primeira parte)
Notas
Trabalhos

Livro sobre Pthreads
Capítulo de livro sobre pthreads
Trabalhando com o Tempo Real em Aplicações Sobre o Linux
Conjunto de Experiências Sobre Sincronização de Relógios
Organização de Sistemas Operacionais - JAI 2002
Exemplos de provas
Sistemas operacionais de tempo real
Tr-relo3.pdf
Tr-intr3.pdf
Tr-abor3.pdf
Tr-pfix3.pdf
Burns-chap13.pdf