Escolar Documentos
Profissional Documentos
Cultura Documentos
Aula Windows
Aula Windows
Roteiro
Histria Famlia Windows; Estrutura do Windows 2000
Win32 API;
Histria
Histria
MS-DOS:
Em todas as verses, a interface jamais foi mudada; Interface grfica: Windows 1.0 (1985); Windows 2.0 (1987); Windows 3.0 (1990 para 386); Windows 3.1 e 3.11 (sucesso);
Todos os programas executavam no mesmo espao de endereamento (um bug em qualquer um deles trava o sistema inteiro);
Histria
http://www.michaelv.org.nyud.net/
Histria
Windows 95:
Surgiu em 1995; Ainda tinha o MS-DOS, verso 7.0; Era um ambiente grfico (shell) Possua todas as caractersticas de um SO, como memria virtual, multiprogramao e gerenciamento de processos; No era totalmente 32 bits, tendo parte do cdigo escrito em linguagem de montagem de 16bits para compatibilidade com MS-DOS; Ainda usava o sistema de arquivos do MS-DOS, sendo a nica diferena a possibilidade de ter nomes mais longos 6
Histria
Ainda com o MS-DOS, verso 7.1; Interface mais prxima Internet, o que gerou um processo judicial por monoplio ilegal; um sistema operacional por si s; Embora definido como um sistema multiprogramado, o Kernel no era.
Possibilidade de inconsistncia de estruturas de dados do ncleo Utiliza um semforo mutex gigante (compartilhado pelos processos ) para todo o sistema;
Um processo pode ter que esperar que um outro processo deixe o Kernel; 7
Histria
Windows 98:
2.
espao
de
2Gb para os processos; 1Gb (podendo ser escrito) para compartilhamento entre os processos; 1Gb para compartilhamento entre os processos, inclusive o kernel, para eles acessarem os vetores de interrupo do MS-DOS;
No era possvel no deixar estruturas de dados do ncleo no espao do usurio Essencial para rodar velhos programas MS-DOS sob o Win98;
8
Histria
Maneira adequada para catalogar filmes, imagem, musica; suporte para redes caseiras, para jogos multiusurios, para comunicao instantnea e para conexes banda larga. Uma caracterstica interessante era a possibilidade de restaurar o sistema depois de alguma configurao mal sucedida;
Histria
Projeto surgiu no final dos anos 80 com o intuito de criar um Windows inteiramente 32Bits;
com
nmero
da
verso
do
Exigia mais memria e no havia programas de 32 bits que ele pudesse executar.
Histria
Principal objetivo: desenvolver um SO multitarefa tanto para ambiente monousurio quanto multiusurio;
Portabilidade; Segurana; 16 milhes de linhas de cdigo; Funes de baixo nvel (tratamento de interrupes) em linguagem de mquina.
Foi influenciado pelo desenvolvimento do OS/2 da IBM; Verses para 80x86, Alpha, MIPS, PowerPC; Evoluo da interface grfica, semelhante ao Win95;
11
No 80x86 No Sim
Sim Sim
Sim No
Sim
No
13
Histria
Windows 2000:
Lanamento em 1999 (NT 5.0); Lanou a era NT para o usurio comum; Herdou toda estrutura do NT 4.0, melhorado com a interface ao usurio do Windows 98 (plug and play, barramentos USB, etc.); Melhora na internacionalizao de idiomas; MS-DOS completamente excludo, assim como no NT;
Histria
Windows 2000:
Servios para ambientes distribudos, com multiprocessadores e de rede; Ambiente multiprogramado com proteo aos processos;
Cada processo possui um endereamento virtual privado de 32 bits 4Gb (paginao sob demanda);
Suporta multithreading; Suporte a execuo em multiprocessadores simtricos com at 32 CPUs (verso Datacenter Server); Possui mais de 29 milhes de linhas de cdigo em C; Todo o sistema de janelas e GUI fazem parte do kernel; Active Directory (LDAP - Lightweight Directory Access Protocol): suporte para administrao de usurios e grupos OU (Organization Unit)
15
Histria
Lanado em 2001 (NT 5.1) Tentativa de unir em um nico produto o coorporativo e o mercado de usurios domsticos; Conectividade Internet segurana; Mecanismos de proteo ao sistema de arquivos; Mecanismos de proteo contra pirataria: Windows Product Activation WPA criao de um cdigo nico para cada instalao (identificadores como nmero de srie da BIOS, do HD, do endereo fsico da placa de rede (endereo MAC Media Access Control); Considerada por diversos anos como a melhor verso para usurios domsticos; mercado
16
Histria
17
Histria
Verso mais recente do Server lanada em 2008 Prov servios e recursos para outros sistemas em uma rede Verso Windows Web Server 2008
18
Histria
Windows Vista
Lanado em 2007 (NT 6.0) 6 verses adaptadas a como o usurio deseja utilizar o seu computador
Starter Edition Home Basic Home Premium Vista Business Vista Enterprise Vista Ultimate
Histria
Windows 7
Lanado em 2009 Inclui diversas alteraes na parte grfica Um Windows Vista melhorado
20
Histria
Windows Vista
Windows7
50 milhes de linhas de cdigo (sem o SP1) 6 anos de desenvolvimento a partir do zero 6 bilhes de dlares. 4 mil programadores, 4 mil testadores Cdigo mal projetado, spaghetti 65 milhes de linhas de cdigo, atualmente 7 bilhes de dlares Mesmo Kernel do Vista, mas foi "limpado" de milhares de linhas de cdigo repetidas e chamadas multiplicadas. E resolveram modularizar o cdigo.
Fontes
21
Histria
22
23
Bibliotecas que fazem chamadas ao sistema; UNIX: pblica e a interface mnima; API Win32 : interface ampla, fcil de entender, mas com muitas funes realizando a mesma operao;
24
no
Kernel
Possui funes diversas para E/S, gerenciamento de processos e GUI; Compatvel com a maioria das verses Windows, porm h pequenas diferenas:
Segurana (9x); UNICODE (somente NT, 2000, XP, Vista); Coordenadas grficas de 32/16 bits (Win98);
25
26
Configuraes:
Windows precisa controlar informaes sobre hardware, software e usurios. Win 3.x Arquivos .ini A partir do Win95
27
Estrutura do Win2000
Win2000 partes:
pode
ser
dividido
em
duas
Modo usurio: subsistemas protegidos que se comunicam por troca de mensagens (local procedure call LPC); Modo kernel e Executivo: subsistemas que interagem diretamente com o hardware;
28
Executivo
29
30
Camada do Kernel:
Tem idia de microncleo, mas no .. Gerenciador de memria, SA... Complementa a HAL no quesito portabilidade (independente do hardware); Escrito em C e linguagem de montagem; Ncleo gerencia: threads, processos, interrupes, semforos, escalonamento;
Objetos de controle controlam o sistema; Executivo constri objetos do usurio sobre estes objetos;
Gerenciador de Objetos: tipos de dados utilizados para representar os recursos do sistema, como: processos, threads, alocao de memria, etc.; Gerenciador de E/S (onde esto os drivers): fornece estrutura para gerenciamento de E/S. E/S independente do dispositivo. Rede; PnP; Energia; Configurao;
Executivo:
Gerenciador de Processos e Threads; Gerenciador de Memria Virtual; Gerenciador de Segurana; Gerenciador de Comunicao: LPC (Local Procedure Call): comunicao interprocessos GDI (graphics device interface): trata gerenciamento de imagens enviadas para o monitor e impressora;
33
Ligao de cada programa com todos os procedimentos de biblioteca que ele usa desperdcio vrios programas abertos. DLLs evitam que programas criem cpias para si de uma mesma funo, evitando consumo de memria;
34
2000
Enviroment Subsystem (csrss.exe)
Processo usurio
Chamadas
Win32 SubSys
Interface do Sistema (ntdll.dll)
System Trap
Sistema Operacional
35
Modo
Kernel Kernel Kernel Usurio Usurio Usurio Usurio Usurio
Contedo
Gerenciamento de Hardware baixo-nvel Windows 2000 (Kernel + Executivo) Vrias chamadas do sistema Interface entre processo do usurio e SO Processo do subsistema de ambiente Win32 Maioria das chamadas de sistema (no-grficas) Fontes, Textos, Cores, Bitmaps, pallete, etc... janelas, cones, cursores, etc...
36
Objetos:
Objeto trabalho (job): coleo de processos que compartilham cotas e limites de recursos (n de filhos); Objeto processo: corresponde aos recursos do sistema, tais como: memria, arquivos; Objeto thread: unidade de trabalho executada seqencialmente;
Escalonador seleciona threads para serem executadas; Toda thread tem um ID thread;
Threads comuns relacionadas aos processos; Threads daemons executam no modo Kernel e no esto associadas aos processos de usurio;
38
Apta (ready); Ativa (standby); Em execuo (running); Espera (waiting); Transio (transition); Trmino (terminated);
40
execuo
O escalonador prioridades;
preemptivo
com
duas
42
Varivel (usurio):
Prioridade dinmica; Menor prioridade que threads do sistema; Dois parmetros: um relacionado thread e outro ao processo ao qual a thread pertence; Prioridades 0-15;
Prioridade base;
Tempo do prioridade;
processador
determina
mudana
de
43
Round-Robin
. .
Round-Robin
Prioridade 16
Classe varivel
Prioridade 15
. .
. .
Prioridade 1
Prioridade 0
44
Gerenciamento de Memria
Win2000 prev uma extenso VLM (Very Large Memory) destinada a arquiteturas de 64bits; Feito em funo dos processos e no das threads;
45
Gerenciamento de Memria
46
Gerenciamento de Memria
Paginao:
Win2000 permite que um processo bloqueie pginas na memria, impedindo uma troca de pginas;
47
Gerenciamento de Memria
Troca de pginas:
Demanda com clustering (grupo): quando ocorre uma falta de pgina, o gerenciador de memria carrega a pgina que faltava e mais um pequeno nmero de pginas ao redor Minimizar acesso a disco; Algoritmo de troca de pgina depende da arquitetura:
Famlia Intel Multiprocessadores e famlia Alpha: FIFO, considerando apenas as pginas do processo em questo; Famlia Intel Monoprocessadores: LRU com o algoritmo do relgio;
Sistema de paginao usa conjunto de trabalho (Working Set) pginas que esto na memria.
Tamanho e composio variam conforme execuo das threads do processo (Limite mnimo e mximo de pginas); Conjunto< mnimo = pgina adicionada; 48 Conjunto>mximo = retira pgina para liberar espao para outra;
O gerenciador de memria faz parte do executivo do Windows 2000; Est localizado no arquivo NTOSKRNL.EXE ; No existem partes do gerenciador de memria na camada de acesso de hardware (HAL); Sobre o gerenciador de memria est o gerenciador de heap, no qual um conjunto de funes aloca/desaloca memria;
Gerenciamento de E/S
O sistema de E/S do Windows 2000 aceita solicitaes de E/S dos processos do modo usurio e do modo Kernel e as transmite de uma forma diferente aos dispositivos de E/S; Permite ao processo solicitar uma operao de E/S e depois executar outro trabalho enquanto o dispositivo conclui a transferncia dos dados E/S assncrona; Cada solicitao de E/S representada por um pacote de solicitao de E/S;
50
Gerenciamento de E/S
O gerenciador de E/S define uma estrutura ordenada dentro da qual as solicitaes de E/S so transmitidas ao sistema de arquivos e aos drivers de dispositivos;
IRP (I/O Request Packet pacote de requisio de E/S); IRP direcionado ao driver de dispositivo responsvel pela operao solicitada; Aps operao finalizada, driver avisa o gerenciador de E/S;
51
Gerenciamento de E/S
Configuration
and
Power
Drivers devem fornecer suporte completo a plug and play; Gerenciamento de energia deve ser suportado pelos dispositivos;
52