10-19-2010
Question on interrupts and user space app
Can a user space application be asynchronously affected of its normal execution course by an interrupt?
How does the driver know which user space process to interrupt?
What are the functions in user space and kernel drivers that achieve this?
9 More Discussions You Might Find Interesting
1. Filesystems, Disks and Memory
I'm a freshman here and I have a simple question.
Does unix use interrupts which is like Dos? Are they the same?
Thx.:cool: (6 Replies)
Discussion started by: Frank_M
6 Replies
2. UNIX for Dummies Questions & Answers
hey i have been facing a problem,can you tell me if we can catch ctrl d in unix i have tried and sucessfully catched and disabled ctrl-c and ctrl -z but am not sure if we can do the same for CTRL-D, so got any clue mail on he forum or ...i mean c programming in Unix thats what i am working on (1 Reply)
Discussion started by: toughguy2handle
1 Replies
3. UNIX for Dummies Questions & Answers
Well, I don't know where exactly to ask this doubt so I'm asking in the newbie section. I was reading about traps and interrupts when I thought of traps as something that cease the control of the OS from the user and interrupts that cease the control yet provide support for multitasking. Am I right... (3 Replies)
Discussion started by: Legend986
3 Replies
4. UNIX for Advanced & Expert Users
Hello, I'm searching for a proper way to let the kernel space ISR(implemented in a kernel module) wake up a user space thread on a hardware interrupt.
Except for sending a real-time signal, is it possible to use a semaphore?
I've searched it on google, but it seems impossible to share a... (0 Replies)
Discussion started by: aaronwong
0 Replies
5. Programming
Hi,
I'm working on an AMD opteron running Linux 2.6.28.6
I want to preload a module specific register (MSR) with a value to have it overflow after a number of a specific event counts. As I understand, when the counter in the register overflows, an interrupt will be generated and handled by the... (2 Replies)
Discussion started by: mylinuxforums
2 Replies
6. Programming
What is the simplest function I can use to signal an interrupt from kernel module to user space. I knw the usr app pid in my module.
Also can someone explain the parameters in kill_fasync and send_sig (0 Replies)
Discussion started by: dragonpoint
0 Replies
7. UNIX for Dummies Questions & Answers
hi guys
I was presented a LUN from a storage 85GB.
fdisk -l shows 85GB space cool
but after I formatted the partition using fdisk and mkfs.ext3 I only get 75GB space available
why is that? why too many GB lost?
thanks a lot (1 Reply)
Discussion started by: karlochacon
1 Replies
8. UNIX for Beginners Questions & Answers
Recently, I setup a dual boot on this PC. I can currently jump from Ubuntu 12.04 and 16.04. What I would like to be able to do is access the home directory of my 16.04 OS from within the 12.04, is that possible? I can mount the partition of the hard drive where 16.04 lives from within 12.04 but it... (4 Replies)
Discussion started by: Circuits
4 Replies
9. Programming
With a little bit of work, was able to build a nice "Wuhan Coronavirus Status" app using MQTT and the IoT-OnOff app. More on this technique here:
ESP32 (ESP-WROOM-32) as an MQTT Client Subscribed to Linux Server Load Average Messages
The result turned out nice, I think. I like the look and... (10 Replies)
Discussion started by: Neo
10 Replies
getrbuf(9F) Kernel Functions for Drivers getrbuf(9F)
NAME
getrbuf - get a raw buffer header
SYNOPSIS
#include <sys/buf.h>
#include <sys/kmem.h>
#include <sys/ddi.h>
struct buf *getrbuf(int sleepflag);
INTERFACE LEVEL
Architecture independent level 1 (DDI/DKI).
PARAMETERS
sleepflag Indicates whether driver should sleep for free space.
DESCRIPTION
getrbuf() allocates the space for a buffer header to the caller. It is used in cases where a block driver is performing raw (character
interface) I/O and needs to set up a buffer header that is not associated with the buffer cache.
getrbuf() calls kmem_alloc(9F) to perform the memory allocation.
kmem_alloc()requires the information included in the sleepflag argument. If sleepflag is set to KM_SLEEP, the driver may sleep until
the space is freed up. If sleepflag is set to KM_NOSLEEP, the driver will not sleep. In either case, a pointer to the allocated space
is returned or NULL to indicate that no space was available.
RETURN VALUES
getrbuf() returns a pointer to the allocated buffer header, or NULL if no space is available.
CONTEXT
getrbuf() can be called from user or interrupt context. (Drivers must not allow getrbuf() to sleep if called from an interrupt routine.)
SEE ALSO
bioinit(9F), freerbuf(9F), kmem_alloc(9F), kmem_free(9F)
Writing Device Drivers
SunOS 5.10 20 Nov 1996 getrbuf(9F)