Skip to content

GSD

Sections
Personal tools
You are here: Home » Teaching » Sistemas Operativos II » 5306O2 - Sistemas Operativos II (2006 - 2007) » Guiões das Aulas Práticas » #04 - Programação concorrente com Threads POSIX

#04 - Programação concorrente com Threads POSIX

Document Actions

Objectivos

Apresentação das primitivas básicas da interface de Threads Posix: criação, terminação, passagem de informação entre threads. Realização de um exercício de procura colaborativa num vector.

Novas chamadas ao sistema

    #include <pthread.h>

    int pthread_create(pthread_t *thread, pthread_attr_t *attr, 
            void * (*start_routine)(void *), void * arg);
    void pthread_exit(void *retval);
    int pthread_join(pthread_t th, void **thread_return);
    int pthread_detach(pthread_t th);

    pthread_t pthread_self(void);
    int pthread_equal(pthread_t t1, pthread_t t2);

Exercícios propostos

  1. Implemente um programa que conta os números não-negativos num vector. A operação de contagem deverá ser dividida pelo número de threads especificado na sua linha de comando.
  2. Modifique o programa anterior de forma a que imprima ordenadamente os índices dos valores não negativos.
Created by gsd
Last modified 2007-03-27 04:55 PM
« April 2015 »
Su Mo Tu We Th Fr Sa
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30    
 
 

Powered by Plone

This site conforms to the following standards: