Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Программирование под Unix/Linux > интерфейс семафоров с помощью очереди ожидания


Автор: psuduck 2.10.2009, 23:05
есть 2 файла на с
файл 1
Код

#include "system.h"
#include <stdio.h>
#include <stdlib.h>
int s=1;
int p(int *s)
{
    while (*s == 0)
        rtems_task_wake_after(100);
    *s = *s-1;
    return *s;
}

int v(int *s)
{
    *s = *s+1;
    return *s;
         
}
rtems_task Init(
  rtems_task_argument ignored
)
{
  printf( "\n\n*** test ***\n" );
  printf( "testtest\n" );
  printf( "*** test ***\n" );
  exit( 0 );
}


и файл 2
Код

#include "system.h"
#include <stdio.h>
#include <stdlib.h>
int s=1;
int p(int *s)
{
    while (*s == 0)
        rtems_task_wake_after(100);
    *s = *s-1;
    return *s;
}

rtems_task Init(
  rtems_task_argument ignored
)
{
 printf( "\n\n*** test ***\n" );
  printf( "testtest\n" );
  printf( "*** test ***\n" );
  exit( 0 );
}
int v(int *s)
{
    *s = *s+1;
    return *s;
         
}



реализуют интефейс семафоров без очереди ожидания
собственно,как их поменять, чтобы интерфейс семафоров был реализовн с помощью очереди ожидания posix

Автор: MAKCim 3.10.2009, 10:34
код полон race'ов

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)