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 xử trí system_điện thoại tư vấn. Tất nhiên bên trên một hệ quản lý và điều hành không giống, vấn đề đó có thể Tức là một cái gì đó trọn vẹn không giống.

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


YudaPrawira: chúng ta nên nghĩ về cho các hướng dẫn trước đó như cấu hình thiết lập args trong thanh hao ghi cùng int 0x80như một vẻ bên ngoài đặc biệt của callmột hàm trong hạt nhân (được lựa chọn bởi vì eax).

inttức thị ngắt, cùng number 0x80là số ngắt. Một ngắt đưa luồng công tác cho bất kỳ ai đang xử lý ngắt kia, ngắt 0x80trong trường phù hợp này. Trong Linux, 0x80trình cách xử lý ngắt là phân tử nhân và được áp dụng để triển khai những cuộc Call hệ thống tới hạt nhân vày những lịch trình khác.

Kernel được thông báo về lệnh Hotline khối hệ thống cơ mà chương trình mong muốn tiến hành, bằng cách kiểm tra quý giá trong thanh khô ghi %eax(cú pháp AT&T cùng EAX vào cú pháp Intel). Mỗi lệnh Gọi khối hệ thống gồm các hưởng thụ khác nhau về vấn đề áp dụng những tkhô hanh ghi khác. Ví dụ: giá trị 1in %eaxcó nghĩa là một lệnh Điện thoại tư vấn hệ thống exit()cùng quý giá trong %ebxgiữ quý giá của mã tâm lý mang đến exit().


— Polat Tuzla mối cung cấp
47

Hãy ghi nhớ là 0x80=80h =128

Quý khách hàng hoàn toàn có thể thấy tại chỗ này mà lại INTchỉ là 1 trong trong không hề ít gợi ý (thực thụ là đại diện hội Ngôn ngữ (giỏi tôi buộc phải nói "ghi nhớ") của nó) cơ mà vĩnh cửu trong tập lệnh x86. quý khách hàng cũng hoàn toàn có thể search thêm công bố về phía dẫn này trong sách hướng dẫn riêng của Intel trên đây .

Tóm tắt trường đoản cú PDF:

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

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

Như chúng ta có thể thấy 0x80tân oán hạng đích trong thắc mắc của bạn. Tại thời đặc điểm này, CPU biết rằng nó sẽ thực hiện một số trong những mã phía trong Kernel, nhưng mã nào? Điều đó được xác minh vì chưng Vectơ ngắt vào Linux.

Xem thêm: Vân Vận Đấu Phá Thương Khung Ý Tưởng, Đấu Phá Thương Khung

Một trong những ngắt phần mềm DOS hữu dụng duy nhất là ngắt 0x21. Bằng cách Hotline nó cùng với những tyêu thích số không giống nhau vào tkhô giòn ghi (đa số là ah cùng al), chúng ta có thể truy cập những vận động IO không giống nhau, cổng đầu ra chuỗi với chưa dừng lại ở đó nữa.

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

Vui lòng xem vấn đề đó, vị trí những 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ư bạn cũng có thể thấy bảng chỉ CPU nhằm tiến hành lệnh điện thoại tư vấn khối hệ thống. quý khách có thể tìm kiếm thấy bảng Cuộc Điện thoại tư vấn Hệ thống Linux trên đây .

Vì vậy, bằng cách dịch rời cực hiếm 0x1 vào thanh hao ghi EAX với Điện thoại tư vấn INT 0x80 vào lịch trình của chúng ta, chúng ta có thể tạo nên quá trình xúc tiến mã trong Kernel vẫn dừng (thoát) quá trình đang chạy bây giờ (trên Linux, CPU Hãng sản xuất Intel x86).

Không được nhầm lẫn ngắt Hartware với ngắt phần mềm. Đây là một câu vấn đáp cực tốt về sự việc này.

Xem thêm: Cách Mặc Đồ Ngũ Hành Các Môn Phái Vltk 1 Mobile, Game Võ Lâm Thiên Tuyệt Mobile

Đây cũng là một trong mối cung cấp giỏi.


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