0x00 là gì

Nó thừa qua tinh chỉnh nhằm ngắt vectơ 0x80

Xem http://en.wikipedia.org/wiki/Interrupt_vector

Trên Linux, hãy coi điều này : nó được áp dụng nhằm cách xử lý system_call. Tất nhiên bên trên một hệ điều hành quản lý khác, vấn đề đó rất có thể có nghĩa là một chiếc gì đó hoàn toàn không giống.

Bạn đang xem: 0x00 là gì


YudaPrawira: chúng ta nên nghĩ về cho các khuyên bảo trước đó như tùy chỉnh cấu hình args trong thanh hao ghi với int 0x80nhỏng một dạng hình quan trọng của callmột hàm trong hạt nhân (được chọn vị eax).

intnghĩa là ngắt, với number 0x80là số ngắt. Một ngắt đưa luồng lịch trình mang đến ngẫu nhiên bạn đang cách xử lý ngắt đó, ngắt 0x80trong ngôi trường thích hợp này. Trong Linux, 0x80trình cách xử trí ngắt là hạt nhân cùng được sử dụng nhằm triển khai các cuộc Hotline khối hệ thống cho tới hạt nhân vày các công tác khác.

Kernel được thông báo về lệnh hotline khối hệ thống nhưng mà công tác ao ước tiến hành, bằng cách chất vấn quý hiếm trong thanh hao ghi %eax(cú pháp AT&T với EAX vào cú pháp Intel). Mỗi lệnh Điện thoại tư vấn hệ thống có những thử dùng khác nhau về việc áp dụng những thanh khô ghi không giống. Ví dụ: quý giá 1in %eaxCó nghĩa là một lệnh Gọi khối hệ thống exit()cùng cực hiếm trong %ebxduy trì giá trị của mã tâm lý đến exit().


— Polat Tuzla nguồn
47

Hãy ghi đừng quên 0x80=80h =128

Bạn rất có thể thấy ở chỗ này mà lại INTchỉ là 1 trong không hề ít lí giải (thực sự là thay mặt đại diện hội Ngôn ngữ (tốt tôi yêu cầu nói "ghi nhớ") của nó) mà lại sống thọ trong tập lệnh x86. quý khách cũng có thể tra cứu thêm ban bố về phía dẫn này vào sách lí giải riêng rẽ của Hãng sản xuất Intel tại phía trên .

Tóm tắt từ PDF:

INT n / INTO / INT 3 — Thủ tục điện thoại tư vấn mang lại ngắt

Lệnh INT n tạo thành một cuộc call tới trình xử trí ngắt hoặc nước ngoài lệ được chỉ định với toán hạng đích. Toán thù hạng đích chỉ định một vectơ trường đoản cú 0 cho 255, được mã hóa bên dưới dạng quý hiếm trung gian 8 bit ko vệt. Lệnh INT n là cách ghi lưu giữ phổ biến để tiến hành lệnh Gọi vị ứng dụng tạo ra tới trình cách xử lý ngắt.

Nhỏng chúng ta có thể thấy 0x80tân oán hạng đích trong thắc mắc của công ty. Tại thời đặc điểm đó, CPU biết rằng nó đã triển khai một vài mã phía bên trong Kernel, nhưng lại mã nào? Điều đó được xác định vị Vectơ ngắt vào Linux.

Xem thêm: Thông Tin Y Học Nước Ngoài, 10 Đột Phá Khoa Học Thế Giới Năm 2020

giữa những ngắt ứng dụng DOS có ích duy nhất là ngắt 0x21. Bằng bí quyết call nó với những tđê mê số khác biệt trong tkhô nóng ghi (đa phần là ah với al), chúng ta có thể truy vấn các hoạt động IO không giống nhau, cổng đầu ra chuỗi cùng chưa dừng lại ở đó nữa.

Hầu hết những hệ thống Unix với các dẫn xuất ko áp dụng ngắt ứng dụng, xung quanh ngắt 0x80, được sử dụng nhằm triển khai các cuộc gọi hệ thống. Như vậy được thực hiện bằng phương pháp nhập giá trị 32-bit tương ứng với 1 công dụng phân tử nhân vào thanh ghi EAX của bộ xử lý cùng kế tiếp thực hiện INT 0x80.

Vui lòng coi vấn đề này, chỗ các cực hiếm có sẵn không giống vào bảng trình xử trí ngắt được hiển thị:

*

Như chúng ta có thể thấy bảng chỉ CPU nhằm thực hiện lệnh hotline hệ thống. quý khách hoàn toàn có thể search thấy bảng Cuộc điện thoại tư vấn Hệ thống Linux tại đây .

Vì vậy, bằng phương pháp dịch chuyển cực hiếm 0x1 vào thanh ghi EAX cùng Call INT 0x80 vào công tác của bạn, bạn cũng có thể tạo cho quá trình thực hiện mã vào Kernel sẽ ngừng (thoát) quá trình đang chạy bây giờ (trên Linux, CPU Intel x86).

Không được lầm lẫn ngắt Hartware với ngắt ứng dụng. Đây là 1 câu trả lời rất tốt về sự việc này.

Xem thêm: Cách Trang Trí Phòng Khách Nhà Ống, Đẹp Phong Cách Hiện Đại

Đây cũng là một trong nguồn giỏi.


Hầu không còn những khối hệ thống Unix và những dẫn xuất ko áp dụng ngắt ứng dụng (xung quanh int 0x80) dường như như là một trong những cách nói kỳ cục. Các int 0x80i386 hệ thống Linux Call ABI là cực kì giống như với DOS int 0x21ABI. Đặt một số trong những cuộc Call vào một trong những tkhô cứng ghi (AH mang lại DOS, EAX mang lại Linux) cùng những args khác trong các tkhô nóng ghi không giống, kế tiếp chạy một lệnh ngắt ứng dụng. Sự khác hoàn toàn chính là sống đông đảo gì cơ mà các lệnh gọi hệ thống chất nhận được các bạn triển khai (truy cập thẳng vào phần cứng trong DOS chứ không phải Linux) chứ không phải ngơi nghỉ cách bạn call chúng.
— Peter Cordes

Chuyên mục: Blogs