posix

eregi_replace problem!

hey guys, now i have an eregi_replace Problem: I have this $subject = "This is for @codeworxx - you have to try first!"; $text = eregi_replace('(((@))[-a-zA-Z0-9]+)','<a href="http://www.google.de/\\1"&gt;\\1&lt;/a&gt;', $subject); echo $text; Everything works fine, but the <a href="http://www.google.com/@codeworxx"&gt;@codeworxx&...

C - massive # of posix threads spinning out of control and no longer creating new ones

I have an assignment in class that requires us to use POSIX threads and create n*(n-1)/2 of them to process a dataset of n elements. You can think of it as basically the classical "handshake" in probability. I know that for a large data set it's going to make the application CPU-bound and eventually it will spend so much time context s...

Should I use msgsnd or mq_send?

I'm learning Unix IPC, and my book only talks about the msg* family of functions. However while browsing the man pages I learned about the mq_ equivalents. http://techpubs.sgi.com/library/tpl/cgi-bin/getdoc.cgi/0650/bks/SGI%5FDeveloper/books/T%5FIRIX%5FProg/sgi%5Fhtml/ch06.html describes some differences between the two, but I'm not sure...

What are the most efficient idioms for streaming data from disk with constant space usage?

Problem Description I need to stream large files from disk. Assume the files are larger than will fit in memory. Furthermore, suppose that I'm doing some calculation on the data and the result is small enough to fit in memory. As a hypothetical example, suppose I need to calculate an md5sum of a 200GB file and I need to do so with gu...

Can POSIX message queues be used cross user on Linux?

Hi all, I have implemented a POSIX message queue. On the listener side, I am opening the queue like this: mqdes = mq_open(s_mailbox_name.c_str(), O_RDONLY | O_CREAT, S_IRWXU | S_IRWXG | S_IRWXO, NULL); On the sender side, I am opening the queue like this: mqdes = mq_open(m_s_mailbox_name.c_str(), O_WRONLY); The string is the same o...

Distinguish Java threads and OS threads?

In Production system,like Banking application running in Linux environment, How do I distinguish running Java threads and native threads? In Linux there will be Parent process for every child process, and they say 0 is the parent of all the process, will there be a Parent thread of all the forked Java threads? How do I know which Java ...

getopt implicit declaration in Solaris?

In Solaris, gcc gives me implicit declaration of function `getopt' when compiling #include <unistd.h> #include <stdlib.h> int main(int argc, char *argv[]) { getopt(1,argv,""); return 0; } The man page for getopt says something about including unistd.h or stdio.h, however even though I'm inluding both I still get this w...

forking multiple processes and making the parent wait for all of them (in C)

I'm creating various processes (3 to be precise) and making them do different things. So far so good. I'm trying to wait in the parent until all children are completed. I've played around with many options (such as the one listed below) but either the parent waits but I have to press enter to return to the shell (meaning that some child...

How to redirect the output back to the screen after freopen("out.txt", "a", stdout)

#include <stdio.h> int main() { printf("This goes to screen\n"); freopen("out.txt", "a", stdout); printf("This goes to out.txt"); freopen("/dev/stdout", "a", stdout); printf("This should go to screen too, but doesn't\n"); return 0; } I call freopen to redirect the stdout to out.txt then I print something on th...

Unix stat()/lstat() for Java

Suppose I want to get several of a file's properties (owner, size, permissions, times) as returned by the lstat() system call. One way to do this in Java is to create a java.io.File object and do calls like length(), lastModified(), etc. on it. I have two problems so far: Each one of these calls triggers a stat() call, and for my pur...

Critical Sections that Spin on Posix?

The Windows API provides critical sections in which a waiting thread will spin a limited amount of times before context switching, but only on a multiprocessor system. These are implemented using InitializeCriticalSectionAndSpinCount. (See http://msdn.microsoft.com/en-us/library/ms682530.aspx.) This is efficient when you have a critic...

[A-Z]{2,4} not limiting to between 2 & 4 characters

PCRE: /\A[A-Z0-9_\.%\+\-]+@(?:[A-Z0-9\-]+\.)+(?:[a-z]{2,4}|museum|travel)\z/i POSIX: /^[A-Z0-9_\.%\+\-]+@(?:[A-Z0-9\-]+\.)+(?:[A-Z]{2,4}|museum|travel)$/i This regex is correct in every way for my needs except that it allows emails such as [email protected]. It says these are a match. If I'm not mistaken, doesn't the {2,4} after [A-Z] mean th...

What is the difference between POSIX sockets and BSD sockets?

Could someone please explain the differences between POSIX sockets and BSD sockets? ...

How to get a FILE pointer from a file descriptor?

I'm playing around with mkstemp(), which provides a file descriptor, but I want to generate formatted output via fprintf(). Is there an easy way to transform the file descriptor provided by mkstemp() into a FILE * structure that is suitable for use with fprintf()? ...

How to perform security check on a given path (from web server) to serve files

Hello, I need to write a small file serving component for web server. There are lots of issues serving files. Because "as-is" serving as big security hole, like this www.somesite.com/../../../../etc/passwd There are many issues including ".." resolving and many others like under windows there are many "unusual ways to refer to some pa...

minor issue with fork() and pipe()

I 'm writing a little program that implements pipes like they work in the shell. ie: ls -hal | sort | grep p | wc it works fine, with the minor issue that on one line, when CMD_NO=n, the comparison i biggerthan CMD_NO does not work, but i!=(CMD_NO-1) does. I'm trying to figure out why in this particular case (the line is ocmmented a...

Callbacks and Delays in a select/poll loop

One can use poll/select when writing a server that can service multiple clients all in the same thread. select and poll, however need a file descriptor to work. For this reason, I am uncertain how to perform simple asynchronous operations, like implementing a simple callback to break up a long running operation or a delayed callback with...

set directory of tmpfile() on Linux

A program I use is failing when it uses tmpfile() for large files. The problem seems to be I don't have permission to create large files in /tmp, which this function uses by default. So is there a way, perhaps with an environmental variable, that I can make tmpfile() write to a different location? Edit: the program in question is sox, w...

Posix evtsuspend equivalent

I am migrating a LynxOS program to an ubuntu distribution and gcc 4.1.3 I am almost done but I have a problem, I am receiving SIGALRM signal which forces my program to exit. I dont know why I am receiving this signals if I am not calling to alarm(x). I roundabouted this with a sigaction, but my program is not working properly mq_receiv...

How to alter the recursive locking behaviour of Windows Mutex?

Windows Mutex seems to allow an acquired lock to be acquired again (recursively) if the thread currently owning the lock tries to acquire it. But, posix based pthread locks don't allow such a behaviour. Is there any compile time macro or any settings which can make the windows mutex behave in the same way as the pthread mutex? ...