Lately I’ve really needed SysRq in situations where /proc/sysrq-trigger just doesn’t do the job, and my MacBook is missing lots of crusty old XT-era keys. Finally, I know how to do this!
/* includes and error handling omitted for brevity... */ #define USAGE_CODE 0x070044 /* USB hid for F11 */ int main() { int codes[2]; int fd = open("/dev/input/by-id/usb-Apple_Computer_Apple_" "Internal_Keyboard_._Trackpad-event-kbd", O_NONBLOCK); codes[0] = USAGE_CODE; codes[1] = KEY_SYSRQ; /* from linux/input.h */ ioctl(fd, EVIOCSKEYCODE, codes); }
Awesome. Supposedly, a tool called keyfuzz is also efficacious.