Sistemas Operativos. Gestão de memória no Windows NT

Tamanho: px
Começar a partir da página:

Download "Sistemas Operativos. Gestão de memória no Windows NT"

Transcrição

1 Sistemas Operativos Gestão de memória no Windows NT Windows Internals, Russinovich, cap. 9, Memory Management Windows Via C/C++, Richter, cap. 13, cap. 14. MSDN, Centro de Cálculo Instituto Superior de Engenharia de Lisboa João Pedro Patriarca

2 Layout da área de sistema 0x NTLDR loads the kernel, HAL, and boot drivers here. The kernel then relocates the drivers to the system PTE area. Additional system PTEs, system cache, or special pool 0xFFFFFFFF System mapped views Session space Page tables Hyperspace and process working set lists System cache structures System cache Start of paged system area System PTE area Nonpaged system area Crash dump driver area Reserved for HAL usage bib: Windows Internals, fig. 9-10, Russinovich 2

3 Lista de frames na base de dados PFN (Page Frame Number) PFN array de estruturas que representam as frames da memória principal Estados das frames Active (valid) Transition Standby Modified Modified no-write Free Zeroed Rom Bad As frames Bad, Active e Transition não estão em nenhuma lista Zeroed Free Standby Bad Read only Modified Modified no-write PFN Database Active Active Active. : bib: Windows Internals, fig. 9-38, Russinovich 3

4 Diagrama de estados das Page Frames Page read from disk or kernel allocations Demand-zero page faults Standby page list Proccess working sets Soft page faults Modified page writer Free page list Zero page thread Zero page list Working set replacement Modified page list bib: adatpado Windows Internals, fig. 9-39, Russinovich 4

5 Relação entre Page Tables e Page Frame Number Database Process 1 Page Table Valid Invalid: disk address Invalid: transition. : PFN Database In use Standby list Process 2 Page Table Valid Invalid: disk address Valid. : Prototype PTE In use In use Process 3 Page Table Invalid Invalid: transition Invalid: disk address. : Modified list. : bib: adaptado do livro Windows Internals, fig. 9-37, Russinovich 5

6 Copy-on-write Optimização com o intuito de preservar a memória física A secção.data de uma dll pode ser marcada como COPY_ON_WRITE Na primeira escrita é criada uma nova página privada marcada como Read/Write para o processo que promoveu a escrita Passos: A excepção gerada é apanhada e o gestor de memória verifica se se trata de uma página marcada como COPY_ON_WRITE Em vez de reportar a excepção como um acesso de violação aloca uma página Read/Write na memória física copia a página original para a nova página actualiza a informação de mapeamento da página executa novamente a instrução que provocou a excepção a nova execução e respectiva escrita já terá sucesso Cada processo que promova uma escrita na página obterá a sua própria cópia privada 6

7 Working set Carregamento Demand Paging com clustering (pre-paging). São carregadas em antecipação entre 1 a 8 páginas na vizinhança da página em falta Substituição As políticas do Windows NT tem como objectivo manter (em situações de escassez de memória) o conjunto de páginas físicas de cada processo (resident set) o mais possível próximo do seu working set. Baseiam-se na existência de limites (dinâmicos) que especificam o mínimo e máximo working set do processo. Uma thread a executar em modo kernel, denominada de Balance Set Manager, percorre periodicamente (em cada segundo) os espaços de endereçamento de cada processo (começando dos antigos e grandes até aos novos e pequenos) Primeiro, os limites mínimo e máximo dos working sets de cada processo são ajustados de acordo com o número de page faults que ocorreram no processo Depois disso são percorridas as tabelas que mapeiam o espaço de endereçamento do processo. Para cada página, se esta não tiver marcada como acedida, é incrementando um contador, associado à página. Caso contrário é feito reset ao respectivo bit, e o contador é colocado a zero Em caso de necessidade (se houver poucas page frames livres) são libertadas páginas do processo que não tenham sido acedidas há mais tempo (aquelas cujo contador está acima de determinado threshold) - variante local do algoritmo Clock bib: Slides Jorge Martins, Gestão de memória no Windows NT 7

8 Informação sobre memória no Task manager Memória RAM disponível para OS e aplicações Somatório das listas standby e modified Memória utilizável de imediato: somatório listas standby, free e zeroed Somatório das listas free e zeroed Total/máximo de memória committed (incluindo Paging files) 8

9 Subsistema Windows Windows API GetSystemInfo VOID WINAPI GetSystemInfo(LPSYSTEM_INFO psi); Kernel32.dll, Windows.h typedef struct _SYSTEM_INFO { union { DWORD dwoemid; struct { WORD wprocessorarchitecture; WORD wreserved; }; } DWORD dwpagesize; LPVOID lpminimumapplicationaddress; LPVOID lpmaximumapplicationaddress; DWORD_PTR dwactiveprocessormask; DWORD dwnumberofprocessors; DWORD dwprocessortype; DWORD dwallocationgranularity; WORD wprocessorlevel; WORD wprocessorrevision; } SYSTEM_INFO, *LPSYSTEM_INFO; Windows Data Types: 9

