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
LEARN ABOUT CENTOS
ddi_intr_hilevel
ddi_intr_hilevel(9F) Kernel Functions for Drivers ddi_intr_hilevel(9F)
NAME
ddi_intr_hilevel - indicate interrupt handler type
SYNOPSIS
#include <sys/ddi.h>
#include <sys/sunddi.h>
int ddi_intr_hilevel(dev_info_t *dip, uint_t inumber);
INTERFACE LEVEL
Solaris DDI specific (Solaris DDI).
PARAMETERS
dip Pointer to dev_info structure.
inumber Interrupt number.
DESCRIPTION
ddi_intr_hilevel() returns non-zero if the specified interrupt is a "high level" interrupt.
High level interrupts must be handled without using system services that manipulate thread or process states, because these interrupts are
not blocked by the scheduler.
In addition, high level interrupt handlers must take care to do a minimum of work because they are not preemptable.
A typical high level interrupt handler would put data into a circular buffer and schedule a soft interrupt by calling ddi_trigger_soft-
intr(). The circular buffer could be protected by using a mutex that was properly initialized for the interrupt handler.
ddi_intr_hilevel() can be used before calling ddi_add_intr() to decide which type of interrupt handler should be used. Most device drivers
are designed with the knowledge that the devices they support will always generate low level interrupts, however some devices, for example
those using SBus or VME bus level 6 or 7 interrupts must use this test because on some machines those interrupts are high level (above the
scheduler level) and on other machines they are not.
RETURN VALUES
non-zero indicates a high-level interrupt.
CONTEXT
These functions can be called from user or interrupt context.
SEE ALSO
ddi_add_intr(9F), mutex(9F)
Writing Device Drivers
SunOS 5.10 7 Jan 1992 ddi_intr_hilevel(9F)