Infra-Estrutura de Software

Documentos relacionados
Infra-Estrutura de Software. Introdução

Resumo até aqui. Gerenciamento Proteção Compartilhamento. Infra-estrutura de Software

Infra-Estrutura de Software

Infra-Estrutura de Software

Infra-Estrutura de Software. Introdução. (cont.)

Infraestrutura de Software. CIn.ufpe.br

Introdução. O que vimos. Infraestrutura de Software. (cont.) História dos Sistemas Operacionais. O que vimos 12/03/2012. Primeira geração:

Software Básico (INF1018)

Infra-estrutura de Software

Infraestrutura de Software. CIn.ufpe.br

Infra-Estrutura de Software. Introdução

Infra-estrutura de Software. Apresentação!

Infraestrutura de Software. CIn.ufpe.br

Introdução à Arquitetura de Computadores

Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO

Fundamentos de Sistemas Computacionais Introdução

Sistemas Operacionais 2014 Introdução. Alexandre Augusto Giron

Pós-Graduação, Maio de 2006 Introdução aos Sistemas Operacionais. Prof. Dr. Ruy de Oliveira CEFET-MT

Introdução à Ciência da Computação

Introdução aos Sistemas Operacionais. Computador = hardware + software. Como é formado o meu computador? E como estes componentes se comunicam?

4 Estrutura do Sistema Operacional Kernel

Introdução. Sistemas Operacionais

Sistema Operacional Correção - Exercício de Revisão

Apresentação. Ementa da Disciplina. Objetivo da Disciplina. DCA-108 Sistemas Operacionais

Edeyson Andrade Gomes

MC-102 Aula 01. Instituto de Computação Unicamp

Sistemas Operacionais e Introdução à Programação. Módulo 1 Sistemas Operacionais

Arquitetura de Computadores. Introdução aos Sistemas Operacionais

Sistemas Operacionais. Prof. Pedro Luís Antonelli Anhanguera Educacional

Processos e Threads (partes I e II)

Sistemas Operacionais

Programação Concorrente Processos e Threads

Sistemas Operacionais

Nível do Sistema Operacional

Estrutura geral de um computador

Sistemas Operacionais

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 05 Estrutura e arquitetura do SO Parte 2. Cursos de Computação

Edeyson Andrade Gomes.

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES. Prof. André Dutton

Sistemas Operacionais

Sistemas Operacionais

SISTEMAS OPERACIONAIS

Figura 01 Kernel de um Sistema Operacional

Introdução à Computação: Sistemas de Computação

Everson Scherrer Borges João Paulo de Brito Gonçalves

Classificação de SO (Sistemas Operacionais) Técnico de Informática 2º. Módulo Profa. Madalena Pereira da Silva

Cursos de Computação. Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 01 - História e Funções dos Sistemas Operacionais

SISTEMAS OPERACIONAIS 2007

SISTEMAS OPERACIONAIS. Apostila 03 Estrutura do Sistema Operacional UNIBAN

UFRJ IM - DCC. Sistemas Operacionais I. Unidade I Introdução. 11/02/2014 Prof. Valeria M. Bastos

O que veremos nesta aula? Principais Aspectos de Sistemas Operacionais. Visão geral de um sistema computacional

Capítulo 1. Introdução

UFRJ IM - DCC. Sistemas Operacionais I

SISTEMAS OPERACIONAIS

Sistemas Operacionais

Sistemas Operacionais

Prof.: Roberto Franciscatto. Capítulo 1 Introdução

O hardware é a parte física do computador, como o processador, memória, placamãe, entre outras. Figura 2.1 Sistema Computacional Hardware

Conceitos Básicos sobre Sistemas Operacionais

FACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES

Sistemas Operacionais

SISTEMAS OPERACIONAIS. Maquinas Virtuais e Emuladores

Arquitetura e Organização de Computadores. Capítulo 0 - Introdução

Sistemas Operacionais Carlos Eduardo Portela Serra de Castro

6 - Gerência de Dispositivos

Sistemas Operacionais. Estruturas de SO. Edeyson Andrade Gomes.

IFPE. Disciplina: Sistemas Operacionais. Prof. Anderson Luiz Moreira

