Gần đây tôi đã bắt đầu lặn vào chương trình hệ điều hành cấp thấp. Tôi (rất chậm) hiện đang làm việc thông qua hai cuốn sách cũ hơn, XINU và Xây dựng hệ điều hành 32 bit riêng của bạn, cũng như một số tài nguyên được đề xuất bởi những người SO tốt trong câu hỏi trước của tôi, How to get started in operating system development. Nó có thể chỉ là tôi đã không gặp nó trong bất kỳ tài nguyên nào được nêu ra, nhưng nó có lẽ vì hầu hết các tài nguyên này được viết trước khi các hệ thống đa lõi phổ biến, nhưng những gì tôi tự hỏi là làm thế nào ngắt làm việc trong một đa lõi/hệ thống đa xử lý.Làm thế nào để ngắt trong máy đa lõi/đa CPU hoạt động?
Ví dụ: giả sử DMA muốn báo hiệu rằng thao tác đọc tệp hoàn tất. Bộ xử lý/lõi nào thừa nhận rằng ngắt được báo hiệu? Có phải bộ xử lý/lõi đã bắt đầu đọc tệp không? Có bất kỳ bộ vi xử lý/lõi nào nhận được nó đầu tiên?
Tôi không biết câu trả lời cho câu hỏi của bạn, nhưng tôi muốn khuyên bạn nên tham gia một cái nhìn tại các Intel® 64 and IA-32 Architectures Software Developer's Manual, khối lượng 3, chương 5. Nó lớn và chi tiết, chứa nhiều hơn bao giờ bạn muốn biết về kiến trúc x86. –
@GiovanniGalbo +1 để đề cập đến dự án XINU. – smwikipedia