04-13-2008
kernel call problem
hi all
I want to make a kernel call which takes as input an integer x and prints 2*x
Anyone who knows how could i do that?
10 More Discussions You Might Find Interesting
1. Linux
Hi Everyone!
How can we make a socket() system call from a linux module executing in kernel space?
If any one knows, kindly tell me. It will be great.
I want to use the socket interface in linux kernel space for sending raw packets over the network.
Hamayun (0 Replies)
Discussion started by: mian_m_hamayun
0 Replies
2. Programming
Dear Friends,
I write a c program to list the directories recursively. For this I write a function called my_readdir to read the content of directory. For this I use read system call it returns -1, then I use readdir system call it gives comment terminated error or segmentation... (1 Reply)
Discussion started by: spmlingam
1 Replies
3. Programming
hi all!
i have developed a mechanism in system.c to count how many times each kernel call is called. The results are held in an array in system.c . What i want to do is to create a new kernel call which will print this array. I need help in passing the array from system.c to the new kernel call. ... (5 Replies)
Discussion started by: aureliano
5 Replies
4. UNIX for Advanced & Expert Users
Hi,
I would like o implement a kernel call, but I don't know how to do it. Where can I find an example?
I've already look to minix source code, but I'm still confused and not very comfortable to mess with the code at this level.
Thanks, (1 Reply)
Discussion started by: pedrosacosta
1 Replies
5. Shell Programming and Scripting
This is shell script I have made to lists out directory contents and filenames for any given directory (without using ls command). There is some problem in dirfunc function call which I have marked 1 is not working. Can anybody suggest what is the problem there and how should I correct it.
... (2 Replies)
Discussion started by: netresearch
2 Replies
6. Linux
hi,
where can I find the detail information about the syscall in binary instructions of linux/mips.
for example, in linux/mips:
li v0, 4140
syscall
it's a syacall of "lseek" , but how can I find that which registers will be used in this syscall , and the meaning of the arguments in the... (2 Replies)
Discussion started by: zerocool_08
2 Replies
7. Shell Programming and Scripting
#!/bin/bash
awk '
function ad(t,r){
return (t+r);
}
BEGIN{
print ad(5,3);
}
{
print ad(5,3);
}
'
Doesn't print anything for the last print ad(5,3); (6 Replies)
Discussion started by: cola
6 Replies
8. Programming
can a linux kernel module call libc functions, such as printf(), strcpy(), etc...? (9 Replies)
Discussion started by: vistastar
9 Replies
9. OS X (Apple)
Hi all...
I am trying to create a shell project purely for this Macbook Pro.
I do NOT want to use SOX as the sampling _source_ but Quicktime
instead, the idea being that NO third party installs will be needed.
The code below works fine except the commented out Applescript line
does not do... (2 Replies)
Discussion started by: wisecracker
2 Replies
10. Programming
The following code:
int fd;
if (fd = open("mem", O_RDONLY) == -1)
return 1;
if (lseek(fd, 0, SEEK_SET) == -1) {
char *buf = malloc(512);
buf = strerror(errno);
printf("%s\n", buf);
return 1;
}
always returns with "illegal seek"... (2 Replies)
Discussion started by: Sir_Tomasz
2 Replies
LEARN ABOUT XFREE86
restart_syscall
RESTART_SYSCALL(2) Linux Programmer's Manual RESTART_SYSCALL(2)
NAME
restart_syscall - restart a system call after interruption by a stop signal
SYNOPSIS
int restart_syscall(void);
Note: There is no glibc wrapper for this system call; see NOTES.
DESCRIPTION
The restart_syscall() system call is used to restart certain system calls after a process that was stopped by a signal (e.g., SIGSTOP or
SIGTSTP) is later resumed after receiving a SIGCONT signal. This system call is designed only for internal use by the kernel.
restart_syscall() is used for restarting only those system calls that, when restarted, should adjust their time-related parameters--namely
poll(2) (since Linux 2.6.24), nanosleep(2) (since Linux 2.6), clock_nanosleep(2) (since Linux 2.6), and futex(2), when employed with the
FUTEX_WAIT (since Linux 2.6.22) and FUTEX_WAIT_BITSET (since Linux 2.6.31) operations. restart_syscall() restarts the interrupted system
call with a time argument that is suitably adjusted to account for the time that has already elapsed (including the time where the process
was stopped by a signal). Without the restart_syscall() mechanism, restarting these system calls would not correctly deduct the already
elapsed time when the process continued execution.
RETURN VALUE
The return value of restart_syscall() is the return value of whatever system call is being restarted.
ERRORS
errno is set as per the errors for whatever system call is being restarted by restart_syscall().
VERSIONS
The restart_syscall() system call is present since Linux 2.6.
CONFORMING TO
This system call is Linux-specific.
NOTES
There is no glibc wrapper for this system call, because it is intended for use only by the kernel and should never be called by applica-
tions.
The kernel uses restart_syscall() to ensure that when a system call is restarted after a process has been stopped by a signal and then
resumed by SIGCONT, then the time that the process spent in the stopped state is counted against the timeout interval specified in the
original system call. In the case of system calls that take a timeout argument and automatically restart after a stop signal plus SIGCONT,
but which do not have the restart_syscall() mechanism built in, then, after the process resumes execution, the time that the process spent
in the stop state is not counted against the timeout value. Notable examples of system calls that suffer this problem are ppoll(2),
select(2), and pselect(2).
From user space, the operation of restart_syscall() is largely invisible: to the process that made the system call that is restarted, it
appears as though that system call executed and returned in the usual fashion.
SEE ALSO
sigaction(2), sigreturn(2), signal(7)
COLOPHON
This page is part of release 4.15 of the Linux man-pages project. A description of the project, information about reporting bugs, and the
latest version of this page, can be found at https://www.kernel.org/doc/man-pages/.
Linux 2017-09-15 RESTART_SYSCALL(2)