What is the real difference between system calls and normal function calls. Ultimately function calls too would be passed to kernel for some or the other work.
What's the best way to include variables in a string using C,i.e if i want to do the following query in C, how would i do that.How do i build the string variable up in C?
I know there is a way to call winapi in runtime in windows. I want to ask how can I call a system call in gcc in runtime (when I don't know what it can be)? I don't mean syscall that I think is for calling only system calls and not library functions.
I'm trying to produce a alphabetic, non-repetitive list of all System service calls in all c files located in a folder. Here's what I got so far. grep -ow '[A-Za-z]*SYS[$][A-Za-z]*' *.c | sort Which produces all system service calls in alphabetic order I just need to find out how to make it non-repetitive.
I am working with fedora 6 , i386 architecture.I am trying to write on keyboard port via program.On inspation i come to know that 0x0060 to 0xz006f are used for keyboard in linux 2.6 kernel in the i/o space from kernel.
I have C++ source code(*.cpp) files that expects it's header files in System's include folder which is/usr/include.The cpp files has include lines like this:
I'm using gmake (v3.81) to build some c executables. As the first step in the process I run the files through a preprocessor (for embedded SQL). The preprocessor completes successfully, but the gmake reports an error and discontinues buiding the remaining dependencies...
make *** [myfile.c] Error 4
which (according to /usr/include/asm-generic/errno-base.h) means "interrupted System Call". My preprocessor doesn't raise any signals, so I'm not sure what's causing this error.
I've been receiving a ton of calls from telemarketers and political callcenters. What would be the simplest way to use Ubuntu to automatically drop calls incoming from blacklisted numbers?
I have Comcast Digital Voice service, which is technically VOIP but I think it interfaces with modems themselves just like any other phone service would. I have a dedicated Ubuntu server sitting next to a phone jack already, so I'd like to use that if possible.
I've seen FreePBX and Asterisk, and hear that they can do the job. However, I haven't been able to tell just how easily they could be set up. It sounds like they might require me to get rid of all my phones and use soft phones instead... Does anybody know if it is as simple as buying a voice modem and configuring a PBX software to interface with it?
I've implemented a few custom system calls in my Ubuntu kernel, but I'm having some issues with the return values. Each function returns a variety of non-negative integers depending on which error is encountered. However, when I'm testing the system calls, the only negative value that gets returned to the user program is -1, regardless of what I have in the code.
Is there some special path I have to take to get the proper return values?
I would like to trace a user's activity by monitoring system calls. Is there a way to use strace such that at startup it will begin tracing all system calls? Or is there any other method to automatically trace the system calls used during a user's session automatically without having to call strace manually?
I'm new to C language and some help finding places in the following code where a system call is made and error checking is not done. I found one but since I don't know C language at all I'm not exactly sure what else to look for. Link to my file: [URL]...
I found one and added error checking: if (setoutpipe){ //Changes: Added error checking to the system call close() //Orginal Code: close(pidefd[1]); if(close(pipefd[1] != 0){ fprintf(stderr, "Could not close piple. "); exit(255); }
I have a problem in making multiple calls using PJSIP. I registered different accounts that implements IAccount and added that in the CallManager. When i try to make the calls from the same CallManager, I could able to make the first call. When second call is made the first call got cut and it is alerting and the same for the thrid call..Could anyone help me in this regard.
Note: Calls has to be made from different numbers to different destinations. Is it possible to make multiple outbound calls simultaneously from the same instance of CallManager?
I can define all variables in tcl programming in a file for instance var.cfgand source the same file in my tcl script such assource var.cfgIs this possible in perl too?
We recently ported an application over from IRIX to Linux, specifically SUSE Enterprise 11 and gcc (glibc 2.9). On IRIX there was a library trace utility call 'par' that allowed me to execute a C program and trace all the library calls it made, tracking how much time was spent in each call. I have been trying to find something similar for SUSE. I have found the ?trace programs (strace, ltrace, and ktrace) none of which is default installed on SUSE 11.Does any one have a suggestion on which ?trace to install and use or is there something else out there better?
Is there a way to hook calls to new/malloc, delete/free in C++? I tried the following methods: LD_PRELOAD -> fails for malloc, because dlsym seems to depend on malloc -Wl,--wrap,malloc -> doesn't work for 'new' gcc hooks -> doesn't work always, e.g. for uclibc there are no hooks Are there any other methods I could try?
I'm trying to write a C program that extends an array to any user inputed size.
Code: if (arraysize == 0) { arraysize = (int) pos + 1; a = (int *) calloc (arraysize,sizeof(int)); for (i = 0 ; i < arraysize ; i++ ) a[i] = -1; code....
The program dumps with that sequence of inputs everytime, but might dump an input before or after if different positions are requested. Interestingly, when I tested pos = 2000..2008, I got no dumps. So is realloc somehow trying to extend the array into bad space?
I am trying to port some "C" code from Solaris to Linux. I have a Dell PowerEdge R610 with an Intel Xeon E5504 quad core processor running Red Hat Linux Enterprise 5.3. I am compiling in 64 bit mode. I have managed to get the code compiled and linked, but when I attempt to execute it, I get a core dump in one of the C library calls (like strcpy or printf.)
I have a static library that contains our own code that makes the call to the C library. If I move the library method into the source file with the main method and rename it to be certain that I am executing my method instead of the method in our library, the call succeeds. Eventually another static library call is made that results in a core dump in the shared object. I compile my library code into a static library with gcc as:
How does a C program start in linux? Is main() the first function called in the a c application by kernel. I understand it is the first called function written by the application programmer, but the question is to understand the what all kernel does and what all functions it calls before calling main()
I want a log or live data that discloses the system calls an application makes. I have used strace but can't find a guide for it that is decent. I'm interested in knowing the calls made after user intervention like opening a menu and so on. If you run (strace application_name) it is static. What good is this? When does strace make this file? When is this log produced?
I am working on a Linux embedded C++ project. When I do an install, all of the header files are copied into the target at /usr/include/.My question is, why would the target ever need the C++ header files? It seems to me all the target needs is the executables and the library *.so files.I want to remove the installation of header files into the target but I'm afraid I'm missing something.
I'm learning GTK , and would like to use Codeblocks, and/or KDEvelop, and compile my c files using that, but always get an error about gtk/gtk.h not found, but can't figure out how to add the commands... I normally type gcc -o Program1 main.c `pkg-config --libs --cflags gtk+-2.0` That's a lot to type every time to compile.. Isn't there an easier way, in KDevelop, Monodevelop, and/or Codeblocks to make this step quicker, by adding some sort of I-/usr/include commands, or something?? thanks in advance, =). I looked online for some results, but didn't come across anything handy..
Basically I have a dir that contains my makefile and another directory inside this called source this holds main source files. External to these I have a couple of dirs common and drives.
In my make file I use
To include the protoypes from the headers in the folders common and drivers used by source, this works fine. However in common and drivers I use a few variables that are set in the source dir. I set these with externs inside the common and driver files. However I'm sure I should be able to set the directory path for source inside my makefile. So say I have inside source hardware.h with prototypes, I set DINCDIR = -I/Source -I../Drivers -I../CommonFiles
Then from a c file inside my common folder I say #include "hardware.h" the file should be able to see hardware.h and it's protoypes. However I get:
Is there some way I can get the extern dirs to see the source dir?
I am trying to re-write my local web pages in HTML5. My original pages used an include file so that I had a consistent set of links on the top of each page. I used - require("link_list.php");
But this does not seem to be possible in HTML5. I am guessing that there is a way to do this, searching the web suggests object or embed, but these create a new page within my original page, which is not what I want.