Sistemas Operacionais. INTRODUÇÃO Prof. Rafael Alberto Vital Pinto FACSUL/CESUR

Visão Geral de Sistemas Operacionais

Sistemas Operacionais

Programador Web - Pronatec

Sistemas Operacionais

Sistemas Operacionais. Professor Leslier Soares Corrêa

Arquitetura e Organização de Computadores. Capítulo 0 - Introdução

Sistemas Operacionais Introdução. Professora: Michelle Nery

Sistemas Operacionais

1. CAPÍTULO COMPUTADORES

Sistemas Operacionais. Patrícia Megumi Matsumoto Luciana Maria Gregolin Dias

Virtualização Gerencia de Redes Redes de Computadores II

Introdução. Nível do Sistema Operacional. Introdução. Um Sistema Operacional... Introdução a Sistemas Operacionais

Introdução a Computação

Classificação Quanto. Sistemas de Lotes (2) Sistemas de Lotes (3)

Processamento de Dados

Sistemas Operacionais. Prof. Pedro Luís Antonelli Anhanguera Educacional

Sistemas Operacionais. Conceitos de um Sistema Operacional

Unidade Central de Processamento (CPU) Processador. Renan Manola Introdução ao Computador 2010/01

BACHARELADO EM SISTEMAS DE INFORMAÇÃO EaD UAB/UFSCar Sistemas de Informação - prof. Dr. Hélio Crestana Guardia

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 05 Estrutura e arquitetura do SO Parte 1. Cursos de Computação

Arquitetura de Computadores - Revisão -

ADMINISTRAÇÃO DOS RECURSOS DE HARDWARE E SOFTWARE

Introdução aos Computadores

Introdução a Computação

Apresentação da disciplina. Sistemas Operacionais I N. A disciplina. O Professor. Áreas de atuação na pesquisa. Referências bibliográficas básicas

Laudon & Laudon Essentials of MIS, 5th Edition. Pg. 6.1

3. O NIVEL DA LINGUAGEM DE MONTAGEM

Programação Engenharia Informática (11543) 1º ano, 1º semestre Tecnologias e Sistemas de Informação (6619) 1º ano, 1º semestre

Capítulo 4. MARIE (Machine Architecture Really Intuitive and Easy)

Prof. Esp. Lucas Cruz

Sistemas Operacionais. Roteiro. Hardware. Marcos Laureano

Transcrição:

Infra-Estrutura de Software Introdução

Material de Estudo Transparências das aulas http://www.cin.ufpe.br/~cagf/if677/2013-1/ Livros Parte I: Sistemas Operacionais Modernos 2ª Edição. A. Tanenbaum, 2003 Opção: Modern Operating Systems 3e. Prentice-Hall, 2008 (Já em Português, edição 2010) Parte II: Distributed Systems: Principles and Paradigms. Andrew Tanenbaum, Maarten van Steen. Prentice-Hall, 2002 Distributed Systems: Concepts and Design (4th / 5th Edition). George Coulouris, Jean Dollimore, Tim Kindberg. Addison-Wesley, 2005 / 2011 2

Algumas datas já definidas Atividades em conjunto com EC Ter, 28/05 e Qui, 20/06/2013: Aulas de Linux, monitores, à tarde Ter, 04/06/2013: Aula de ASM (Assembly) e divulgação da Lista de exercício, monitores, pela manhã Qui, 13/06/2013: Aula sobre Projeto Bootloader, monitores Entrega da lista de ASM Qui, 27/06/2013: Entrega do Projeto Bootloader, monitores Divulgação da Lista de exercício sobre Threads Ter, 16/07/2013: Entrega da Lista de exercício sobre Threads Divulgação do mini-exercício de escalonamento Qui, 25/07/2013: Entrega do mini-exercício sobre escalonamento Ter, 06/08/2013: Divulgação do mini-exercício sobre paginação Qui, 15/08/2013: Entrega do mini-exercício sobre paginação 3

Visão ampla: grande porte, desktops, tablets, celulares, TV etc. 4 grupos básicos: processamento, memória, armazenamento (arquivos), entrada e saída 4

Usuários Aplicações de software de software usam o hardware diretamente Arquitetura de hardware de um computador típico 5

