Você está na página 1de 24

§ Uma fibra é um código para ser executado no processador como um

thread.

§ Uma fibra é um sub-thread que pertence a um thread convencional e


as fibras são frequentemente chamadas de threads leves.

§ As fibras foram introduzidas no primeiramente no sistema


operacional Windows Vista.
§O sistema operacional não controla o planejamento do processo para
fibras como faz para threads;

§ Uma fibra pertence a um thread, que cuida do plano do processo da


fibra;

§ Um thread pode agendar várias fibras e também pode fazer uma


troca entre as fibras no processador.
7.3 About fibers
Fibers are quite new in the Windows operating system, and were introduced in Windows Vista. A fiber
is code to execute in the processor like a thread. A fiber is a sub-thread that belongs to a conventional
thread, and fibers are often called lightweight threads.
§ As fibras requerem menos suporte do sistema operacional do que os
threads:
The operating system does not control process planning for fibers as it does for threads. A fiber belongs
to a thread, which takes care of the process planning for the fiber. A thread can schedule multiple fibers,
Ao contrário dos threads, as fibras podem usar multitarefa
§ also make a switch between fibers in the processor.
and can
cooperativa;
Fibers require less support from the operating system than threads, and in contrast to threads, fibers
Multitarefa cooperativa significa que um thread está no processador
§ using cooperative multitasking. Cooperative multitasking means that a thread is in the processor
may be

até que ele voluntariamente ceda o lugar.


until it voluntarily relinquishes the place.

Process

Thread Thread

Fiber Fiber Fiber Fiber

Figure 7.3: The relationship between processes, threads and fibers

Download free eBooks at bookboon.com


§ Vantagem das Fibras:
§ Uma vantagem das fibras é que é fácil mudar de uma fibra para
outra em um processador;

§ Alternância entre as Fibras:


§ Para alternar entre as fibras, é necessário apenas armazenar e ler
alguns registros, enquanto para alternar entre as threads é
necessário sair ou entrar no kernel.

§ Vantagem das Fibras:


§ Uma desvantagem das fibras é que elas não podem utilizar vários
processadores sem usar os threads controlados do sistema
operacional.
§ No Windows um grupo de processos que trabalham juntos é
denominado Trabalho;
§ Um processo só pode estar em um trabalho por vez;
§ Agrupar processos em um trabalho só é aplicável quando os
processos precisam cooperar;
§ No Windows, um trabalho é um objecto;
§ A função de um objeto de trabalho é lidar com grupos de processos
como uma unidade;
§ Um objecto de trabalho é um objecto kernel com um nome e que
possui alta segurança.
§ Inicia e encerra processos e threads;
§ Fornece parâmetros e características de processos e threads;
§ Alocação de recursos para processos e threads;
§ Implementação de input e output;
§ Implementação de endereços na memória.

O Gestor de processos não faz operações em processos e threads, os


agendamento e sincronização, ficam ao cuidado do kernel.
§O Windows oferece suporte a multitarefa, o que significa que dois ou
mais threads podem ser executados simultaneamente em um
processador, enquanto se alternam no processador;

§A multitarefa permite que um usuário execute vários aplicativos


simultaneamente e alterne entre eles;

§O sistema operacional multitarefa dá tempo de processador aos


threads que precisam dele;

§ A multitarefa é feita por Alternância de contexto. Ao usar a


Alternância de contexto, um thread é executado no processador até
que o sistema operacional o interrompa ou o thread saia
voluntariamente do processador.
§ Tipos de multitarefa:

§ Multitarefa cooperativa;
§ Multitarefa preventiva.

§ Multitarefa cooperativa;
§ Na multitarefa cooperativa, os programas compartilham o tempo da
CPU entre eles. Um thread segura o processador até que este ceda
voluntariamente.
§ A multitarefa preventiva:

§ garante que os vários processos sejam executados por um curto período

de tempo no processador. A thread só pode estar no processador por um


intervalo de tempo denominado quantum;

§ Quando um quantum é concluído, a operação fará automaticamente uma

troca de contexto.
§Acomunicação entre processos é quando um thread em um processo
interage com um thread em outro processo:

§ Os processos estão no mesmo computador.


§ Os processos estão em computadores diferentes.

§A comunicação entre processos no mesmo computador é bastante


direta. O sistema operacional pode copiar dados da memória para o
thread de envio para a memória do thread de recebimento.
§Acomunicação entre processos em diferentes computadores é a
seguinte. O sistema operacional do computador que envia copiará os
dados de sua memória para uma unidade de comunicação. A
unidade de comunicação irá então enviar os dados para o
computador receptor.
§ Uma área de transferência é amplamente usada para transferir dados
de um aplicativo para outro. Quando um usuário copia ou corta
dados de um aplicativo, os dados podem ser transferidos para outro
aplicativo colando-os.
§ Mapeamento de arquivo é uma forma de um processo gerir o
conteúdo de um arquivo como se ele estivesse na memória do
processo. O processo pode usar um ponteiro para recuperar dados
do arquivo e modificar o conteúdo do arquivo. O mapeamento de
arquivos é uma maneira simples de dois ou mais processos
compartilharem dados, mas o método requer sincronização.
§ Sãoum modelo simples para comunicação de processos. Um thread
grava dados em um buffer, para que outro thread possa ler os dados
do buffer.
§ Podemos distinguir entre dois tipos:

§ Pipes anônimos e Pipes nomeados.


§ Pipesanônimos podem ser usados para transferir dados entre
threads no mesmo processo.
§ Pipes nomeados podem transferir dados de um aplicativo para outro
aplicativo em um computador, bem como transferir dados de um
computador para outro através de uma rede. Pipes nomeados tem
um nome que permitirá que outros processos os identifiquem. No
Windows, os pipes nomeados são baseados em uma comunicação
cliente-servidor semelhante à usada pelo Sockets.

Você também pode gostar