Busy. Please wait.
or

show password
Forgot Password?

Don't have an account?  Sign up 
or

Username is available taken
show password

why


Make sure to remember your password. If you forget it there is no way for StudyStack to send you a reset link. You would need to create a new account.
We do not share your email address with others. It is only used to allow you to reset your password. For details read our Privacy Policy and Terms of Service.


Already a StudyStack user? Log In

Reset Password
Enter the associated with your account, and we'll email you a link to reset your password.

Remove Ads
Don't know
Know
remaining cards
Save
0:01
To flip the current card, click it or press the Spacebar key.  To move the current card to one of the three colored boxes, click on the box.  You may also press the UP ARROW key to move the card to the "Know" box, the DOWN ARROW key to move the card to the "Don't know" box, or the RIGHT ARROW key to move the card to the Remaining box.  You may also click on the card displayed in any of the three boxes to bring that card back to the center.

Pass complete!

"Know" box contains:
Time elapsed:
Retries:
restart all cards




share
Embed Code - If you would like this activity on your web page, copy the script below and paste it into your web page.

  Normal Size     Small Size show me how

Concurrent C Deck's

Sobre a Linguagem...

QuestionAnswer
Tipagem da Linguagem. Estaticamente tipada.
Quando ocorre a verificação de tipo? Em tempo de compilação.
A que são muito semelhantes os processos? As funções.
Quantas e quais são as partes de processo? Dois, a especificação e o corpo.
Detalhes do corpo (código) do processo são visíveis para outros processos? Não.
Cite uma boa técnica em relação à especificação e ao corpo do processo. Colocar a especificação em um arquivo, e o corpo em outro.
Cite dois exemplo onde eventos ocorrem simultaneamente, onde a linguagem é bem usada. Banco de dados e Sistemas de exploração.
Por que programação concorrente pode reduzir o tempo de execução de um programa? Porque entrada e saída de operações e a operação CPU podem ocorrer em paralelo.
O que seria um "conceito de encontro"? Os processos combinam sincronização com transferência de informação, basicamente.
Como são os três passos desse conceito? Através da sincronização, da troca de informações e pela sua continuação de atividades individuais.
Especificação do processo (Código) spec process-type-name(process-param-declarations);
Declaração Transação (Código) trans return-type t-name (formal-param-declarations)
Na declaração transação o programador pode alternar e não usar um parâmetro formal? Sim, pode fornecer apenas o tipo do parâmetro formal.
O que faz o operador "create"? Além de criar, também ativa o processo.
Operador "Create" (Código) create process-type-name(initial-values) [with priority(p)]
Se dois processos que estão prontos para a execução da mesma prioridade, qual será executado primeiro? Qualquer um dos dois.
As prioridades devem ser utilizadas para a sincronização? Não, devem ser usadas para melhorar o desempenho.
Quais são os três estados de um processo? Ativo, Concluído e Rescindido.
Quando um processo está ativo? Em sua criação e enquanto executar as especificações no corpo tipo de processo.
Quando um processo está Concluído? Quando ele executa uma instrução de retorno ou quando se atinge o final do seu corpo.
Quando um processo está Rescindido? Quando se completa e todos os processos criados por ele terem terminado.
Como é chamada a sincronização ou reunião para troca de informações? Ponto de encontro.
Para que a Concurrent C utiliza o encontro ou transação estendida? Para permitir a transferência de informações durante o encontro.
Cite 3 instalações em que o Concurrent C dispõe. Criação de processos, especificação de transações síncronas e as operações assíncronas.
O que faz a função "c_rsainit"? Aloca e inicializa a pilha quando um processo é criado.
O que é a seção crítica? É um pedaço de código que não deve ser interrompido por um processo de "switch".
Como é a leitura de sistemas síncronos? Deve se espera até que a leitura seja concluída, para aí sim executá-la.
Quando é iniciado e qual a prioridade de um processo nulo? É iniciado em tempo de execução e possui uma prioridade menor que qualquer processo do usuário.
Quais são os três tipos de chamadas de transação? síncronas (incondicional), cronometrado síncronas e assíncronas.
Quais as três categorias em que os modelos de programação concorrentes se dividem? Aqueles com base na memória partilhada, aqueles baseados em passagem de mensagens e uma combinação dos dois modelos anteriores.
Como é a troca de informações em um encontro simples? É unidirecional, do remetente da mensagem para o receptor.
O que é uma chamada transação? Mostre um código básico dessa chamada. É o lado do chamador de uma transação. "valor do processo.operação-name (parâmetros-real)"
O que é um ponteiro de transação e a que se asemelha? Refere-se a uma transação específica associada a um processo específico. Se assemelha a ponteiros de funções.
O que faz a função "c_transcount"? Mostre em código. Retorna o número de pedidos pendentes para uma transação específica. "c_transcount (pid, t)"
Por que ponteiros de transação e ponteiros de função não são intercambiáveis? Porque mudaria a semântica, complicaria a implementação e teria impacto negativo sobre a portabilidade.
Paradigma utilizado. Programação Imperativa.
Característica chave para melhorar seu desempenho. Escalonamento de processos.
Tipo de programação imperativa. Programação Imperativa Estruturada.
O que a programação imperativa possibilita a linguagem? Organizar o fluxo de controle de execução do programa, e incentiva a divisão do problema em problemas menores.
Qual a vantagem da divisão de programas? Melhor execução.
Possui gerência de memória compartilhada? Nao, isso possibilita obter informações de processos.
Como foi feita a implementação da linguagem? A partir da implementação de um uniprocessador UNIX.
Funcionamento dos programas. Cada programa em "C" , consiste em um ou mais processos simultâneos.
Como funciona a biblioteca? Sua biblioteca de execução possui um processo que muda simultaneamente para salvar e restaurar registros.
Por que se utiliza o processo de escalonamento de processos? Custo de cumputação entre processos e menos. E por estar dentro de um único processo UNIX, os processos Concurrent C tem o mesmo espaço de endereco.
Principais estruturas de dados. Descrição de chamadas e transação síncrona.
O que acontece na descrição de chamada? Do tipo c_tcall esta estrutura contém toda a informação sobre uma chamada pendente.
O que acontece na Transação Síncrona? Qualquer operação é convertida em uma chamada para a função de interface.
Para que se usar Concurrent C? Para programas que são muito usados em tempo real e que pode ser necessário operações dinâmicas, mesmo na linguagem C.
Programação concorrente está se tornando cada vez mais importante para que? Para arquiteturas de múltiplos computadores, que vem sendo cada vez mais atraente seu uso em grandes computadores.
Created by: phillipe