I emailed the maintainers of the code. This is a response I got back from Alan "Maddog" Cox (with permission to post here):
Quote:
Quote:
Perhaps you can contribute to this discussion (concerning SCO vs linux performance differences with semget):
No but if you've got a good test case using gettimeofday() rather than time
so you get high precision time data file a bug in bugzilla.kernel.org as I
imagine Ingo Molnar and a few others might be interested.
High performance Linux code uses futex locks rather than sys5 locks but it
would still be nice to know if there really is such a big difference and why
Alan
So here is yet another version using gettimeofday(). Don't bother posting the benchmarks here, unless they are significantly different. But prepare them for bugzilla:
Hello,
I have a Supermicro server with a P4SCI mother board running Debian Sarge 3.1. This is the "dmidecode" output related to RAM info:
RAM speed information is incomplete.. "Current Speed: Unknown", is there anyway/soft to get the speed of installed RAM modules? thanks!!
Regards :)... (0 Replies)
Hi,
I am looking to use a semaphore for the first time in one of my scripts. I am just wondering if there are any simple examples or tutorials around?
I am a beginner so the simpler the better :)
Thanks
-Jaken (2 Replies)
I analysed disk performance with blktrace and get some data:
read:
8,3 4 2141 2.882115217 3342 Q R 195732187 + 32
8,3 4 2142 2.882116411 3342 G R 195732187 + 32
8,3 4 2144 2.882117647 3342 I R 195732187 + 32
8,3 4 2145 ... (1 Reply)
Control two exclusively shared resources(semaphore). The two resources are two files. The producer will write even numbers to one file, and odd numbers to another one. The consumer respectively reads from each file until it gets 5 even numbers and 5 odd numbers.
Can any one help me with the... (0 Replies)
If I create a semaphore and then I fork a number of child processes then all the child process use that same semaphore.
Since the process address spaces are different rfom each other then how all the child process are able to access the same semaphore?
I understand that semaphore/mutex is at os... (0 Replies)
I was asked to add this piece of code to a c program which I will execute through the shell:
for(long i = 0; i < NITER; i++)
{ sem_wait( &sema);
count++;
sem_post( &sema); }
I didn't get it, which is the critical section ? if it's "count++" how would a thread wake up in order to enter it... (1 Reply)
Discussion started by: uniran
1 Replies
LEARN ABOUT OSF1
sem_post
sem_post(3) Library Functions Manual sem_post(3)NAME
sem_post - Unlocks a semaphore (P1003.1b)
LIBRARY
Realtime Library (librt.so, librt.a)
SYNOPSIS
#include <semaphore.h>
int sem_post (
sem_t *sem);
PARAMETERS
sem Pointer to the semaphore to be unlocked.
DESCRIPTION
The sem_post function unlocks the specified semaphore by performing the semaphore unlock operation on that semaphore. The appropriate func-
tion (sem_open for named semaphores or sem_init for unnamed semaphores) must be called for a semaphore before you can call the locking and
unlocking functions, sem_wait, sem_trywait, and sem_post.
If the semaphore value after a sem_post function is positive, no processes were blocked waiting for the semaphore to be unlocked; the sema-
phore value is incremented. If the semaphore value after a sem_post function is zero, one of the processes blocked waiting for the sema-
phore is allowed to return successfully from its call to sem_wait.
If more than one process is blocked while waiting for the semaphore, only one process is unblocked and the state of the semaphore remains
unchanged when the sem_post function returns. The process to be unblocked is selected according to the scheduling policies and priorities
of all blocked processes. If the scheduling policy is SCHED_FIFO or SCHED_RR, the highest-priority waiting process is unblocked. If more
than one process of that priority is blocked, then the process that has waited the longest is unblocked.
The sem_post function can be called from a signal-catching function.
RETURN VALUES
On successful completion, the sem_post function returns the value 0 (zero) and performs a semaphore unlock operation, unblocking a process.
Otherwise, the function returns the value -1 and sets errno to indicate the error. The state of the semaphore remains unchanged.
ERRORS
The sem_post function fails under the following condition:
[EINVAL] The sem does not refer to a valid semaphore.
RELATED INFORMATION
Functions: sem_trywait(3), sem_wait(3)
Guide to Realtime Programming delim off
sem_post(3)