Usuários Aplicações de software Software é abstrato Infra-estrutura de software de hardware e de recursos Arquitetura de hardware de um computador típico Hardware é concreto (físico) 6

E se o sistema for distribuído em rede? Ex.: Web browser e servidor É preciso gerenciar também recursos de rede/ comunicação, entre outras coisas Um middleware [é um conjunto de serviços que] dá suporte a sistemas de software distribuídos 7

Pilha TCP/IP Pilha TCP/IP 8

Computador Moderno Componentes físicos (hardware) Um ou mais processadores Memória Um Sistema Discos Impressoras Vários outros dispositivos de E/S (tela, mouse ) Complexo!!! Gerenciar todos componentes requer abstração um modelo mais simples do computador É isso que é o sistema operacional

Concreto Tangível Abstrato Intangível Hardware Software COMPLEXIDADE 10

Sistema Computacional em Camadas Não pode executar instruções que afetam o controle da máquina ou fazem E/S GUI ou shell Acesso completo a todo o hardware e pode executar qualquer instrução que a máquina seja capaz de executar Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall, Inc. All rights reserved.

Sistema Operacional Máquina Abstrata Gerenciador de Recursos 12

Máquina Estendida Sistemas operacionais tornam o hardware pouco atraente em abstrações mais interessantes Abstrações Processos" Memória Virtual" Arquivos" Processador " Memória" Dispositivos E/S"

SO: Interface de Usuário - Shell

SO: Interface de Usuário - GUI

Gerenciador de Recursos Gerencia e protege memória, dispositivos de E/S e outros recursos (hardware) Permite o compartilhamento (multiplexação) de recursos no tempo (time-sharing) Ex.: múltiplos programas compartilham o processador (executam) ao mesmo tempo no espaço Ex.: dados de diferentes usuários/arquivos compartilham o espaço em disco

Hardware 17

Um pouco de um computador típico CPU" Register file" PC" ALU" System bus" Memory bus" Bus interface" I/O " bridge" Main" memory" USB" controller" Graphics" adapter" I/O bus" Disk " controller" Expansion slots for" other devices such" as network adapters" Mouse"Keyboard" Display" Disk" Randal E. Bryant, David R. O'Hallaron. Computer Systems: A Programmer's Perspective. Prentice Hall, 2003

CPU: Central Processing Unit Unidade de Controle ALU: Unidade Aritmética e Lógica Registradores Funcionam como memória de acesso extremamente rápida Baixa capacidade de armazenamento Funções específicas Exemplos de registradores PC (program counter): contém o endereço da próxima instrução a ser executada Instruction register: onde é copiada cada instrução a ser executada A CPU, seguidamente, executa instruções requisitadas à memória Ciclo fetch-decode-execute: 1. busca instrução na memória 2. atualiza PC 3. decodifica instrução 4. executa instrução

Barramentos e Dispositivos de E/S Barramentos: conduítes elétricos que carregam a informação entre os vários componentes da máquina Dispositivos de E/S: Conexão da máquina com o mundo externo Conectados ao barramento de E/S por controladores (chips no próprio dispositivo ou na placa mãe) ou adaptadores (quando placa separada)

Memória Logicamente, a memória principal corresponde a um enorme vetor (array) de bytes cada posição tem um endereço único (índice do vetor) Os registradores da CPU muitas são usados para armazenar endereços de memória Assim, o número de bits em cada registrador limita o número de posições de memória endereçáveis Ex.: 8 bits è 256 posições

Hierarquia de Memória Smaller," faster," and " costlier" (per byte)" storage " devices" L2:" L0:" Registers" L1:" On-chip L1" cache (SRAM)" Off-chip L2" cache (SRAM)" CPU registers hold words retrieved from cache memory." L1 cache holds cache lines retrieved from the L2 cache." L2 cache holds cache lines retrieved from memory." Larger, " slower, " and " cheaper " (per byte)" storage" devices" L5:" L4:" L3:" Main memory" (DRAM)" Local secondary storage" (local disks)" Remote secondary storage" (distributed file systems, Web servers)" Main memory holds disk " blocks retrieved from local " disks." Local disks hold files retrieved from disks on remote network servers." Trajetória de dados até a CPU

