Tag Info

New answers tagged

0

The correct option is -O3 (minus-oh-three), not -03 (minus-zero-three).


2

OS X is a certified UNIX operating system, guaranteeing it implements the POSIX standard. Linux, while not a certified UNIX, also implements the POSIX standard. If you limit your API calls to things that are part of POSIX you should have consistent behavior between OS X and Linux. Aside from POSIX, the C standard library is also standardized and you ...


5

I would say that it is misleading to call getpid() a "linux system call". That gives the impression that it is a Linux-specific system call, which it isn't. Actually, getpid() and many other system calls are specified by POSIX, and you will find it implemented on both Linux and MacOS and on many other systems, with identical behaviour. The majority of ...


6

When a system call is executed, there is a privilege switch, i.e. the executed code is allowed to execute more instructions and access data forbidden to userland code. There is however no process context switch so the kernel code is still running in the calling process context. That means the kernel does not need to search which process is calling it, it ...


4

In a single CPU system, there is a global variable that points to the proc structure of the running process or the current thread. The proc structure contains the process id. In a multi CPU system, there is either a similar pointer for every CPU or the MMU context is used to set up such a global variable for the syscall. int64_t getpid(void) { ...


10

The kernel does job scheduling and provides system calls. When a process is running, the kernel schedules its runtime - especially it assigns a PID to it - such information is stored inside the kernel address space, in data structures (e.g. inside a task struct). Thus, when a process calls the getpid() system call, the kernel just has to look in the task ...


1

I stumbled across your question while having the same problem and I've found a solution. I assume that, you as well as I installed cscope_maps.vim in your .vim directory. When you inspect the file exactly it has a flag "cscopetag" that basically combines ctags and csope. Removing this flag will disable ctrl-] binding for cscope and only ctags remains. *" ...


1

You are, most likely, abusing lxdialog. That is supposed to be used only together all other configuration stuff. If You really need a configuration tool to be used at compile time (i.e.:"make menuconfig && make all") then you will find documentation to make kconfig work for you in kernel/Documentation/kconfig directory (and other places, but You ...


2

GNU Autotoolchain: autotoochain ,generally i would say use autotools if you have a big Project to distribute. Linux GCC is just a compiler system for compiling and distributing your product. You can not do cross compiling with normal gcc, also you have to provide your own Makefile to compile (if you need one). Cross-Compiling (Cross GCC) Also a ...


5

Bits in the umask of the current process are cleared when the file is created. In this case, it looks like the umask is 0002 (no world write). Call umask() before calling open() to change that. Soapbox: please don't create world-writable files unless you're really sure that's what you want. umask exists to save you and your users from exactly that type ...


0

You're not actually cross-compiling; to cross-compile you need to tell ./configure about your target architecture: ./configure --prefix=/usr/local --host=arm-linux-gnueabi You should then get Makefiles which use arm-linux-gnueabi-gcc, and a resulting squid binary which is appropriate for your ARM device. (Assuming you have all the necessary libraries of ...


0

A small part of your problem may lie in the fact that you are doing an open inside your while (1) … read loop (without closing the resulting file descriptor in the loop).  Your code can be expected to accumulate hundreds of file descriptors for the FIFO.  Typically, after you hit a thousand, the open will start failing because of too many open files ...


0

You're only sending sizeof(float) bytes, which is only a substring of depthstring, whose actual size is strlen(depthstring)+1, not sizeof(float). One thing you could do is eliminate the conversion to and from a string. Since both processes reading a named FIFO are on the same machine (no, FIFOs don't work over NFS), you can assume that a float is ...


1

The grep process was blocked because it was not getting the EOF from other write end of the pipe.EOF will be send to the reader end when associated write file(fds[1]) descriptors will be closed.My mistake was I didn't closed the write descriptors(fds[1]) from the parent process(main) though I have closed it from process which was writing to the pipe. So the ...


1

It looks like you're missing a few dependencies. That would be a bug in the configure script. You might want to file a bugreport to the screen maintainers.



Top 50 recent answers are included