08-19-2008
C program
Can anyone tell me how to.....
program to create multiple threads (one master thread and rest worker threads) and using the threads write into and read from shared memory
Restrictions:
Only one thread should be able to read at any instant of time into shared memory region.
Only one thread should be able to write at any instant of time into shared memory region.
Worker threads should inform the master thread after every read and write operation.
Master thread inform the worker thread (which is waiting to acquire shared memory region) that read or write operation is successful and it can acquire the memory for either reading and writing operations.
10 More Discussions You Might Find Interesting
1. Programming
My program only ouputs the correct magic square sum totals for the number 15.If I enter any odd number smaller than 15 my sum totals are incorrect. I have define "size" to 15. How or what do I change so that my program will output the magic square results for the odd numbers 1 through 15 without... (1 Reply)
Discussion started by: JJJ
1 Replies
2. Programming
Read the title: how do i do it? (4 Replies)
Discussion started by: Gekko
4 Replies
3. Programming
Hi,
Program A: uses pipe()
I am able to read the stdout of PROGAM B (stdout got through system() command) into PROGRAM A using:
* child
-> dup2(fd, STDOUT_FILENO);
-> execl("/path/PROGRAM B", "PROGRAM B", NULL);
* parent
-> char line;
-> read(fd, line, 100);
Question:
---------... (1 Reply)
Discussion started by: vvaidyan
1 Replies
4. UNIX for Dummies Questions & Answers
Hi,
Program A: uses pipe()
I am able to read the stdout of PROGAM B (stdout got through system() command) into PROGRAM A using:
* child
-> dup2(fd, STDOUT_FILENO);
-> execl("/path/PROGRAM B", "PROGRAM B", NULL);
* parent
-> char line;
-> read(fd, line, 100);
Question:
---------... (3 Replies)
Discussion started by: vvaidyan
3 Replies
5. Programming
Hi,
I wanted to know if i can write a program using switches and signals, etc to trace execution of other unix program which calls c program internally.
If yes how? If not with signals and switches then are there any other methods apart from debugging with gdb/dbx. (3 Replies)
Discussion started by: jiten_hegde
3 Replies
6. UNIX for Dummies Questions & Answers
Hi,
i want to write a script that executes a program (exec?) .
this program then requires a filename as input.
how do i give it this input in the script so the program will be complete run and close by the script.
e.g.
exec prog.exe
program then asks for filename
"enter filename:"... (1 Reply)
Discussion started by: tuathan
1 Replies
7. Programming
I wrote a simple program that generates a random word 10,000,000 times.
I wrote it in python, then in C++ and compared the two completion times. The python script was faster! Is that normal? Why would the python script be faster? I was under the impression that C++ was faster. What are some of... (2 Replies)
Discussion started by: cbreiny
2 Replies
8. Programming
Hi All,
Probably this is a repeated question. My knowledge in this is limited and i got confused on all those materials i got in google search.
We use #include <> to include a predefined library like stdio.h
i saw somewhere that #include "" includes a man made module(another C program). IS... (2 Replies)
Discussion started by: jisha
2 Replies
9. Homework & Coursework Questions
Long story short: I'm working inside of a Unix SSH under a bash shell. I have to code a C program that generates a random number. Then I have to call the compiled C program with a Perl program to run the C program 20 times and put all the generated random #s into a text file, then print that text... (1 Reply)
Discussion started by: jdkirby
1 Replies
10. Shell Programming and Scripting
I created a program, so a kid can practice there math on it. It dispenses varies math problems and the kid must input an answer. I also want it to grade the work they have done, but I can't find the best place for it to print out the grade.
I have:
if ( $response =~ m/^/ ) {
$user_wants_to_quit... (1 Reply)
Discussion started by: germany1517
1 Replies
LEARN ABOUT HPUX
pthread_rwlockattr_setpshared
pthread_rwlockattr_getpshared(3T) pthread_rwlockattr_getpshared(3T)
NAME
pthread_rwlockattr_getpshared(), pthread_rwlockattr_setpshared() - get or set the process-shared attribute
SYNOPSIS
PARAMETERS
attr Pointer to the read-write lock attributes object whose attributes are to be set/retrieved.
pshared This parameter either specifies the new value of the process-shared attribute (set function) or points to the memory loca-
tion where the process-shared attribute of attr is to be returned (get function).
DESCRIPTION
The attributes object attr must have been previously initialized with the function before these functions are called.
Read-Write locks can be used only by threads within the process or shared by threads in multiple processes. The process-shared attribute in
a read-write lock attributes object describes who may use the read-write lock. The legal values for the process-shared attribute are:
This option permits a read-write lock to be operated upon by any thread
that has access to the memory where the read-write lock is allocated. The application is responsible for allocating the
read-write lock in memory that multiple processes can access.
The read-write lock can only be operated upon by threads created within
the same process as the thread that initialized the read-write lock. If threads of differing processes attempt to operate on
such read-write lock, the behavior is undefined.
The default value of process-shared is
is used to set the process-shared attribute in the initialized attributes object attr. The new value of the process-shared attribute of
attr is set to the value specified in the pshared parameter.
retrieves the value of the process-shared attribute from the read-write lock attributes object attr. The value of the process-shared
attribute of attr is returned in the pshared parameter.
RETURN VALUE
Upon successful completion, and return zero. Otherwise, an error number is returned to indicate the error (the variable is not set).
ERRORS
If any of the following occur, the and functions return the corresponding error number:
is not defined and these functions are not supported.
For each of the following conditions, if the condition is detected, the and functions return the corresponding error number:
The value specified by
attr is invalid.
The value specified by
pshared is not a legal value.
The value pshared points to an illegal address.
WARNINGS
If a read-write lock is created with the process-shared attribute defined as the cooperating processes should have access to the memory in
which the read-write lock is allocated.
AUTHOR
and were developed by X/Open.
SEE ALSO
pthread_create(3T), pthread_rwlockattr_init(3T), pthread_rwlock_init(3T).
STANDARDS CONFORMANCE
Pthread Library pthread_rwlockattr_getpshared(3T)