相信有不少技术人员都了解 Ctrl+Alt+Del 这个热键,它作为 Windows 操作系统的安全功能而备受推崇。然而 Microsoft 的资深员工 Raymond Chen 在 2004 年的一篇博客中指出,Ctrl+Alt 应该避免用作快捷键修饰符,这其实是一个历史悠久的问题。
在早期的 IBM PC 中,键盘控制器是由晶体管构成的,每个键都对应着一个特定的电路,而 Ctrl、Alt 和 Shift 都可以看做是唯一的键。同时,键盘控制器还存在一个问题:当任何一个键被按下时,就会阻塞其他所有键。当同时按下 Ctrl+Alt 时,电路上会出现一个中断请求,这个请求由键盘控制器直接发送到 CPU,无论 CPU 正在做什么都要停下来处理这个请求。这个功能极易被恶意程序攻击,同时也容易发生用户误操作。
在 Windows 3.1 时代,微软采用了一种叫做“hot key(热键)”的方法来应对这个问题,这种方法在用户按下后不会直接影响电路并且只会对当前应用程序生效,但是也会比较占用资源。
在 Chen 的博文中,他进一步指出了 Ctrl+Alt 组合键对于某些软件而言是不可用的,这是因为在部分模拟器和远程桌面时,Ctrl+Alt 会被用作“调用运行命令”,如果对其进行了快捷键设置,会造成误操作。
虽然现在大部分应用程序都已经避免使用 Ctrl+Alt 组合键来进行快捷键设置,但是防止误操作、提高用户体验的理念仍然应该得到持续的推广。从个人来看,建议在设置快捷键时,尽量避免使用 Ctrl+Alt 组合键,为用户的愉快体验和使用安全保驾护航。
了解更多有趣的事情:https://blog.ds3783.com/