Chips Multithreaded e Multicore Cache nível 1: dentro de cada núcleo Cache nível 2: normalmente dentro do mesmo processador e fora dos núcleos Exs.: Core 2 Duo e Quad-Core (a) (b) A quad-core chip with a shared L2 cache. A quad-core chip with separate L2 caches. Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall, Inc. All rights reserved.

Software Básico 24

Software Básico [A. Raposo e M. Endler, PUC-Rio, 2008] Conhecendo mais sobre o que está por baixo do programa, você pode escrever programas mais eficientes e confiáveis Abstrações em um sistema de computação: Programa de usuário Programa em Assembly????? Sistema Operacional Hardware Aplicações: jogos, editores, browsers, media players Escritos geralmente em linguagem de alto nível (C, C++, C#, Java etc.) Linguagem de máquina: binária (0,1) pouco legível por humanos A linguagem de montagem (Assembly) é um mapeamento direto da linguagem de máquina, mas que introduz várias facilidades (ou menos dificuldades ) para o programador usa "apelidos" das instruções de máquina, mais fáceis de lembrar do que seu valor hexadecimal exigido pelo processador Ex.: mov eax, edx move o que está no registrador de dados para o acumulador

Gerando um executável unix> gcc o hello hello.c 1. #include <stdio.h> 2. int main() 3. { 4. printf( hello, world\n ); 5. } hello.c préprocessador programafonte (texto) hello.i programafonte modificado Modifica o programa em C de acordo com diretivas começadas com # Ex.: #include <stdio.h> diz ao pré-processador para ler o arquivo stdio.h e inseri-lo no programa fonte O resultado é um programa expandido em C, normalmente com extensão.i, em Unix

Gerando um executável unix> gcc o hello hello.c 1. #include <stdio.h> 2. int main() 3. { 4. printf( hello, world\n ); 5. } hello.c préprocessador programafonte (texto) hello.i programafonte modificado compilador hello.s programa Assembly (texto) Compilador traduz o programa.i em um programa em Assembly É o formato de saída comum para os compiladores nas várias linguagens de programação de alto nível i.e., programas em C, Java, Fortran, etc vão ser traduzidos para a mesma linguagem Assembly

Gerando um executável unix> gcc o hello hello.c 1. #include <stdio.h> 2. int main() 3. { 4. printf( hello, world\n ); 5. } hello.c préprocessador programafonte (texto) hello.i programafonte modificado compilador hello.s programa Assembly (texto) montador (assembler) hello.o programaobjeto relocável (binário) Montador (Assembler) transforma o programa em Assembly em um programa binário em linguagem de máquina (chamado programa-objeto) Os módulos de programas, compilados ou montados, são armazenados em um formato intermediário ( Programa-Objeto Relocável extensão.o) Endereços de acesso e a posição do programa na memória ficam indefinidos

Gerando um executável unix> gcc o hello hello.c 1. #include <stdio.h> 2. int main() 3. { 4. printf( hello, world\n ); 5. } printf.o hello.c préprocessador programafonte (texto) hello.i programafonte modificado compilador hello.s programa Assembly (texto) montador (assembler) hello.o programaobjeto relocável (binário) hello ligador (linker) programaobjeto executável (binário) O ligador (linker) gera o programa executável a partir do.o gerado pelo assembler No entanto, pode haver funções-padrão da linguagem (ex., printf) que não estão definidas no programa, mas em outro arquivo.o pré-compilado (printf.o) O ligador faz a junção dos programas-objeto necessários para gerar o executável

Execução Como acontece 30

Processo Conceito: Um programa em execução 1. Ao digitar hello, os caracteres são passados para um registrador e depois para memória principal

Programa em execução 2. Ao clicar Enter, sabe-se que acabou o comando e então é realizada uma seqüência de instruções para copiar código e dados do programa hello do disco para a memória principal

Programa em execução 3. PC aponta para o endereço de memória onde o programa hello foi escrito 4. Processador executa instruções em linguagem de máquina da função main() do programa

Mais de um programa em execução Múltiplos processos vs. um (ou [poucos] mais) processador(es) ð como pode???

Processos Comunicantes Como pode??? Dicionário Editor de Texto Gerenciador de Imagens

Sistemas Distribuídos Processos em máquinas distintas e que se comunicam Web browser Web server

Sistemas Distribuídos Como fazer funcionar aplicações distribuídas que usam diferentes sistemas Web de computador browser (hardware), sistemas operacionais e software de aplicação (ex. linguagens de programação), interconectadas por diferentes redes? Processos em máquinas distintas e que se comunicam Web server O problema da interoperabilidade

O que vimos até agora Complexidade do computador moderno, do ponto de vista do hardware Necessidade de abstrações software Sistema computacional em camadas SO como uma máquina estendida abstrações SO como um gerenciador de recursos Gerenciamento Proteção Compartilhamento Um pouco de hardware CPU: unidade de controle e execução Registradores Ciclo fetch-decodeexecute Barramentos e dispositivos de E/S Memória [hierarquia] Software básico Linguagem de programação de alto nível ð linguagem de montagem (Assembly) ð linguagem de máquina Processo: um programa em execução Comunicação entre processos Sistemas Distribuídos

Infra-estrutura de Software Introdução (II)

História dos Sistemas Operacionais Primeira geração: 1945-1955 Válvulas, painéis de programação Segunda geração: 1955-1965 transistores, sistemas em lote Terceira geração: 1965 1980 CIs (circuitos integrados) e multiprogramação Quarta geração: 1980 presente Computadores pessoais Hoje: onipresença computação ubíqua

História dos Sistemas Operacionais Estrutura de um job típico (lote de cartões) 2a. geração

História dos Sistemas Operacionais Sistema de multiprogramação Três jobs na memória 3a. geração

Diversidade de Sistemas Operacionais Sistemas operacionais de computadores de grande porte (mainframe) Sistemas operacionais de servidores / redes Sistemas operacionais de multiprocessadores (paralelismo) Sistemas operacionais de computadores pessoais Sistemas operacionais de dispositivos portáteis/ móveis (ex. celulares) Sistemas operacionais de tempo-real Sistemas operacionais embarcados Sistemas operacionais de cartões inteligentes Sistemas operacionais de sensores

Estruturação de Sistemas Operacionais Monolítico Camadas Cliente-Servidor Virtualização

Estrutura de Sistemas Operacionais: Sistema Monolítico Executam as System Calls Modelo simples de estruturação de um sistema monolítico Ajudam os Procedimentos de Serviços SO = um processo com n procedimentos

Estrutura de Sistemas Operacionais: Sistema em Camadas Modularidade Hierarquia Facilita evolução e adaptação a novos ambientes (Flexibilidade)

Estrutura de Sistemas Operacionais: Sistema em Camadas Modularidade Hierarquia Facilita evolução e adaptação a novos ambientes (Flexibilidade)

Camadas em Linux Kernel (núcleo)

Linux Kernel: Relacionamentos Process Process Process Process Process System Call Interface Process Management IPC Memory Management Network File System Device Driver Hardware

Android em Camadas 50

Estruturação de Sistemas Operacionais ü Monolítico ü Camadas Cliente-Servidor Virtualização

Estrutura de Sistemas Operacionais: Cliente-Servidor

Estrutura de Sistemas Operacionais: Cliente-Servidor (2) O modelo cliente-servidor em um sistema ( ) distribuído

Infra-estruturas para SDs: SOD, SOR e Middleware Sistemas operacionais fortemente acoplados para sistemas (computadores e programas) distribuídos, geralmente, são chamados de sistemas operacionais distribuídos (SODs) visão única e global dos recursos Sistemas operacionais fracamente acoplados são os sistemas operacionais de rede (SORs) cada computador executando seu próprio SO, e viceversa, um SO completo para cada computador Para melhor suporte à transparência de distribuição são necessários melhoramentos ou serviços adicionais aos serviços de SORs, principalmente uma camada adicional: middleware

Infra-estruturas para SDs: arquiteturas SOD Middleware Sistemas homogêneos Transparência de distribuição Alto desempenho Memória compartilhada Controle de concorrência Sistemas heterogêneos Pouca transparência Escalabilidade Comunicação Sistemas heterogêneos Transparência de distribuição e comunicação Serviços Abertura SOR

Estruturação de Sistemas Operacionais ü Monolítico ü Camadas ü Cliente-Servidor (incl. SOD, SOR, middleware) Virtualização

Estrutura de Sistemas Operacionais: Máquina Virtual (Virtualização) Linux Linux (devel) XP Windows 7 MacOS Virtual Machine Monitor Hardware VMM opera na interface de hardware, fornecendo uma interface idêntica para os SOs acima

Virtual Machines: Desde os anos 60 Figure 1-28. The structure of VM/370 with CMS. Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall, Inc. All rights reserved.

Virtual Machines: Tipos (Arquiteturas) Figure 1-29. (a) A type 1 hypervisor. (b) A type 2 hypervisor. Hardware Hardware Hipervisor Tipo 1 Hipervisor Tipo 2 Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall, Inc. All rights reserved.

Hipervisor Virtual User Mode User mode Opera@ng System Virtual Kernel Mode Kernel mode Hypervisor Hardware Monitor Mode o Hardware-supported o Roda em modo hardware especial

Arquitetura Hosted Monitor User App Guest OS (Linux) Kernel Module Host OS (Windows XP) Virtual Machine Monitor Hardware

Arquitetura Hosted Monitor User App Guest OS (Linux) Kernel Module Host OS (Windows XP) Device I/O Network, Disk, Display, Keyboard, Timer, USB Virtual Machine Monitor Hardware

Escalonamento Hosted Monitor 3 User App User App Guest OS (Linux) Guest OS (Windows 8) 1 CPU Scheduler 2 Kernel Module Host OS (Window XP) Virtual Machine Monitor Virtual Machine Monitor Hardware

Escalonamento Hosted Monitor 8 User App User App Guest OS (Linux) Guest OS (Windows 8) 6 CPU Scheduler 5 7 Kernel Module Host OS (Window XP) 4 Virtual Machine Monitor Virtual Machine Monitor Hardware

Ex.: Cloud Computing Sob demanda VM VM VM VM Hipervisor Hardware

Mais sobre Processo Um programa em execução

Ciclo de vida de um processo e o que acontece em termos de memória, E/S, sistema de arquivos etc.

Contexto de Processo Informações CPU: Registradores Memória: Posições em uso E/S: Estado das requisições Estado do processo: Rodando, Bloqueado, Pronto Outras CPU Memória Vídeo Teclado E/S outros dispositivos

Estados de um Processo Criar Pronto desbloquear executar suspender (tempo) Bloqueado Rodando bloquear (I/O) Terminar Contexto ID do Processo Estado Prioridade Program Counter Ponteiros da Memória Contexto (outros regs.) I/O Status Informações gerais tempo de CPU limites, usuário, etc.

Criação de Processos Principais eventos que levam à criação de processos Início do sistema Execução de chamada ao sistema de criação de processos Solicitação do usuário para criar um novo processo Início de um job em lote

Término de Processos Condições que levam ao término de processos Saída normal (voluntária) Saída por erro (voluntária) Erro fatal (involuntário) Cancelamento por um outro processo (involuntário)

Hierarquias de Processos Processo pai cria um processo filho, processo filho pode criar seu próprio processo Formando uma hierarquia UNIX chama isso de grupo de processos Windows não possui o conceito de hierarquia de processos Todos os processos são criados iguais (sem conceito de pai e filho )

Conceito: Multiprogramação a) Multiprogramação de quatro programas b) Modelo conceitual de 4 processos sequenciais, independentes, mas c) Somente um processo está ativo a cada momento ð escalonamento

Escalonamento de processos Quando um ou mais processos estão prontos para serem executados, o sistema operacional deve decidir qual deles vai ser executado primeiro A parte do sistema operacional responsável por essa decisão é chamada escalonador, e o algoritmo usado para tal é chamado de algoritmo de escalonamento Para que um processo não execute tempo demais, praticamente todos os computadores possuem um mecanismo de relógio (clock) que causa uma interrupção, periodicamente

E threads? 7 5

O que vamos ver Gerenciamento de Processos / Escalonamento Gerenciamento de Memória / Memória Virtual Gerenciamento de Disco / Sistemas de Arquivos Gerenciamento de Entrada e Saída Middleware (2 a. parte)