10 Subsistema Windows Windows API GlobalMemoryStatusEx Kernel32.dll, Windows.h BOOL WINAPI GlobalMemoryStatusEx(LPMEMORYSTATUSEX pmst); typedef struct _MEMORYSTATUS { DWORD dwlength; // sizeof (this) DWORD dwmemoryload; // [0..100] DWORDLONG ulltotalphys; // Max byte in RAM - Nonpage DWORDLONG ullavailphys; DWORDLONG ulltotalpagefile; // Max bytes in hard disk DWORDLONG ullavailpagefile; DWORDLONG ulltotalvirtual; // Max privates bytes for a process DWORDLONG ullavailvirtual; // Specific to self process DWORDLONG ullavailextendedvirtual; } MEMORYSTATUSEX, *LPMEMORYSTATUSEX; 10

11 Subsistema Windows Windows API GetPerformanceInfo BOOL WINAPI GetPerformanceInfo( _Out_ PPERFORMANCE_INFORMATION pperformanceinformation, _In_ DWORD cb ); typedef struct _PERFORMANCE_INFORMATION { DWORD cb; SIZE_T CommitTotal; SIZE_T CommitLimit; SIZE_T CommitPeak; SIZE_T PhysicalTotal; SIZE_T PhysicalAvailable; SIZE_T SystemCache; SIZE_T KernelTotal; SIZE_T KernelPaged; SIZE_T KernelNonpaged; SIZE_T PageSize; DWORD HandleCount; DWORD ProcessCount; DWORD ThreadCount; } PERFORMANCE_INFORMATION, *PPERFORMANCE_INFORMATION; Kernel32.dll, Windows.h 11

12 Subsistema Windows Windows API GetProcessMemoryInfo BOOL GetProcessMemoryInfo( HANDLE hprocess, PPROCESS_MEMORY_CONTERS ppmc, DWORD cbsize ); Psapi.dll, Psapi.h Deve ter direitos de acesso PROCESS_QUERY_INFORMATION e PROCESS_VM_READ typedef struct _PROCESS_MEMORY_COUNTERS_EX { DWORD cb; DWORD PageFaultCount; SIZE_T PeakWorkingSetSize; SIZE_T WorkingSetSize; SIZE_T QuotaPeakPagedPollUsage; SIZE_T QuotaPagedPoolUsage; SIZE_T QuotaPeakNonPagedPoolUsage; SIZE_T QuotaNonPagedPoolUsage; SIZE_T PagefileUsage; SIZE_T PeakPagefileUsage; SIZE_T PrivateUsage; } PROCESS_MEMORY_COUNTERS_EX, *PPROCESS_MEMORY_COUNTERS_EX; 12

13 GetSystemInfo GlobalMemoryStatusEx GetPerformanceInfo GetProcessMemoryInfo Apresenta informação global do sistema (3 primeiras funções) De 1 em 1 segundo apresenta ProcessMemoryInfo 13

14 Alocação de memória / Espaços de endereçamento virtual Reserved Aloca região com dimensão quase sempre múltipla de 64 KB Campo dwallocationgranularity da estrutura SYSTEM_INFO Endereço base da região alocada alinhado com a dimensão de uma página Em termos de modelo de dados interfere nas VADs apenas (não são criadas PTEs) Qualquer acesso gera violação de acesso Usado na gestão do espaço que um stack ocupa em memória Committed Aloca região com granularidade igual à dimensão da página Pode alocar sobre uma região reservada Em termos de modelo de dados interfere nas PTEs A página é alocada na memória principal apenas no primeiro acesso Free Não estão incluídas em nenhum nó da árvore de VADs 14

15 Virtual Address Descriptors (VADs) Range: through 2000FFFF Protection: Read/Write Inheritance: Yes Range: through 0000FFFF Protection: Read-only Inheritance: No Range: 4E through 4F Protection: Copy-on-write Inheritance: Yes Range: through 3300FFFF Protection: Read-only Inheritance: No Range: 7AAA0000 through 7AAA00FF Protection: Read/Write Inheritance: No bib: Windows Internals, fig. 9-32, Russinovich 15

16 Page Faults Razões para Page Faults Acesso a página que não está residente em memória principal mas presente em disco Acesso a página presente nas listas standby ou modified Acesso a página não presente na PT Acesso a página kernel a partir de user Escrita numa página read-only Acesso a uma demand-zero page Escrita numa página guard page Escrita numa página copy-on-write Escrita numa página válida mas que ainda não foi escrita para o seu backing store Executa código numa página marcada como não executável Consequências do Page Fault Aloca uma frame e lê a página do disco ( hard page fault) Coloca a página como válida actualizando a PTE do processo ( soft page fault) Violação de acesso Violação de acesso Violação de acesso Adiciona uma página com zeros ao working set Violação guard page (se acesso ao user stack expande-o) Copia a página para uma página privada ao processo Coloca a 1 o bit dirty da PTE Violação de acesso (apenas presente em plataformas que suportem protecção de execução) 16

17 Subsistema Windows Windows API VirtualAlloc alocação de memória virtual LPVOID WINAPI VirtualAlloc( LPVOID pvaddress, SIZE_T dwsize, DWORD fdwallocationtype, DWORD fdwprotect ); BOOL WINAPI VirtualFree( LPVOID pvaddress, SIZE_T dwsize, DWORD dwfreetype ); Kernel32.dll, Windows.h pvaddress: endereço virtual base onde se pretende alocar a região A função retorna 0 caso não exista espaço livre para a região especificada NULL caso não seja relevante a localização da região fdwallocationtype: MEM_RESERVE [MEM_TOP_DOWN*] MEM_COMMIT Usadas em OR para reservar e commit na mesma chamada A função VirtualAlloc retorna NULL em caso de insucesso dwfreetype: MEM_DECOMMIT MEM_RELEASE: pvaddress igual ao endereço retornado pelo VirtualAlloc dwsize igual a 0 * pvaddress must be NULL 18

18 Atributos de protecção de uma Page Atributos de protecção PAGE_NOACCESS PAGE_READONLY PAGE_READWRITE PAGE_EXECUTE PAGE_EXECUTE_READ PAGE_EXECUTE_READWRITE PAGE_WRITECOPY PAGE_EXECUTE_WRITECOPY PAGE_NOCACHE, PAGE_WRITECOMBINE, PAGE_GUARD Descripção (violação nos acessos) Leitura, escrita e execução Escrita e execução Execução Leitura e escrita Escrita Nunhuma violação Violação na execução; Na escrita, o sistema cria cópia privada com atributos read/write para o processo Nenhuma violação; Na escrita, o mesmo de cima Podem ser combinados (OR bit a bit) com os anteriores excepto PAGE_NOACCESS PAGE_GUARD: one time shot for writes 19

19 VirtualAlloc Observar com o VMMap o estado das páginas nas diferentes fases do programa: Após reserva de um bloco Após commited de uma página Após acesso de escrita 20

20 Subsistema Windows Windows API VirtualQuery estado de uma região de páginas DWORD WINAPI VirtualQuery( LPCVOID pvaddress, PMEMORY_BASIC_INFORMATION pmbi, DWORD dwlength); DWORD WINAPI VirtualQueryEx(HANDLE hprocess,...); Kernel32.dll, Windows.h typedef struct _MEMORY_BASIC_INFORMATION { PVOID BaseAddress; PVOID AllocationBase; DWORD AllocationProtect; SIZE_T RegionSize; DWORD State; // MEM_FREE, MEM_RESERVE, MEM_COMMIT DWORD Protect;// PAGE_* (campo válido no estado MEM_COMMIT) DWORD Type; // MEM_IMAGE, MEM_MAPPED, MEM_PRIVATE } MEMORY_BASIC_INFORMATION, *PMEMORY_BASIC_INFORMATION; 21

21 VirtualQuery Aplicação consola equivalente à ferramenta VMMap baseado no VirtualQueryEx 22

22 Subsistema Windows Windows API QueryWorkingSet estado da(s) página(s) de um processo BOOL WINAPI QueryWorkingSet( _In_ HANDLE hprocess, _Out_ PVOID pv, _In_ DWORD cb ); Kernel32.dll, Windows.h typedef struct _PSAPI_WORKING_SET_INFORMATION { ULONG_PTR NumberOfEntries; PSAPI_WORKING_SET_BLOCK WorkingSetInfo[1]; } PSAPI_WORKING_SET_INFORMATION, *PPSAPI_WORKING_SET_INFORMATION; typedef union _PSAPI_WORKING_SET_BLOCK { ULONG_PTR Flags; struct { ULONG_PTR Protection :5; ULONG_PTR ShareCount :3; ULONG_PTR Shared :1; ULONG_PTR Reserved :3; ULONG_PTR VirtualPage :20; }; } PSAPI_WORKING_SET_BLOCK, *PPSAPI_WORKING_SET_BLOCK; 23

23 QueryWorkingSet A definir 24

24 Mapeamento de ficheiros no espaço de endereçamento do processo 25

25 Subsistema Windows Windows API (passo 1) Mapeamento de dispositivos ficheiro CreateFile Retorna INVALID_HANDLE_VALUE (-1) em vez de NULL em caso de erro HANDLE WINAPI CreateFile ( PCTSTR hfile, DWORD dwdesiredaccess, DWORD dwsharemode, PSECURITY_ATTRIBUTES psa, DWORD dwcreationdisposition, DWORD dwflagsandattributes, HANDLE htemplatefile); GetFileSizeEx SetFilePointerEx Synchronous Device I/O ReadFile WriteFile FlushFileBuffers CancelSynchronousIo 0 GENERIC_READ GENERIC_WRITE GENERIC_READ GENERIC_WRITE Kernel32.dll, Windows.h 0 FILE_SHARE_READ FILE_SHARE_WRITE FILE_SHARE_READ FILE_SHARE_WRITE CREATE_NEW, CREATE_ALWAYS, OPEN_EXISTING, OPEN_ALWAYS, TRUNCATE_EXISTING FILE_ATTRIBUTE_ARCHIVE, FILE_ATTRIBUTE_ENCRYPTED, FILE_ATTRIBUTE_HIDDEN, FILE_ATTRIBUTE_NORMAL, FILE_ATTRIBUTE_NOT_CONTENT_INDEXED, FILE_ATTRIBUTE_OFFLINE, FILE_ATTRIBUTE_READONLY. FILE_ATTRIBUTE_SYSTEM, FILE_ATTRIBUTE_TEMPORARY 26

26 Subsistema Windows Windows API (passo 2) Memory Mapped Files HANDLE WINAPI CreateFileMapping( HANDLE hfile, PSECURITY_ATTRIBUTES psa, DWORD fdwprotect, DWORD dwmaximumsizehigh, DWORD dwmaximumsizelow, PCTSTR pszname); Forma para associar ficheiros presentes em disco no espaço de endereçamento de um processo Mapear um ficheiro em disco no espaço de endereçamento local Carregar em memória ficheiros EXE e DLLs Kernel32.dll, Windows.h PAGE_READONLY (GENERIC_READ) PAGE_READWRITE (GENERIC_READ GENERIC_WRITE) PAGE_WRITECOPY (GENERIC_READ ou GENERIC_READ GENERIC_WRITE) PAGE_EXECUTE_READ (GENERIC_READ e GENERIC_EXECUTE) PAGE_EXECUTE_READWRITE (GENERIC_READ, GENERIC_WRITE e GENERIC_EXECUTE) Partilha de memória entre vários processos (na ausência de ficheiro) As páginas removidas da memória principal são mantidas no ficheiro em disco 27

27 Subsistema Windows Windows API (passo 3) Mapeamento de uma vista do ficheiro MapViewOfFile Kernel32.dll, Windows.h PVOID WINAPI MapViewOfFile ( HANDLE hfilemappingobject, DWORD dwdesiredaccess, DWORD dwfileoffsethigh, DWORD dwfileoffsetlow, DWORD dwnumberofbytestomap); FILE_MAP_WRITE (PAGE_READWRITE), FILE_MAP_READ (PAGE_READONLY ou PAGE_READWRITE), FILE_MAP_ALL_ACCESS (o OR de todos excepto EXECUTE), FILE_MAP_COPY (PAGE_WRITECOPY), FILE_MAP_EXECUTE (PAGE_EXECUTE_READWRITE ou PAGE_EXECUTE_READ) Realiza a reserva e commit no espaço de endereçamento do processo para uma vista do ficheiro 28

28 Subsistema Windows Windows API (passos 4, 5 e 6) Libertação de memória e dos objectos criados BOOL WINAPI UnmapViewOfFile ( PVOID pvbaseaddress); Especiais cuidados se a vista foi mapeada com o atributo FILE_MAP_COPY Forçar a escrita em disco BOOL WINAPI FlushViewOfFile ( PVOID pvaddress, SIZE_T dwnumberofbytestoflush); Valor obtido na chamada MapViewOfFile Kernel32.dll, Windows.h CloseHandle( HANDLE h ); Usado para fechar um objecto kernel (objectos obtidos por CreateFile e CreateFileMapping) A ordem de chamada é indiferente e pode acontecer antes da chamada de UnmapViewOfFile 29

29 CreateFile CreateFileMapping MapViewOfFile Demo com o atributo de acesso FILE_MAP_COPY Exemplo de utilização: leitura das últimas mensagens adicionadas a um ficheiro de logs (exercício no Lab 2) 30

30 Bibliografia Windows Via C/C++, Richter, cap. 13, cap. 14. MSDN, 31

Gestão de Memória algoritmos e políticas

Gestão de Memória algoritmos e políticas Gestão de Memória algoritmos e políticas Criação de espaços de endereçamento virtual com gestão eficiente (gasto mínimo) da memória física disponível O que carregar(colocar em memória física) e quando?

Leia mais

Sumário. Estruturas de suporte à paginação Entrada de tabela de páginas Visão geral da tradução de um endereço virtual

Sumário. Estruturas de suporte à paginação Entrada de tabela de páginas Visão geral da tradução de um endereço virtual Sumário Estruturas de suporte à paginação Entrada de tabela de páginas Visão geral da tradução de um endereço virtual Gestão de memória no csoker Layout do espaço de endereçamento linear Layout da memória

Leia mais

Gestão de memória - Memory Management Unit (MMU)

Gestão de memória - Memory Management Unit (MMU) Gestão de memória - Memory Management Unit (MMU) A distinção entre espaço de edereçamento virtual e espaço de endereçamento físico é fundamental na eficiente gestão do recurso memória física (RAM) por

Leia mais

Algoritmos de Gestão de Memória

Algoritmos de Gestão de Memória Gestão de Memória Parte II - algoritmos Sistemas Operativos 2011 / 2012 Algoritmos de Gestão de Memória Os algoritmos de gestão de memória são utilizados para decidir: Onde se deve colocar um bloco (segmento

Leia mais

Gestão de memória - Memory Management Unit (MMU)

Gestão de memória - Memory Management Unit (MMU) Gestão de memória - Memory Management Unit (MMU) A distinção entre espaço de edereçamento virtual e espaço de endereçamento físico é fundamental na eficiente gestão do recurso memória física (RAM) por

Leia mais

Por dentro do Windows: Gerenciamento de Memória

Por dentro do Windows: Gerenciamento de Memória Por dentro do Windows: Gerenciamento de Memória Rodrigo Strauss http://www.1bit.com. ://www.1bit.com.brbr 1 Definindo Windows Falaremos somente sobre Windows NT NT 3.51 NT 4 Windows 2000 (NT5) Windows

Leia mais

Memória virtual. Sistemas de Computação

Memória virtual. Sistemas de Computação Memória virtual Fundamentos Memória virtual separação da memória lógica do usuário da memória física somente uma parte do programa precisa estar na memória para execução espaço de endereçamento lógico

Leia mais

Organização de um Sistema Operativo

Organização de um Sistema Operativo Gestão de Memória 1. Conceitos Básicos 2. Swapping 3. Memória Virtual 4. Algoritmos de substituição de páginas 5. Modelação de algoritmos de substituição de páginas 6. Questões no desenho de sistemas de

Leia mais

Sistemas Operativos. Sincronização de threads com objectos kernel no Windows. Centro de Cálculo Instituto Superior de Engenharia de Lisboa

Sistemas Operativos. Sincronização de threads com objectos kernel no Windows. Centro de Cálculo Instituto Superior de Engenharia de Lisboa Sistemas Operativos Sincronização de threads com objectos kernel no Windows Centro de Cálculo Instituto Superior de Engenharia de Lisboa João Pedro Patriarca (jpatri@cc.isel.ipl.pt) Objectos Kernel Processes

Leia mais

Input/Output. Acesso síncrono e assíncrono. Jorge Martins (jmartins@isel.pt) Centro de Cálculo Instituto Superior de Engenharia de Lisboa

Input/Output. Acesso síncrono e assíncrono. Jorge Martins (jmartins@isel.pt) Centro de Cálculo Instituto Superior de Engenharia de Lisboa Input/Output Acesso síncrono e assíncrono Centro de Cálculo Instituto Superior de Engenharia de Lisboa Jorge Martins (jmartins@isel.pt) Exemplos de dispositivos de Input/Output no Windows Ficheiro normal

Leia mais

Capítulo 8: Memória Principal. Operating System Concepts 8 th Edition

Capítulo 8: Memória Principal. Operating System Concepts 8 th Edition Capítulo 8: Memória Principal Silberschatz, Galvin and Gagne 2009 Objetivos Fornecer uma descrição detalhada das várias formas de organizar a memória do computador Discutir várias técnicas de gerenciamento

Leia mais

Memória. Gestão do espaço lógico Paginação Segmentação com paginação

Memória. Gestão do espaço lógico Paginação Segmentação com paginação Memória Gestão do espaço lógico Paginação Segmentação com paginação Paginação Divide-se a memória física em pequenos blocos de tamanho fixo chamados de páginas físicas (ou frames) o tamanho é uma potência

Leia mais

7 Mecanismos de gestão de memória. Prof. Ricardo Silva

7 Mecanismos de gestão de memória. Prof. Ricardo Silva 7 Mecanismos de gestão de memória Prof. Ricardo Silva Introdução Um programa reside no disco sob a forma de ficheiro executável Para ser executado, o programa tem de ser colocado em memória e associado

Leia mais

CreateFile para obter identificador (handle) CloseHandle - para fechar o identificador. DeviceIOControl para efectuar a comunicação propriamente dita.

CreateFile para obter identificador (handle) CloseHandle - para fechar o identificador. DeviceIOControl para efectuar a comunicação propriamente dita. Trabalho Prático Nº7 Software de Aplicação Código HOST 1. OBJECTIVOS - Implementar uma aplicação USB que comunique com o dispositivo via device-driver. 2. COMUNICAÇÃO DA APLICAÇÃO COM O DEVICE-DRIVER Nas

Leia mais

Arquitectura de Computadores

Arquitectura de Computadores Arquitectura de Computadores Memória Secundária (13.4) José Monteiro Licenciatura em Engenharia Informática e de Computadores Departamento de Engenharia Informática (DEI) Instituto Superior Técnico 29

Leia mais

Gerência de memória III

Gerência de memória III Gerência de memória III Eduardo Ferreira dos Santos Ciência da Computação Centro Universitário de Brasília UniCEUB Maio, 2016 1 / 45 Sumário 1 Memória Virtual Segmentação Paginação 2 Alocação de páginas

Leia mais

Memoria. UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática

Memoria. UNIVERSIDADE DA BEIRA INTERIOR Faculdade de Engenharia Departamento de Informática Arquitectura de Computadores II Engenharia Informática (11545) Tecnologias e Sistemas de Informação (6621) Memoria Fonte: Arquitectura de Computadores, José Delgado, IST, 2004 Nuno Pombo / Paulo Fazendeiro

Leia mais

Sistemas operacionais P A G I N A Ç Ã O D E M E M Ó R I A

Sistemas operacionais P A G I N A Ç Ã O D E M E M Ó R I A Sistemas operacionais P A G I N A Ç Ã O D E M E M Ó R I A O Espaço de Endereçamento lógico de um processo pode ser não contínuo; aloca-se memória física ao processo sempre que esta é disponível. A memória

Leia mais

INE5412 Sistemas Operacionais I

INE5412 Sistemas Operacionais I INE5412 Sistemas Operacionais I L. F. Friedrich Capítulo 3 Memoria Virtual Projeto/Implementação Sistemas operacionais modernos Terceira edição ANDREW S. TANENBAUM L. F. Friedrich Capítulo 3 Gerenciamento

Leia mais

Hierarquia de memória

Hierarquia de memória Hierarquia de memória Capítulo 6, Secção.{3..} Caches Slides adaptados dos slides do professor Pedro Pereira Consultar slides originais no moodle Centro de Cálculo Instituto Superior de Engenharia de Lisboa

Leia mais

Sistemas Operacionais: Memória Virtual

Sistemas Operacionais: Memória Virtual Sistemas Operacionais: Memória Virtual Memória virtual Memória virtual: separação entre a visão lógica do usuário e a memória física Somente uma parte do programa necessita estar na memória para executar

Leia mais

Memória Virtual. Paulo Sérgio Almeida. Grupo de Sistemas Distribuídos Departamento de Informática Universidade do Minho

Memória Virtual. Paulo Sérgio Almeida. Grupo de Sistemas Distribuídos Departamento de Informática Universidade do Minho Paulo Sérgio Almeida Grupo de Sistemas Distribuídos Departamento de Informática Universidade do Minho Memória virtual Introdução Separar o conceito de memória lógica/virtual que os processos manipulam

Leia mais

Features. 3 rd Generation Processor 386. Intel Register Set Operating Modes.

Features. 3 rd Generation Processor 386. Intel Register Set Operating Modes. 3 rd Generation Processor 386 P3 (386) = 3 rd Generation Processor Introduced: 0/985 Full 32b processor (32b registers. 32b internal and external databus. 32b address bus) 275k transistors. CM. 32-pin

Leia mais

Sumário. Sistemas Operativos 1

Sumário. Sistemas Operativos 1 Sumário Requisitos mínimos do hardware para suportar um SO protegido (ex: Windows/Linux) Mecanismos hardware de suporte nas arquitecturas x86/x64 Sequência de chamada de serviços sistema no Windows a 32

Leia mais

Sistemas de Memória III

Sistemas de Memória III Sistemas de Memória III José Costa Introdução à Arquitetura de Computadores Departamento de Engenharia Informática (DEI) Instituto Superior Técnico 2013-11-29 José Costa (DEI/IST) Sistemas de Memória III

Leia mais

Capítulo 8: Gestão de Memória

Capítulo 8: Gestão de Memória Capítulo 8: Gestão de Memória SUMÁRIO: Conhecimentos de base Gestão de memória? Porquê? Amarração de instruções e dados à memória Endereços lógicos e físicos Locação contígua Paginação Segmentação Segmentação

Leia mais

Gerência de Memória. Gerência de memória. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos. Memória: UCP. Unidade de controle

Gerência de Memória. Gerência de memória. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos. Memória: UCP. Unidade de controle Gerência de Gerência de Memória Memória:» central em sistemas de computador» CPU e sistema de I/O interagem com a» é um conjunto (array) de bytes ou palavras, cada um com seu próprio endereço» CPU faz

Leia mais

Gestão de Memória. mecanismos de gestão de memória protecção da memória algoritmos de gestão de memória. P. Ferreira/J. A. Marques - INESC/IST 01/02 1

Gestão de Memória. mecanismos de gestão de memória protecção da memória algoritmos de gestão de memória. P. Ferreira/J. A. Marques - INESC/IST 01/02 1 Gestão de Memória mecanismos de gestão de memória protecção da memória algoritmos de gestão de memória 1 Mecanismos de Gestão de Memória 2 Objectivos e Organização da Gestão de Memória objectivo: Gerir

Leia mais

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Organização e Arquitetura de Computadores I Slide 1 Memória Virtual os primeiros computadores (início dos anos 60) tinham memória principal muito reduzida O PDP-1 funcionava com uma memória de 4096 palavras

Leia mais

Introdução. Introdução aos Sistemas Operacionais Volnys Bernal. Sumário. Introdução aos Sistemas Operacionais. Sobre esta apresentação

Introdução. Introdução aos Sistemas Operacionais Volnys Bernal. Sumário. Introdução aos Sistemas Operacionais. Sobre esta apresentação Volnys Bernal 1998-2016 1 Volnys Bernal 1998-2016 2 Sumário aos Sistemas Operacionais Volnys Borges Bernal volnys@lsi.usp.br Laboratório de Sistemas Integráveis http://www.lsi.usp.br/ Objetivos de um Sistema

Leia mais

Memória Cache: Funcionamento

Memória Cache: Funcionamento Microcontroladores e Interfaces º Ano Eng. Electrónica Industrial Carlos A. Silva º Semestre de 5/6 http://www.dei.uminho.pt/lic/mint Assunto: Memória Cache Aula #9 9Maio6-M Memória Cache: Funcionamento

Leia mais

Gerenciamento de Memória

Gerenciamento de Memória Gerenciamento de Memória Conceitos básicos Swapping Alocação contígua Paginação Segmentação Segmentação com paginação Atribuição de endereços (ligação) de código e dados na memória A atribuição de endereços

Leia mais

Introdução. Introdução aos Sistemas Operacionais Volnys Bernal. Agenda. Introdução aos Sistemas Operacionais. Sobre estes slides

Introdução. Introdução aos Sistemas Operacionais Volnys Bernal. Agenda. Introdução aos Sistemas Operacionais. Sobre estes slides aos Sistemas Operacionais Volnys Bernal 1998-2005 1 Volnys Bernal 1998-2005 2 Agenda aos Sistemas Operacionais Volnys Borges Bernal volnys@lsi.usp.br http://www.lsi.usp.br/~volnys Objetivos do Sistema

Leia mais

Sistemas Operacionais Memória Virtual

Sistemas Operacionais Memória Virtual Universidade Estadual de Mato Grosso do Sul UEMS Curso de Licenciatura em Computação Sistemas Operacionais Memória Virtual Prof. José Gonçalves Dias Neto profneto_ti@hotmail.com Introdução Memória virtual

Leia mais

Gerência de Memória. Gerência de Memória Virtual. Gerência de Memória. Gerência de Memória. Gerência de Memória. Gerência de Memória 17/04/2017

Gerência de Memória. Gerência de Memória Virtual. Gerência de Memória. Gerência de Memória. Gerência de Memória. Gerência de Memória 17/04/2017 POLÍTICA DE SUBSTITUIÇÃO DE PÁGINAS Virtual Prof. Dr. Antonio Carlos Sementille Memória principal é limitada: necessidade de substituição de páginas. Escolha de substituição randômica: solução insatisfatória

Leia mais

http://www.ic.uff.br/~debora/fac! 1 Capítulo 4 Livro do Mário Monteiro Introdução Hierarquia de memória Memória Principal Organização Operações de leitura e escrita Capacidade 2 Componente de um sistema

Leia mais

Sistemas Operativos. Gestão de memória. Rui Maranhão (rma@fe.up.pt)

Sistemas Operativos. Gestão de memória. Rui Maranhão (rma@fe.up.pt) Sistemas Operativos Gestão de memória Rui Maranhão (rma@fe.up.pt) Gestão de memória idealmente a memória seria grande rápida não volátil contudo, na realidade existem limitações físicas! Portanto... hierarquia

Leia mais

ORGANIZAÇÃO DE COMPUTADORES CAPÍTULO4: MEMÓRIAPRINCIPAL

ORGANIZAÇÃO DE COMPUTADORES CAPÍTULO4: MEMÓRIAPRINCIPAL ORGANIZAÇÃO DE COMPUTADORES CAPÍTULO4: MEMÓRIAPRINCIPAL MEMÓRIA Componente de um sistema de computação cuja função é armazenar informações que são manipuladas pelo sistema para que possam ser recuperadas

Leia mais

13 de Maio de Aula 17

13 de Maio de Aula 17 13 de Maio de 2005 1 Memória Virtual I Aula 17 Estrutura desta aula Conceitos fundamentais em Memória Virtual (MV) Paginação e segmentação Terminologia Vantagens da MV Mecanismos de tradução dos endereços

Leia mais

Capítulo 9: Memória Virtual. Operating System Concepts 8 th Edition

Capítulo 9: Memória Virtual. Operating System Concepts 8 th Edition Capítulo 9: Memória Virtual Silberschatz, Galvin and Gagne 2009 Objetivos Descrever os benefícios de um sistema de memória virtual Explicar os conceitos de paginação sob demanda, algoritmo de substituição

Leia mais

Espaço de Endereçamento

Espaço de Endereçamento Gestão de Memória Parte I - mecanismos Sistemas Operativos 2015 / 2016 Espaço de Endereçamento Conjunto de posições de memória que um processo pode referenciar E se referenciar outras posições de memória?

Leia mais

Aula 16: Memória Principal e Memória Virtual

Aula 16: Memória Principal e Memória Virtual Aula 16: Memória Principal e Memória Virtual Memória Principal Performance na memória principal: Latência: Miss Penalty na Cache Access Time: tempo entre requisição e retorno de palavra Cycle Time:

Leia mais

Administração de Memória

Administração de Memória Administração de Memória 4.1 Administração básica de memória 4.2 Swapping 4.3 Memória Virtual 4.4 Algoritmos de substituição de páginas 4.5 Modelando algoritmos de substituição de páginas 4.6 Tópicos de

Leia mais

Sistemas Operativos. Multiprogramação; Multiplexação; Memória Física; Memória virtual; Trabalho/Job - Processo/Process/Task - Thread

Sistemas Operativos. Multiprogramação; Multiplexação; Memória Física; Memória virtual; Trabalho/Job - Processo/Process/Task - Thread Sistemas Operativos Multiprogramação; Multiplexação; Memória Física; Memória virtual; Trabalho/Job - Processo/Process/Task - Thread Resumo O SO necessita de código/software para gerir a memória - Gestão

Leia mais

Introdução aos Sistemas Operacionais

Introdução aos Sistemas Operacionais Volnys Bernal 1998-2017 1 Introdução aos Sistemas Operacionais Volnys Borges Bernal volnys@lsi.usp.br Laboratório de Sistemas Integráveis http://www.lsi.usp.br/ Volnys Bernal 1998-2017 2 Sumário Objetivos

Leia mais

LINGUAGEM C: ALOCAÇÃO DINÂMICA

LINGUAGEM C: ALOCAÇÃO DINÂMICA LINGUAGEM C: ALOCAÇÃO DINÂMICA Prof. André Backes DEFINIÇÃO Sempre que escrevemos um programa, é preciso reservar espaço para as informações que serão processadas. Para isso utilizamos as variáveis Uma

Leia mais

Capítulo Sistemas de Memória Memória Virtual. Ch7b 1

Capítulo Sistemas de Memória Memória Virtual. Ch7b 1 Capítulo Sistemas de Memória Memória Virtual Ch7b Memória Virtual Memória principal funciona como uma cache para o armazenamento secundário (disco) Virtual addresses Physical addresses Address translation

Leia mais

Sistemas Operativos. Introdução. Slides adaptados dos slides do professor Jorge Martins. Centro de Cálculo Instituto Superior de Engenharia de Lisboa

Sistemas Operativos. Introdução. Slides adaptados dos slides do professor Jorge Martins. Centro de Cálculo Instituto Superior de Engenharia de Lisboa Sistemas Operativos Introdução Slides adaptados dos slides do professor Jorge Martins Centro de Cálculo Instituto Superior de Engenharia de Lisboa João Pedro Patriarca (jpatri@cc.isel.ipl.pt) Avaliação

Leia mais

Aula 16: Memória Principal e Memória Virtual

Aula 16: Memória Principal e Memória Virtual Aula 16: Memória Principal e Memória Virtual Memória Principal Performance na memória principal: Latência: Miss Penalty na Cache Access Time: tempo entre requisição e retorno de palavra Cycle Time: tempo

Leia mais

Gerenciamento de memória

Gerenciamento de memória Gerenciamento de memória O que faz? Controla o uso dos espaços em memória Controla os modos de endereçamento dos processos Como funciona a memória? Hierarquia de memória A falta de desempenho A velocidade

Leia mais

AULA 14 - Memória Virtual

AULA 14 - Memória Virtual AULA 14 - Memória Virtual A idéia básica da memória virtual é permitir que programas muito maiores que a memória disponível possam ser executados. Para isso, em 1961 Fotheringham criou o método conhecido

Leia mais

Boot, BIOS, Bootloader

Boot, BIOS, Bootloader Boot, BIOS, Bootloader Prof. Alexandre Beletti POST da BIOS O primeiro a ser executado é o POST Verifica presença de dispositivos (Ex: teclado, monitor, etc) Verifica se a memória RAM está OK (teste básico)

Leia mais

Arquitetura de Sistemas Operacionais

Arquitetura de Sistemas Operacionais Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz Paulo Maia Capítulo 10 Gerência de Memória Virtual Cap 10 Gerência de Memória Virtual 1 Sumário Introdução Espaço de Endereçamento Virtual

Leia mais

Sistemas Operacionais II Unix: Memória e E/S. Geraldo Braz Junior

Sistemas Operacionais II Unix: Memória e E/S. Geraldo Braz Junior Sistemas Operacionais II Unix: Memória e E/S Geraldo Braz Junior Gerenciamento de Memória Gerenciamento de Memória Espaço de Endereçamento 1. Segmento de código Instruções de máquina que formam o código

Leia mais

Introdução. Introdução aos Sistemas Operacionais Volnys Bernal. Agenda. Introdução aos Sistemas Operacionais. Sobre esta apresentação

Introdução. Introdução aos Sistemas Operacionais Volnys Bernal. Agenda. Introdução aos Sistemas Operacionais. Sobre esta apresentação aos Sistemas Operacionais Volnys Bernal 1998-2010 1 Volnys Bernal 1998-2010 2 Agenda aos Sistemas Operacionais Volnys Borges Bernal volnys@lsi.usp.br http://www.lsi.usp.br/~volnys Laboratório de Sistemas

Leia mais

Caching. Caches do Sistema de Ficheiros

Caching. Caches do Sistema de Ficheiros Caching Caches do Sistema de Ficheiros Acessos aos dispositivos de memória de massa: 4 a 5 ordens de grandeza mais lentos que os acessos a memória, Como usar caches para reduzir peso das escritas e leituras

Leia mais

Gerenciamento de memória

Gerenciamento de memória Gerenciamento de memória Adriano J. Holanda 19/11/2015 Revisão: processos Visão geral Composto por código do programa em execução, arquivos abertos, sinais pendentes, dados internos do núcleo do SO, estado

Leia mais

Sistemas Operacionais. Rodrigo Rubira Branco rodrigo@kernelhacking.com rodrigo@fgp.com.br. www.fgp.com.br

Sistemas Operacionais. Rodrigo Rubira Branco rodrigo@kernelhacking.com rodrigo@fgp.com.br. www.fgp.com.br Sistemas Operacionais Rodrigo Rubira Branco rodrigo@kernelhacking.com rodrigo@fgp.com.br Tipos de Sistemas Operacionais De Sistemas Embarcados (PalmOS,WinCE,WinXPEmbbeded,Linux) Hardware simples, especifico

Leia mais

Memória virtual. Sistemas Segmentados

Memória virtual. Sistemas Segmentados Memória virtual Sistema de memória virtual - aquele onde os endereços usados pelos programas podem ser distintos dos endereços físicos da memória central Os endereços que os programas usam são endereços

Leia mais

Gerência da Memória. Adão de Melo Neto

Gerência da Memória. Adão de Melo Neto Gerência da Memória Adão de Melo Neto 1 Memória Principal Antigamente Recurso escasso Desenvolvimento de um sistema operacional (SO) que não ocupassem muito espaço de memória principal (MP) Atualmente

Leia mais

Capítulo 9: Memória Virtual. Operating System Concepts 8th Edition

Capítulo 9: Memória Virtual. Operating System Concepts 8th Edition Capítulo 9: Memória Virtual Sobre a apresentação (About the slides) Os slides e figuras dessa apresentação foram criados por Silberschatz, Galvin e Gagne em 2009. Esse apresentação foi modificada por Cristiano

Leia mais

Função Fundamental do SO

Função Fundamental do SO Função Fundamental do SO Gestão do Hardware Uma das funções fundamentais do sistema operativo é gerir os recursos do hardware de um modo o mais transparente possível ao utilizador Recursos principais a

Leia mais

Capítulo 9: Memória Virtual

Capítulo 9: Memória Virtual Capítulo 9: Memória Virtual Introdução Soluções Historicas Overlays Swapping Memoria Virtual Demand Paging Page Replacement Algoritmos Outros Assuntos OS Examples CPU Disk 9. Como vencer a capacidade limitada

Leia mais

UFRJ IM - DCC. Sistemas Operacionais I. Unidade III Memória Virtual. Prof. Antonio Carlos Gay Thomé Prof. Aux. Simone Markenson Pech 1

UFRJ IM - DCC. Sistemas Operacionais I. Unidade III Memória Virtual. Prof. Antonio Carlos Gay Thomé Prof. Aux. Simone Markenson Pech 1 18/9/009 UFRJ IM - DCC Sistemas Operacionais I Unidade III Memória Virtual 18/9/009 Prof. Antonio Carlos Gay Thomé Prof. Aux. Simone Markenson Pech 1 ORGANIZAÇÃO DA UNIDADE Processador Memória Primária

Leia mais

Aula 21 Ordenação externa

Aula 21 Ordenação externa MC3305 Algoritmos e Estruturas de Dados II Aula 21 Ordenação externa Slides adaptados de Brian Cooper (Yahoo Research) Prof. Jesús P. Mena-Chalco jesus.mena@ufabc.edu.br 2Q-2015 1 Números de Ackermann

Leia mais

Arquitetura de Computadores. Memórias

Arquitetura de Computadores. Memórias Arquitetura de Computadores Memórias Relembrando Arquitetura de Von Neuman Memória Acesso por palavra Programas são armazenados aqui Controlador de memoria Dispositivos de entrada Dispositivos de saída

Leia mais

Capítulo 6 Nível do Sistema Operacional

Capítulo 6 Nível do Sistema Operacional Capítulo 6 Nível do Sistema Operacional - Sistema Operacional: Programa que, do ponto de vista do programador, adiciona uma grande quantidade de instruções e funcionalidades bem além das disponibilizadas

Leia mais

Hierarquia de Memória

Hierarquia de Memória Hierarquia de Memória Introdução e Análise do Desempenho AC1 Hierarquia da Memória: Análise do Desempenho 1 Hierarquia de Memória A velocidade dos processadores tem aumentado muito mais rapidamente do

Leia mais

Memória Cache. Adriano J. Holanda. 12 e 16/5/2017

Memória Cache. Adriano J. Holanda. 12 e 16/5/2017 Memória Cache Adriano J Holanda 12 e 16/5/2017 Memória: princípios físicos Revisão: Hierarquia de memória; Memória RAM: estática, dinâmica; Memória ROM: PROM, EPROM, EEPROM; Memória flash Memória: fundamentos

Leia mais

Sistemas de Operação

Sistemas de Operação Universidade Nova de Lisboa Faculdade de Ciências e Tecnologia Departamento de Informática Sistemas de Operação Estruturas e Componentes do S.O. (1) Baseado nos transparente de SO de Pedro Medeiros (DI/FCT/UNL)

Leia mais

Gerência de Memória. Eduardo Ferreira dos Santos. Abril, Ciência da Computação Centro Universitário de Brasília UniCEUB 1 / 45

Gerência de Memória. Eduardo Ferreira dos Santos. Abril, Ciência da Computação Centro Universitário de Brasília UniCEUB 1 / 45 Gerência de Memória Eduardo Ferreira dos Santos Ciência da Computação Centro Universitário de Brasília UniCEUB Abril, 2016 1 / 45 Sumário 1 Introdução 2 Espaços de endereçamento 3 Realocação estática e

Leia mais

Sistemas de Ficheiros

Sistemas de Ficheiros Paulo Sérgio Almeida Grupo de Sistemas Distribuídos Departamento de Informática Universidade do Minho 2005/2006 Ficheiro Ficheiros Unidade lógica de armazenamento Espaço de endereçamento lógico contíguo

Leia mais

PCS-2529 Introdução aos Processadores. Prof. Dr. Paulo Sérgio Cugnasca

PCS-2529 Introdução aos Processadores. Prof. Dr. Paulo Sérgio Cugnasca PCS-2529 Introdução aos Processadores Prof. Dr. Paulo Sérgio Cugnasca 1 2 Existem 4 esquemas diferentes de E/S possíveis, cada um se aplicando em uma determinada situação. E/S Programada. E/S Acionada

Leia mais

Universidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Bacharelado em Ciência da Computação.

Universidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Bacharelado em Ciência da Computação. Universidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Bacharelado em Ciência da Computação Organização e Arquitetura de Computadores I Organização e Arquitetura Básicas

Leia mais

Universidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Bacharelado em Ciência da Computação.

Universidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Bacharelado em Ciência da Computação. Universidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Bacharelado em Ciência da Computação Organização e Arquitetura de I Organização e Arquitetura Básicas B de (Parte II)

Leia mais

Memórias Semicondutoras

Memórias Semicondutoras Memórias Semicondutoras Walter Fetter Lages w.fetter@ieee.org Universidade Federal do Rio Grande do Sul Escola de Engenharia Departamento de Engenharia Elétrica Copyright (c) Walter Fetter Lages p.1 Introdução

Leia mais

Gerência de Memória. Paginação

Gerência de Memória. Paginação Gerência de Memória Paginação Endereçamento Virtual (1) Espaço de endereçamento dos processos não linearmente relacionado com a memória física Cada vez que são usados, os endereços virtuais são convertidos

Leia mais

Memória partilhada em Unix SysV

Memória partilhada em Unix SysV Memória partilhada em Unix SysV A forma mais geral de comunicação entre processos é através de memória partilhada. segmento de memoria partilhada Processo A Processo B p q Criação de um segmento de memória

Leia mais

Processos. Nuno Ferreira Neves Faculdade de Ciências de Universidade de Lisboa. Fernando Ramos, Nuno Neves, Sistemas Operativos,

Processos. Nuno Ferreira Neves Faculdade de Ciências de Universidade de Lisboa. Fernando Ramos, Nuno Neves, Sistemas Operativos, Processos Nuno Ferreira Neves Faculdade de Ciências de Universidade de Lisboa Objetivos da aula Introduzir a noção de processo um programa em execução que é a base de toda a computação Descrever as várias

Leia mais

Reserva de memória não-contígua significa que a memória atribuída a um objecto pode ser composta de bocados espalhados pela memória física.

Reserva de memória não-contígua significa que a memória atribuída a um objecto pode ser composta de bocados espalhados pela memória física. Gestão de Memória Não-Contígua Reserva de memória não-contígua significa que a memória atribuída a um objecto pode ser composta de bocados espalhados pela memória física. Embora os endereços virtuais sejam

Leia mais

5 de Maio de Aula 15

5 de Maio de Aula 15 5 de Maio de 2005 1 Caches I Aula 15 Estrutura desta aula Hierarquia de memórias Tecnologia das memórias Fundamentos de caches Organização em blocos Colocação dos blocos Identificação dos blocos Políticas

Leia mais

EA075 Memória virtual

EA075 Memória virtual EA075 Memória virtual Faculdade de Engenharia Elétrica e de Computação (FEEC) Universidade Estadual de Campinas (UNICAMP) Prof. Levy Boccato 1 Motivação Problema: programas cujos tamanhos ultrapassavam

Leia mais

TI SO do Ponto de Vista do Programador de Aplicações

TI SO do Ponto de Vista do Programador de Aplicações TI SO do Ponto de Vista do Programador de Aplicações SO do Ponto de Vista do Programador de Aplicações Interface Coerente para as Aplicações Especialmente importante se: Há várias plataformas hardware

Leia mais

Introdução aos Sistemas Operacionais. Subsistema de Arquivos

Introdução aos Sistemas Operacionais. Subsistema de Arquivos Introdução aos Sistemas Operacionais Subsistema de Arquivos Eleri Cardozo FEEC/Unicamp Subsistema de Arquivos O subsistema de arquivos deve prover soluções para as seguintes questões: Como a informação

Leia mais

Gerência de Memória. Alocação

Gerência de Memória. Alocação Gerência de Memória Alocação Introdução Atribuição de Endereços, Carregamento Dinâmico, Ligação Dinâmica Espaço de Endereçamento Físico versus Lógico Alocação Contígua Simples Overlay Alocação Particionada

Leia mais

Gerenciamento de Memória

Gerenciamento de Memória Gerenciamento de Memória Prof. Clodoaldo Ap. Moraes Lima Páginas compartilhadas Código compartilhado Paginação possibilita compartilhamento de código Uma cópia de código read-only é compartilhado entre

Leia mais

SISTEMAS OPERACIONAIS ABERTOS Prof. Ricardo Rodrigues Barcelar

SISTEMAS OPERACIONAIS ABERTOS Prof. Ricardo Rodrigues Barcelar - Módulo 3 - MEMÓRIA VIRTUAL A maioria dos computadores possui uma grande quantidade de memória disponível para uso da CPU. Infelizmente, nem sempre essa quantidade de memória é suficiente para rodar de

Leia mais

Lista Encadeada (Linked List)

Lista Encadeada (Linked List) Lista Encadeada (Linked List) As listas ou listas encadeadas são a estrutura de dados mais simples concebível excetuando-se naturalmente os arrays. Listas encadeadas nada mais são que uma seqüência de

Leia mais

Programação Procedimental GBC /1 Prof. Renan Cattelan Prática 10. Estruturas e alocação dinâmica

Programação Procedimental GBC /1 Prof. Renan Cattelan  Prática 10. Estruturas e alocação dinâmica Programação Procedimental GBC014 2015/1 Prof. Renan Cattelan www.facom.ufu.br/~renan Prática 10 Estruturas e alocação dinâmica Exercício Crie um programa para armazenar uma agenda de contatos pessoais

Leia mais

Gerenciamento de memória Memória Virtual

Gerenciamento de memória Memória Virtual Sistemas Operacionais Gerenciamento de memória Memória Virtual Capítulos 8 Operating Systems: Internals and Design Principles W. Stallings Requisitos Memória Virtual e Paginação referências em um processo

Leia mais

EL68E Sistemas Embarcados Prof. Douglas RENAUX

EL68E Sistemas Embarcados Prof. Douglas RENAUX EL68E Sistemas Embarcados Prof. Douglas RENAUX Memórias Tecnologias de Memórias Voláteis x Não-Voláteis Estáticas x Dinâmicas Tipos: ROM PROM EPROM Flash SRAM SDRAM DDR Conceitos Organização externa x

Leia mais

5.2 - Armazenamento em Disco

5.2 - Armazenamento em Disco CEFET-RS Curso de Eletrônica 5.2 - Armazenamento em Disco Aspectos LógicosL Formatação e Sistemas de Arquivos Profs. Roberta Nobre & Sandro Silva robertacnobre@gmail.com e sandro@cefetrs.tche.br Unidade

Leia mais

ecos - Gestores de dispositivos

ecos - Gestores de dispositivos ecos - Gestores de dispositivos gestores de dispositivos ( device drivers ) interface aplicacional (API) gestor de linha série raw serial driver tty driver ecos - device driver - user API cyg_io_lookup

Leia mais

A API Win32 dos Sistemas Operativos Windows Alguns aspectos

A API Win32 dos Sistemas Operativos Windows Alguns aspectos Miguel Pimenta Monteiro A API Win32 dos Sistemas Operativos Windows Alguns aspectos 1. Programas em C em Win32 1.1 Início e terminação de programas 1.1.1 Início Os sistemas operativos Windows (Windows

Leia mais

Capítulo 11 Sistemas de Arquivos

Capítulo 11 Sistemas de Arquivos Sistemas Operacionais Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios Capítulo Sistemas de s Introdução O armazenamento e a recuperação de informações

Leia mais

É um sinal elétrico periódico que é utilizado para cadenciar todas as operações realizadas pelo processador.

É um sinal elétrico periódico que é utilizado para cadenciar todas as operações realizadas pelo processador. Universidade Estácio de Sá Curso de Informática Disciplina de Organização de Computadores II Prof. Gabriel P. Silva - 1 o Sem. / 2005 2 ª Lista de Exercícios 1) O que é o relógio de um sistema digital?

Leia mais

Gerenciamento de Memória

Gerenciamento de Memória Gerenciamento de Memória Prof. Clodoaldo Ap. Moraes Lima Paginação Espaço de endereço de um processo pode ser não contíguo; ao processo é alocado memória física sempre que disponível. Divide memória física

Leia mais

LISTA DE EXERCÍCIOS 02

LISTA DE EXERCÍCIOS 02 FACULDADE: CENTRO UNIVERSITÁRIO DE BRASÍLIA UniCEUB CURSO: CIÊNCIA DA COMPUTAÇÃO DISCIPLINA: SISTEMAS OPERACIONAIS CARGA HORÁRIA: 75 H. A. ANO/SEMESTRE: 2016/01 PROFESSOR: EDUARDO FERREIRA DOS SANTOS HORÁRIOS:

Leia mais

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Organização e Arquitetura de Computadores I Memória Cache Slide 1 Introdução Tamanho Função de Mapeamento Política de Escrita Tamanho da Linha Número de Memórias Cache Cache em Níveis Slide 2 Introdução

Leia mais