A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Disciplina: Sistema Operacional Professor: Luciano Ricardi Scorsin.

Apresentações semelhantes


Apresentação em tema: "Disciplina: Sistema Operacional Professor: Luciano Ricardi Scorsin."— Transcrição da apresentação:

1 Disciplina: Sistema Operacional Professor: Luciano Ricardi Scorsin

2 Sumário 1 – Apresentação da Disciplina e Plano de Ensino 2 – Apresentação dos Temas de Seminário e Divisão de Grupos 3 – Matéria

3 O que vamos ver? 1 – Conceitos Básicos de SO 2 – Processos e Threads 3 – Deadlocks e Gerenciamento de Memória 4 – Entrada e Saída 5 – Sistemas de Arquivos 6 – SMP 7 – Segurança 8 – Estudo de Caso (Linux) Disciplina e Plano de Ensino

4 -Como seremos cobrados? 02 Provas Valendo 10 pontos cada uma. 1 Trabalho valendo 20 pontos (sendo 60% trabalho escrito e 40% apresentação) Pontos de participação e trabalhos em sala valendo 10 pontos. Média 50/5. Disciplina e Plano de Ensino

5 Quem somos nós? O que fazemos? Já participamos de algum incidente de segurança? Quem somos nós?

6 SOs Embarcados SOs Videogames História do Unix História do Windows Distribuições Linux Histórico principais falhas de segurança em SO Temas para Trabalho

7 O que é um Sistema Operacional? Conceitos Básicos

8

9 Maquina Estendida Abstrair a camada de hardware para facilitar a Programação. Ex: Slides a Seguir. Gerenciador de Recursos Compartilhar tempo e espaço. Ex: TimeSharing da CPU e Alocação de espaços de memória. Conceitos Básicos

10 section.data; MAX_LINHAequ1000 fichdb"calculos.txt",0;Nome do arquivo flagLerdd 00q; O_RDONLY numFichdd0; guarda o numero do arquivo nLidosdd0 num1dd0 num2dd0 num3dd0 operacao dd 0 operacao2 dd 0 tamstrdd0 section.bss; Secao BSS linharesbMAX_LINHA section.text ; Secao TXT global _start _start: ; Abrir o arquivo e guardar o handle em numFich mov ecx,[flagLer] ;segundo argumento: flags mov ebx,fich ;primeiro argumento: nome do arquivo mov eax,5 ;Numero da SysCall (sys_open) int 0x80 ;chama Kernel mov[numFich], eax

11 Conceitos Básicos ; Ler no arquivo cujo handle está em numFich leitura: mov edx,MAX_LINHA ;tamanho da linha a ler mov ecx,linha ;apontador para a variavel a ler mov ebx,[numFich] ;apontador para o arquivo mov eax,3 ;system call number (sys_read) int 0x80 ;call kernel mov[tamstr], eax;guarda num. de bytes lidos xoreax, eax xorebx, ebx mov esi,linha cld movecx, [tamstr] ciclonum1: lodsb cmpal, 0xa jeimprime cmpal, '9' jgletra1 andal, 0xF jmpfim1

12 Conceitos Básicos letra1: andal, 0xF addal, 9 fim1: shlebx,4 addebx, eax loop ciclonum1 mov[num1], ebx ; Escrever linha na tela imprime: mov edx,[tamstr] ;third argument: message length mov ecx,esi ;second argument: pointer to message to write mov ebx,1 ;first argument: file handle (stdout) mov eax,4 ;system call number (sys_write) int 0x80 ;call kernel ; Fechar o arquivo cujo handle está em numFich fim: mov ebx,[numFich] ;apontador para o ficheiro mov eax,6 ;system call number (sys_close) int 0x80 ;call kernel ; Sair do programa passando o controle ao sistema operacional mov ebx,0 ;first syscall argument: exit code mov eax,1 ;system call number (sys_exit) int 0x80 ;call kernel

13 - A 1.a Geração (1945 – 1955) Válvulas e Painéis Histórico dos Sistemas Operacionais

14 - A 1.a Geração (1945 – 1955) Válvulas e Painéis Histórico dos Sistemas Operacionais

15 A 2.a Geração (1955 – 1965) Transistores e Sistemas em Lote Histórico dos Sistemas Operacionais

16 A 2.a Geração (1955 – 1965) Transistores e Sistemas em Lote Histórico dos Sistemas Operacionais

17 - A 3.a Geração (1965 – 1980) CIs e Multiprogramacao (OS 360, CTSS, Multics e... UNIX!) Histórico dos Sistemas Operacionais

18 - A 3.a Geração (1965 – 1980) CIs e Multiprogramacao (OS 360, CTSS, Multics e... UNIX!) Histórico dos Sistemas Operacionais

19 - A 3.a Geração (1965 – 1980) CIs e Multiprogramacao (OS 360, CTSS, Multics e... UNIX!) Histórico dos Sistemas Operacionais PDP7 Ken Thompson

20 - A 4.a Geração (1980 – Presente) Microprocessadores Enfim... PCs... MSDos, Windows, Mac, Linux... Histórico dos Sistemas Operacionais

21 Revisao de Hardware Processadores Memória Dispositivos de E/S Barramentos Conceitos Básicos

22 Processador Conceitos Básicos

