Escolar Documentos
Profissional Documentos
Cultura Documentos
histrico
migrao de processos em sistemas operacionais distribudos
balanceamento de carga de CPU otimizao do uso da rede ligao com transparncia
dificuldade
previso do comportamento do processo
customizaes
de cliente ao servidor de servidor ao cliente
mobilidade em cliente-servidor
r.a(...)
redefinio dinmica de stubs cliente e servidor customizao para cliente/servidor especfico relao com cliente thin/fat
classificao
remote evaluation cdigo sob demanda agentes mveis
no necessariamente inteligentes
interaes entre entidades A e B ponto de vista cliente-servidor A. Fugetta, G.P. Picco, G. Vigna. Understanding Code Mobility. IEEE Trans. Software Eng, 24(5), 1998.
avaliao remota
A envia cdigo para B executar
filtragem de dados a serem enviados para A
bases de dados servios de eventos ...
flexibilidade em servidores
function comp(...) local total = 0 for i=1,n do r.comp(...) total = total + simp(a[i]) end return total/n end
simp
servidores podem oferecer API bsica a partir da qual funes mais complexas podem ser construdas
adaptao de clientes
servidor de stubs download servidor desejado
stubs especficos
adaptao de clientes
uso de otimizaes como cache proxies inteligentes
mudana no comportamento do cliente conforme estado do sistema
agentes mveis
A migra para B levando o cdigo que deseja executar em B
agentes mveis
programa se transfere com estado completo
tipicamente primitiva "move"
reduo de uso da banda passante possibilidade de adaptao a estado boa convivncia com desconexes
tecnologia fez menos sucesso que esperado?
paradigmas
mobilidade fraca
transferncia de cdigo
possivelmente alguns dados para inicializao
implementao de mobilidade
cdigo
relativamente simples
estado
complexa, especialmente em mquinas heterogneas problema da transferncia de estado externo
arquivos, sockets, etc
migrao de processos
assunto bastante estudado nos anos 80 ressurgimento de interesse
melhores redes grades e computao oportunista
MOSIX
kernel implementa RPC chamadas a sistema transferidas para mquina apropriada
aplicao upper kernel linker lower kernel aplicao upper kernel linker lower kernel
MOSIX: migrao
mquinas sobrecarregadas decidem destino de processos escolhidos carga medida por prontos e memria livre escolha de migrao leva em conta
perfil (passado) do processo tamanho -> tempo de migrao tempo de residncia i/o local e remoto
objetivos:
maior throughput e menor tempo de resposta
maioria das linguagens no mantm informao sobre dados e programa em tempo de execuo
captura de estado
problema existe tambm na rea de persistncia
relao com tolerncia a falhas
segurana
controle de acesso no ambiente destino
sandbox
mquinas virtuais populares no mundo de grades
mapeamento de usurio
cdigo executa como se fosse de algum usurio local
cdigo assinado
Bibliografia
A. Fugetta, G.P. Picco, G. Vigna. Understanding Code Mobility. IEEE Trans. Software Eng, 24(5), 1998.
A. Milans, N. Rodriguez, B. Schulze. State of the art in heterogeneous strong migrationof computations. Concurrency and Computation: Practice and Experience. 20(13), 2008.