CONTEXTO
Nos últimos meses temos assistido a uma freqüente oferta de vagas
específicas para o setor de tecnologia da informação nos concursos
públicos, essa oferta é facilmente percebida tanto nos concursos
federais, como nos estaduais. Citamos, a seguir, alguns dos últimos
concursos ocorridos na área: Perito da Polícia Federal (Out/2004),
Tribunal de Contas da União (Maio/2005), Secretária do Tesouro
Nacional (Jun/2005), Auditor da Receita Federal (Dez/2005), Banco
Central (Jan/2006), Técnico da Receita Federal (Fev/2006),
Controladoria Geral da União (Mar/2006), Empresa de Tecnologia da
Informação do Estado do Ceará (Abr/2006), Banco do Nordeste
(Mai/2006), Dataprev (Mai/2006), além das inúmeras vagas
ofertadas no poder judiciário para os profissionais de TI (MPU, MPE,
TSE, TST, TRE, TRT, TJ, etc).
Carência de material voltados
para concursos na área.
ESCOPO
– Resolver as questões da prova específica da prova
objetiva do concurso para ACE/2005 promovido pelo
TCU através da CESPE/UNB.
– Comentar resumidamente sobre as tecnologias e
assuntos citados em cada questão.
– Indicar bibliografia adequada para a resolução de
questões da banca organizadora.
–Dicas e macetes sobre a resolução de provas.
101 Em conseqüência da propriedade de localidade de referências à
instruções e dados, somente algumas partes de um processo precisam
permanecer na memória principal em determinados períodos de tempo.
• Multiprogramação
• Memória Virtual – “A idéia básica por trás desse conceito é que o
tamanho total do programa – ou seja, seu código mais seus dados
e a pilha – pode exceder a quantidade de memória física disponível.”
Tanenbaum
• “É uma técnica sofisticada e poderosa de gerência de memória,
onde as memórias principal e secundária são combinadas, dando ao
usuário a ilusão de existir uma memória muito maior que a
capacidade real da memória principal.”
• Arquitetura de Sistemas Operacionais - Francis Berenger Machado &
Luiz Paulo Maia
• Espaço de Endereçamento Real X Virtual – o mapeamento é feito
pela MMU (unidade de gerenciamento de memória).
101 Em conseqüência da propriedade de localidade de referências a
instruções e dados, somente algumas partes de um processo precisam
permanecer na memória principal em determinados períodos de tempo.
Memória Virtual Memória Principal
.
.
.
.
. Memória Secundária
.
.
101 Em conseqüência da propriedade de localidade de referências a
instruções e dados, somente algumas partes de um processo precisam
permanecer na memória principal em determinados períodos de tempo.
Páginas (pages) x Molduras de Páginas (pages frames), ambas devem
•
possuir o mesmo tamanho. Conhecida como Memória Virtual por paginação.
Tabela de páginas. Cada processo possui sua própria tabela e cada página
•
virtual do processo possui uma entrada na tabela.
Page fault ocorre quando a página não é encontrada na memória principal.
•
Operação de Page In (paginação).
•
Thrashing => Paginação excessiva
•
Paginação por demanda x pré-paginação
•
101 Em conseqüência da propriedade de localidade de referências a
instruções e dados, somente algumas partes de um processo precisam
permanecer na memória principal em determinados períodos de tempo.
M em ór ia Pr in cipal
M em ór ia Vir tua l
Págin a r eal 0
Págin a virtua l 0
Págin a r eal 1
Págin a virtua l 1
.
Tab ela de .
p ágin as
.
Págin a virtua l 2
ETP Págin a r eal R
.
.
.
M em ór ia Secu nd ár ia
.
Págin a virtua l V
101 Em conseqüência da propriedade de localidade de referências a
instruções e dados, somente algumas partes de um processo precisam
permanecer na memória principal em determinados períodos de tempo.
• Peter J. Denning desenvolveu uma estratégia para evitar o thrashing.
• Ele desenvolveu o princípio da localidade de referência e conjunto de
trabalho (working set).
• “durante qualquer uma das fases de sua execução, o processo só vai
referenciar uma fração relativamente pequena de sua páginas.”
• “O conjunto de páginas que um processo está atualmente usando é
denominado conjunto de trabalho (working set).”
- Tanenbaum
“I hit on the idea of defining a process working set as the set of pages used during a fixed-length
•
sampling window in the immediate past.”
(Eu desenvolvi a idéia de definir um conjunto de trabalho do processo como
sendo um conjunto de páginas usadas durante uma janela de tempo de
tamanho fixo usada em um passado recente.)
“The working set idea was based on an implicit assumption that the pages seen in the backward
•
window were highly likely to be used again in the immediate future.”
(A idéia do Working Set foi baseada na presunção implícita de que as
páginas usadas na janela anterior seriam muito semelhantes as que seriam
usadas novamente num fututo próximo.)
- Peter J. Denning
101 Em conseqüência da propriedade de localidade de referências a
instruções e dados, somente algumas partes de um processo precisam
permanecer na memória principal em determinados períodos de tempo.
Jan ela d o w o rking set ( t)
P2 P3 P2 P8
tem po
t1 t2
W (2, t)
t
118 Um dos princípios da engenharia de software garante que, se um projeto
encontra-se atrasado, a adição de membros à equipe de projeto permite
recuperar o atraso existente.
Management myths. Managers with software responsibility, like managers in most disciplines, are
•
often under pressure to maintain budgets, keep schedules from slipping, and improve quality. Like a
drowning person who grasps at a straw, a software manager often grasps at belief in a software
myth, if that belief will lessen the pressure (even temporarily).
• Mitos da gestão. Gestores com responsabilidades sobre o software, assim
como os gestores na maioria das disciplinas, estão frequentemente sob
pressão para controlar seus orçamentos, manter seus cronogramas dentro do
acordado e incrementar a qualidade. Como uma pessoa afogando-se procura
de todos os meios agarrar-se a uma saída, um gestor de software
frequentemente atem-se na crença de um mito de software, se essa crença
minimizar a pressão (mesmo que temporariamente).
Myth: If we get behind schedule, we can add more programmers and catch up (sometimes called
•
the Mongolian horde concept).
• Mito: Se estamos atrasados no cronograma,
nós podemos adicionar mais programadores
e acelerar (chamada algumas vezes de
conceito da Horda de Mongóis)
118 Um dos princípios da engenharia de software garante que, se um projeto
encontra-se atrasado, a adição de membros à equipe de projeto permite
recuperar o atraso existente.
Reality: Software development is not a mechanistic process like manufacturing. In the words of
•
Brooks [BRO75]: \"adding people to a late software project makes it later.\" At first, this statement
may seem counterintuitive. However, as new people are added, people who were working must
spend time educating the newcomers, thereby reducing the amount of time spent on productive
development effort. People can be added but only in a planned and well-coordinated manner.
• Realidade: O desenvolvimento de software não é um processo mecânico como
a manufatura. Nas palavras de [BRO75]: “adicionar pessoas a um projeto de
software atrasado, torna-o mais atrasado.” A princípio, essa afirmação parece
contra intuitiva Contudo, à medida que novas pessoas são adicionadas, as
pessoas que já estavam trabalhando precisam gastar seu tempo educando os
novos colaboradores, resultando na redução da quantidade de tempo
produtivo gasto no esforço de desenvolvimento. Pessoas podem ser
adicionadas mas somente de uma maneira planejada e bem coordenada.
Pressman
• Ver - Facts and Fallacies of Software Engineering - Addison Wesley
134 A variabilidade do tempo de resposta de um sistema tem pouca
importância para o desempenho médio do usuário na realização de tarefas
com esse sistema.
Citando Galitz:
•
“To be effective, feedback to the user for an action must occur within certain time limits.
•
Excessive delays can be annoying, interrupt concentration, cause the user concern, and
impair productivity as one’s memory limitations begin to be tested.”
• Para ser efetivo, o feedback de uma ação para o usuário deve ocorrer dentro
de certos limites de tempo. Atrasos excessivos podem ser desagradáveis,
causam interrupção na concentração, causam preocupação ao usuário e
prejudica a produtividade, sendo uma das limitações de memória a ser
testada.
The Essential Guide to User Interface Design: An Introduction to GUI
Design Principles and Techniques, Second Edition
143 Um contêiner da Java 2 Platform Enterprise Edition (J2EE) é uma
entidade de software executada no servidor e fornece o ambiente de execução
para os componentes J2EE desenvolvidos.
143 Um contêiner da Java 2 Platform Enterprise Edition (J2EE) é uma
entidade de software executada no servidor e fornece o ambiente de execução
para os componentes J2EE desenvolvidos.
Containers are the interface between a component and the low-level platform-specific functionality
•
that supports the component. Before a Web, enterprise bean, or application client component can
be executed, it must be assembled into a J2EE application and deployed into its container.
http://java.sun.com/j2ee/1.3/docs/tutorial/doc/Overview4.html
• Contêiners são a interface entre um componente e a funcionalidade de baixo
nível de uma plataforma específica que dá suporte ao componente. Antes de
um EJB, ou um componente da aplicação cliente poder ser executado, ele
deve ser montado em uma aplicação J2EE e “descarregada” em seu contêiner.
143 Um contêiner da Java 2 Platform Enterprise Edition (J2EE) é uma
entidade de software executada no servidor e fornece o ambiente de execução
para os componentes J2EE desenvolvidos.
J2EE containers provide runtime support for J2EE application components. J2EE application
•
components use the protocols and methods of the container to access other application components
and services provided by the server. The Application Server provides an application client container,
an applet container, a Web container, and an EJB container.
http://docs.sun.com/source/819-0215/containers.html
• Os Contêiners J2EE proporcionam suporte em tempo de execução para
componentes de aplicações J2EE. Esses componentes usam os protocolos e
métodos do contêiner para acessar outros componentes de aplicações e
serviços disponibilizados pelo servidor. O servidor de aplicação disponibiliza
um contêiner para a aplicação cliente, um contêiner applet, um contêiner Web
e um contêiner EJB.
• Questão anulada. A princípio parece ser correta a assertiva, mas a expressão
“no servidor” pode ser interpretada como “no servidor J2EE”, o que tornaria a
questão parcialmente verdadeira, pois um contêiner pode ser executado em
um servidor web próprio como o Tomcat, que possui seu próprio web
contêiner e que a partir dele utiliza os EJBs localizados em um servidor J2EE.
149 Comparados aos documentos arquivados em papel, os documentos
eletrônicos apresentam maior robustez com relação à mudança tecnológica.
• Preservação da informação -> Preservação Digital
• A mudança de suporte implica tão-somente a preservação da informação e
não a preservação física do documento na mídia original. O suporte digital
resolve, portanto, apenas uma parte da questão e cria novos problemas: o da
obsolescência das tecnologias de preservação, armazenamento e recuperação
(hardware, software, sintaxe etc.) e, dada a facilidade de manipulação de
dados pela mídia digital, o da autenticidade\" (Levacov, 1997).
• LEVACOV, Marília Bibliotecas virtuais: (r )evolução? Ciência da Informação,
Brasília, v. 26, n. 2, p. 125-135, mai./ago. 1997
• A obsolescência tecnológica dos dispositivos de leitura e armazenamento
eletrônicos configura-se como o maior risco para a questão da preservação.
• Robustez no contexto de GED, indica a disponibilidade do documento
após a realização de uma mudança tecnológica.
0 comments
Post a comment