文章

408

粉丝

0

获赞

0

访问

106.7k

头像
2017年计算机学科专业基础综合试题 - 第46题回答
操作系统
发布于2025年9月12日 10:00
阅读数 284

semaphore xmutex=1,ymutex=1,zmutex=1;

typedef struct
{
    float a;
    float b;
}cnum;
cnum x,y,z; //全局变量

//计算两个复数之和
cnum add( cnum p,cnum q)
{
    cnum s;
    s.a=p.a+q.a;
    s.b=p.b+q.b;
    return s;
}

thread1
{
    cnum w;

    P(xmuttex);

    P(ymutex);
    w=add(x,y);

    V(ymujtex);

    V(xmutex);
    ...
}

thread2
{
    cnum w;

    P(ymutex);

    P(zmutex);
    w=add(y,z);

    P(zmutex);

    V(ymutex);
    ...
}

thread3
{
    cnum w;
    w.a=1;
    w.b=2;

    P(zmutex);
    z=add(z,w);

    V(zmutex);

    P(ymutex);
    y=add(y,w);

     V(ymutex);
    ...
}


评分及理由

(1)信号量定义部分(满分3分)

学生定义了三个信号...

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发