23 Processador Conceitos Básicos LOADA mem - Load register A from memory address LOADB mem - Load register B from memory address CONB con - Load a constant value into register B SAVEB mem - Save register B to memory address SAVEC mem - Save register C to memory address ADD - Add A and B and store the result in C SUB - Subtract A and B and store the result in C MUL - Multiply A and B and store the result in C DIV - Divide A and B and store the result in C COM - Compare A and B and store the result in test JUMP addr - Jump to an address JEQ addr - Jump, if equal, to address JNEQ addr - Jump, if not equal, to address JG addr - Jump, if greater than, to address JGE addr - Jump, if greater than or equal, to address JL addr - Jump, if less than, to address JLE addr - Jump, if less than or equal, to address STOP - Stop execution

24 Fatorial 5 Conceitos Básicos a=1; f=1; while (a <= 5) { f = f * a; a = a + 1; } // Assume que a esta no endereco 128 // Assume que F esta no endereco CONB 1 // a=1; 1 SAVEB CONB 1 // f=1; 3 SAVEB LOADA 128 // if a > 5 jump to 17 5 CONB 5 6 COM 7 JG 17 8 LOADA 129 // f=f*a; 9 LOADB MUL 11 SAVEC LOADA 128 // a=a+1; 13 CONB 1 14 ADD 15 SAVEC JUMP 4 // loop back to if 17 STOP Processador

25 Memória Conceitos Básicos

26 Memória Conceitos Básicos

27 Dispositivos de Entrada e Saida Conceitos Básicos

28 Barramentos Conceitos Básicos

29 Conceitos de SO Processos DeadLocks Gerenciamento da Memória Arquivos Segurança Shell Conceitos Básicos

30 Processos Conceitos Básicos Processo é um programa em execução.

31 DeadLock Conceitos Básicos

32 DeadLock Conceitos Básicos Process o A Process o B B1 – Aloca TL B2 – Aloca CDRW A1 – Aloca CDRW A2 – Aloca TL Processos A e B tentam alocar os mesmos recursos ao mesmo tempo

33 Gerenciamento de Memória Conceitos Básicos Gerenciamento de Memória RedHat

34 Entrada e Saída Conceitos Básicos Normalmente Drivers.

35 Arquivos Conceitos Básicos Arquivo: Blocos de informações gravadas em algum tipo de armazenamento, normalmente persistente.

36 Shell Conceitos Básicos Shell: Interface do SO para recebimento de comandos. Ex: Bash, Ksh, Prompt Dos, Etc.

37 Segurança Conceitos Básicos - Segurança em FS - Segurança no Kernel - Segurança na Rede - Segurança em Processos

38 Conceitos Básicos System Calls (Chamadas de Sistema)

39 Chamadas de (ao) Sistema Gerenciamento de Processos Gerenciamento de Arquivos Gerenciamento de Sistema de Diretorio e Arquivos Outras Estudaremos o padrao POSIX Conceitos Básicos

40 Chamadas de Sistema - Processos Conceitos Básicos ChamadaDescrição pid = fork()Crie um processo filho idêntico ao processo pai pid = waitpid(pid, &statloc, options)Aguarde um processo filho terminar s = execve(name, argv, environp)Substitua o espaço de endereçamento do processo exit(status)Termine a execução do processo e retorne o estado

41 Chamadas de Sistema - Arquivos Conceitos Básicos ChamadaDescrição fd = open(file, how,...)Abra um arquivo para leitura, escrita ou ambas. s = close(fd)Feche um arquivo aberto n = read(fd, buffer, nbytes)Leia dados de um arquivo para um buffer n = write(fd, buffer, nbytes)Escreva dados de buffer para um arquivo position = lseek(fd, offset, whence)Mova o ponteiro de posição do arquivo s = stat(name, &buf)Obtenha a informação de estado do arquivo

42 Chamadas de Sistema – Diretório e Arquivo Conceitos Básicos ChamadaDescrição s = mkdir(name, mode)Crie um novo diretório s = rmdir(name)Remova um diretorio vazio s = link(name1, name2)Crie uma nova entrada, name2, apontando para name1. s = unlink(name)Remova uma entrada de diretório s = mount(special, name, flag)Monte um sistema de arquivo s = umount(special)Desmonte um sistema de arquivo

43 Chamadas de Sistema – Diversas Conceitos Básicos ChamadaDescrição s = chdir(dirname)Altere o diretório de trabalho s = chmod(name, mode)Altere os bits de proteção do arquivo s = kill(pid, signal)Envie um sinal a um processo seconds = time(&seconds)Obtenha o tempo decorrido desde 1.o de Janeiro de 1970.

44 Estruturas de Sistemas Operacionais Conceitos Básicos - Sistemas Monolíticos - Sistemas de Camadas - Maquinas Virtuais - Exonúcleos - Modelo Cliente-Servidor

45 Estruturas de Sistemas Operacionais Conceitos Básicos - Sistemas Monolíticos - Sistemas de Camadas - Maquinas Virtuais - Exonúcleos - Modelo Cliente-Servidor

46 Duvidas?


Carregar ppt "Disciplina: Sistema Operacional Professor: Luciano Ricardi Scorsin."

Apresentações semelhantes


Anúncios Google