Ir ao conteúdo
  • Cadastre-se

Lucas Alves_711535

Membro Júnior
  • Posts

    12
  • Cadastrado em

  • Última visita

Reputação

0
  1. Olá. Eu estou montando um pc par que eu consiga rodar qualquer jogo em 1080p a 60 fps. Eu nao coloquei hd pois eu possuo um de 500 gb e um externo de 2 tb. porém gostaria de encaixar um ssd. porém nao posso aumentar o preço. Esta configuração ficou em 3840 R$. Sem levar em conta Mouse, Teclado e nem Monitor. Por este motivo queria saber se é possivel modificar algum item para que ele fique em um preço mais acessivel e nao perca a qualidade. ate por que eu nao sou um especialista em hardware e talvez tenha algo ai que nao condiz. Por favor me ajudem e deem suas dicas. placa-mãe: GIGABYTE GA-B150M-D3H DDR4, CHIPSET B150, LGA 1151 - BOX - 559 R$ Memoria Ram: 4 x KINGSTON HYPERX FURY 4GB 2133MHZ DDR4 BLACK ->Total 16 gb - 472 R$ Fonte: THERMALTAKE SMART ATX 80PLUS WHITE 500 - 249 R$ Placa de Video: EVGA GEFORCE GTX 970 SC ACX 2.0 4GB GDDR5 256BIT - 1410 R$ Processador: INTEL CORE I5-6500 SKYLAKE 3.2GHZ CACHE 6MB - 889 R$ Gabinete: COOLER MASTER HAF STACKER 915F FRONT - 239 R$ Esta configuração consegue rodar qualquer jogo a 60 fps?
  2. Bom primeiramente obrigado pela resposta. Segundo gostaria de saber se eu nao teria problema pois estou construindo um hardware baseado na estrutura da intel e botar uma placa de video que e voltada para arquiteturas amd nao faria com que eu perdesse um pouco de processamento grafico?
  3. Ola pessoal estou montando um pc gamer para mim. pela montagem que eu fiz na internet (todos os itens pelo site da Kabum) porém o valor dele ficou por volta dos 5000 reais e queria saber o que posso modificar para que fique mais barato e nao perca a qualidade. Eu queria algo em torno dos 3800 a 4200. Como eu nao sou um expecialista em hardware nao sei se tem algum item que esteja desenecessario e possa ser trocado por outro mais em conta. quanto ao hd r o mouse eu ja tenho por isso nao coloquei na lista. e tambem gostaria que se faltar alguma coisa na lista. por favor se possivel me ajude. com isso eu queria montar um pc que rode qualquer jogo atual na resoluçao alta e em 60 fps. eu consigo monta-lo nesse valor? Processador: Intel Core i5-6400 Skylake, Cache 6MB, 2.7Ghz (3.3Ghz Max Turbo) - 859,90 R$ Placa de video: Gigabyte GeForce GTX960 4GB G1 Gaming DDR5 128 Bit - 1.386,90 R$ Memoria ram: 4x (Kingston HyperX FURY DDR4 4GB) total 16 gb - 547,80 R$ SSD: SSD Kingston 2.5´ 120GB V300 SATA III - 239,90 R$ Fonte: Fonte Corsair CX-430W - CP-9020046-WW 80 Plus Bronze - 277,90 R$ Placa Mãe: GIGABYTE p/ Intel LGA 1151 mATX GA-Z170M-D3H - 769,90 R$ Monitor: Monitor LG LED 23´ IPS D-Sub, HDMI,Full HD 23MP55HQ-P Preto - 667,90 R$ Gabinete: Gabinete PCYes Mid Tower Java Verde sem Fonte 21497 - 212,90 R$
  4. Ola pessoal. Este Roteador vem sendo um problema na minha vida. Pois sempre que ligam aqui no telefone fixo a internet cai. pensei que fosse o filtro mais nao é pois ja troquei. Alem do mais alguns sites nao funcionam em alguns aparelhos. como por exemplo o Xbox Music no meu celular. ou o Netflix no meu xbox. Ele tem esse problema de alguns sites darem problema. Ja nao sei o que fazer achei varios topicos com esses problemas porém diziam que eu deveria trocar o filtro. mais ja fiz isso e nada. se puderem ajudar
  5. Ola pessoal. Bom tenho que entregar um trabalho sobre threads na segunda porém não sei utilizar threads e semaforos. se vocês puderem me ajudar com qualquer coisa já seria muito bom aqui esta a ordem do trabalho: ENUNCIADO: Este trabalho tem por objetivo fazer com que os alunos experimentem na prática a programação de problemas de sincronização entre processos e os efeitos da programação concorrente. Isso deve ser feito utilizando-se os recursos de threads POSIX (pthreads) — em particular, mutexes (pthread_mutex_t) e variáveis de condição (pthread_cond_t). O PROBLEMA: Sheldon, Leonard e Howard compraram um forno microondas juntos. Para decidir quem podia usar o forno, defiiram o seguinte conjunto de regras: • se o micro-ondas estiver liberado, quem chegar primeiro pode usar; • caso contrário, obviamente, quem chegar depois tem que esperar; • se mais de uma pessoa estiver esperando para usar, valem as precedências: – Sheldon pode usar antes do Howard; – Howard pode usar antes do Leonard; – Leonard pode usar antes do Sheldon. • quando alguém termina de usar o forno, deve liberá-lo para a próxima pessoa de maior prioridade, exceto em dois casos: – para evitar inanição (discutido a seguir); – quando houver deadlock (um ciclo de prioridades). Como agora os personagens do show The Big Bang Theory têm namoradas (Leonard tem a Penny, Howard tem a Bernardette e Sheldon tem a Amy, caso você não saiba), elas entram no esquema do forno da seguinte forma: cada namorada tem a mesma prioridade do namorado. Só que se os dois quiserem usar o microondas, um tem que esperar depois do outro. (Quer dizer, se Penny, Leonard e Howard estiverem esperando para esquentar algo e ninguém mais chegar, Howard usa primeiro pois tem priordade sobre Leonard/Penny, depois usa o forno Penny ou Leonard, dependendo de quem chegou primeiro entre eles; mas se a Bernardette chegasse antes do Howard acabar, ela teria preferência de usar em seguida a Howard (antes de Penny ou Leonard). Observe que isso pode levar à inanição em casos de uso intenso do forno, daí é preciso criar uma regra para resolver o problema: se o casal usar o forno em seguida, o segundo é obrigado a ceder a vez para um membro do casal que normalmente teria que esperar por eles. Obviamente, o segundo membro do casal só pode usar o forno se nesse meio tempo não chegar alguém com maior prioridade. Cada personagem, como os fiósofos daquele famoso problema, dividem seu tempo entre períodos em que fazem outras coisas e períodos em que resolvem esquentar algo para comer. O tempo que cada um gasta com outras coisas varia entre 3 e 6 segundos e usar o forno gasta um segundo. (Os tempos das outras coisas são apenas uma referência, você pode experimentar tempos um pouco diferentes, se for mais adequado. Certifiue-se de que em alguns casos esses tempos sejam sufiientes para gerar alguns deadlocks de vez em quando, bem como situações que exijam o mecanismo de prevenção de inanição. Se você reparar as precedências defiidas, vai notar que é possível ocorrer um deadlock (Sheldon → Howard → Leonard → Sheldon) — é, eles sabem, mas são muito teimosos para mudar. Para evitar isso, o Raj periodicamente (a cada 5 segundos) confere a situação e, se encontrar o pessoal travado (forno vazio e alguém de cada casal esperando), pode escolher um deles aleatoriamente e liberá-lo para usar o forno. IMPLEMENTAÇÃO Sua tarefa neste trabalho é implementar os personagens do show The Big Bang Theory como threads e implementar o forno como um monitor usando pthreads, mutex e variáveis de condição. Parte da solução requer o uso de uma mutex para o forno, que servirá como a trava do monitor para as operações que os personagens podem fazer sobre ele. Além da mutex, você precisará de um conjunto de variáveis de condição para controlar a sincronização do acesso dos casais ao forno: uma variável para enfieirar o segundo membro de um casal se o outro já estiver esperando, e outra variável de condição para controlar as regras de precedência no acesso direto ao forno. O programa deve criar os sete personagens e receber como parâmetro o número de vezes que eles vão tentar usar o forno — afial, não dá para fiar assistindo eles fazerem isso para sempre. Ao longo da execução o programa deve então mostrar mensagens sobre a evolução do processo. Por exemplo: $ ./trabalho_so 2 Sheldon quer usar o forno Sheldon começa a esquentar algo Leonard quer usar o forno Howard quer usar o forno Amy quer usar o forno Sheldon vai comer Penny quer usar o forno Raj detectou um deadlock, liberando Howard Howard começa a esquentar algo Sheldon quer usar o forno Howard vai comer Leonard começa a esquentar algo Leonard vai comer Penny quer usar o forno Leonard quer usar o forno Amy começa a usar o forno ... Nota: a ordem dos eventos acima deve variar entre execuções (escalonamento das threads) e implementações. Você não deve esperar ter exatamente o mesmo resultado. Sumarizando: • membros do mesmo casal esperam um atrás do outro para usar o forno; • as regras de preferência defiidas acima valem a não ser que um casal tenha que ceder a vez; • deadlock deve ser resolvido pela atuação do Raj; • inanição deve ser evitada pela regra do casal ceder a vez. Para implementar a solução, analise as ações de cada personagem em diferentes circunstâncias, como o outro membro do casal já está esperando, há alguém com mais prioridade esperando, há alguém com menos prioridade esperando. Determine o que fazer quando alguém decide que quer usar o forno e tem alguém de maior prioridade, o que fazer quando terminam de usar o forno, etc. Consulte as páginas de manual no Linux para entender as funções da biblioteca para mutex e variáveis de condição (cond): • int pthread_mutex_init(pthread_mutex_t *mutex, const pthread_mutexattr_t *attr); • int pthread_mutex_lock(pthread_mutex_t *mutex); • int pthread_mutex_unlock(pthread_mutex_t *mutex); • int pthread_mutex_destroy(pthread_mutex_t *mutex); • int pthread_cond_init(pthread_cond_t *cond, const pthread_condattr_t *attr) • int pthread_cond_signal(pthread_cond_t *cond); • int pthread_cond_wait(pthread_cond_t *cond, pthread_mutex_t *mutex) • int pthread_cond_destroy(pthread_cond_t *cond); Como mencionado anteriormente, você deve usar uma mutex para implementar a funcionalidade equivalente a um monitor, isto é, as operações sobre o forno serão parte de um monitor. Na prática, isso será implementado em C, mas deverá ter a funcionalidade equivalente a: //PSEUDOCÓDIGO monitor forno { ... // variáveis compartilhadas, variáveis de condição void esperar(int personagem) { printf("%s quer usar o forno\n", nome(personagem)); ... // verifica quem mais quer usar, contadores, variáveis de cond., etc. } void liberar(int personagem) { printf("%s vai comer\n", nome(personagem)); ... // verifica se tem que liberar alguém, atualiza contadores, etc. } void verificar() { ... // Raj verifica se há deadlock e corrige­o } }; Os personagens com namoradas(os) executam as seguintes operações um certo número de vezes (defiido pelo parâmeto de entrada na execução do programa): forno. esperar(p); // exige mutex esquentar_algo(p); // não exige exclusão mútua forno. liberar(p); // exige mutex comer(p); // espera um certo tempo aleatório Use srand() (confia a página do manual) para gerar números aleatórios entre 0 e 1, use uma multiplicação para gerar inteiros aleatórios. Já o personagem Raj executa as seguintes operações: enquanto personagens estão ativos faça sleep(5); forno.verificar(); INFORMAÇÕES ÚTEIS Forma de operação O seu programa deve basicamente criar uma thread para cada personagem e esperar que elas terminem. Cada personagem executa um loop um certo número de vezes (parâmetro de entrada na linha de comando), exceto Raj, que deve executar seu loop até que todos os outros personagens tenham acabado. Codifiação dos personagens Você deve buscar ter um código elegante e claro. Em particular, note que o comportamento dos casais é basicamente o mesmo, você não precisa replicar o código para diferenciá-los. Além disso, o comportamento de todos os personagens (exceto o Raj) é tão similar que você deve ser capaz de usar apenas uma função para todos eles, parametrizada por um número, que identifiue cada personagem. As prioridades podem ser descritas como uma lista circular. Acesso às páginas de manual Para encontrar informações sobre as rotinas da biblioteca padrão e as chamadas do sistema operacional, consulte as páginas de manual online do sistema (usando o comando Unix man ). Você também vai verifiar que as páginas do manual são úteis para ver que arquivos de cabeçalho que você deve incluir em seu programa. Em alguns casos, pode haver um comando com o mesmo nome de uma chamada de sistema; quando isso acontece, você deve usar o número da seção do manual que você deseja: por exemplo, man read mostra a página de um comando da shell do Linux, enquanto man 2 read mostra a página da chamada do sistema. Manipulação de argumentos de linha de comando Os argumentos que são passados para um processo na linha de comando são visíveis para o processo através dos parâmetros da função main(): int main (int argc, char * argv []); o parâmetro argc contém um a mais que o número de argumentos passados (no caso deste enunciado o argc deverá ter valor igual a 2) e argv é um vetor de strings, ou de apontadores para caracteres (no caso deste enunciado o número de iterações deverá ser obtido em argv[1] ). Processo de desenvolvimento Lembre-se de conseguir fazer funcionar a funcionalidade básica antes de se preocupar com todas as condições de erro e os casos extremos. Por exemplo, primeiro foque no comportamento de um personagem e certifiue-se de que ele funciona. Depois dispare dois personagens apenas, para evitar que deadlocks aconteçam. Verifiue se os casais funcionam, inclua o Raj e verifiue se deadlocks são detectados (use um pouco de criatividade no controle dos tempos das outras atividades para forçar um deadlock). Finalmente, certifiue-se que o mecanismo de prevenção da inanição funciona (p.ex., use apenas dois casais de altere os tempos das outras atividades para fazer com que um deles (o de maior prioridade) esteja sempre querendo usar o forno. Exercite bem o seu próprio código! Você é o melhor testador dele!!! por favor se puderem me ajudar
  6. Ola tenho uma prova amanha e nao entendo como classificar um algoritmo tipo se ele e O(n) ou O(n log n) eu queria uma video aula ou que alguem me explicasse isso por favor
  7. Olá pessoal tenho um trabalho para ser entregue amanha dia 04/04/2014 e tenho um problema.O meu trabalho manipula produtos de um supermercado onde eu posso adcionar novos produtors,pesquisar produtos e agora (o que quero fazer) e remover um produto.Mais para isso eu queria fazer o seguinte.Quando eu clicasse em uma celula da minha string grid uma variavel do tipo string recebesse o que esta escrito dentro dela. porém nao sei como se faz isso se puderem me ajudar sei que e algo parecido com isso palavra:=stringgrid1.agora nao sei o que se escreve aqui; https://mega.co.nz/#F!Rdhn2azI!0yByWsgP0xDQ1hsrvh_TNQ aqui esta o link do meu programa o que eu quero e fazer esse botao remover funcionar (obs:e a primeira vez que uso string grid e nao tenho conhecimento de banco de dados por isso armazenei no txt)

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...