CÁC BÀI THỰC HÀNH LINUX - Trang 28

- 27-

8.1.3. Giao

tiếp giữa các tiến trình

Việc giao tiếp giữa các tiến trình được thực hiện thông qua các tín hiệu chuẫn

của hệ thống. Tín hiệu là một sự ngắt quãng logic được gửi đến các tiến trình bởi hệ
thống để thông báo cho chúng về những sự việc không bình thường trong môi trường
hoạt động của chúng (như lỗi bộ nhớ, lỗi vào ra). Nó cũng cho phép các tiến trình liên
lạc với nhau. Một tín hiệu (trừ SIGKILL) có thể được xem xét theo ba cách khác nhau:

1. Tiến trình có thể được bỏ qua: Ví dụ chương trình có thể bỏ qua sự ngắt

quãng của người sử dụng hệ thống (đó là sự bỏ qua khi một tiến trình đang
được sử dụng ở phần nền.

2. Tiến trình có thể được thực hiện: Trong trường hợp này, khi nhận được 1 tina

stiệu, việc thực hiện 1 tiến trình được chuyển về một quy trình do người sử
dụng xác định trước, sau đó trở lại nơi nó bị ngắt.

3. Lỗi có thể được tiến trình trả về sau khi nhận được tín hiệu này.

Dưới đây là một số tín hiệu thường gặp:

SIGHUP

Tín hiệu này được phát đến các tiến trình vào lúc cuối khi mà nó tự ngắt.
Nó cũng được phát đến mọi tiến trình có tiến trình chính tự ngắt.

SIGINT

Tín hiệu này được phát đến các tiến trình khi ta ra lệnh ngắt.

SIGQUIT

Tương tự như trên khi ta gõ vào ^D.

SIGILL

Lệnh không hợp lệ, tín hiệu được phát ra khi phát hiện 1 lệnh không đúng
ở cấp độ vật lý (ví dụ như 1 tiến trình thực hiện một lệnh mà máy tính
chông có lệnh này).

SIGTRAP

Tín hiệu được phát ra sau mỗi lệnh trong trường hợp tiến trình có sử dụng
lệnh ptrace().

SIGIOT

Bẫy được phát khi có các vấn đề về vật lý.

SIGEMT

Bẫy của lệnh phát, được phát ra khi có lỗi vật lý trong khi thực hiện.

SIGFPE

Được phát ra khi có lỗi về tính toán như một số có dấu phẩy nối có định
dạng không hợp lý. Gần như luôn chỉ ra lỗi khi lập trình.

SIGKILL

Trang bị để kết thúc tiến trình. Không thể bỏ qua hoặc cắt tín hiệu này.

SIGBUS

Được phát khi gặp lỗi trên bus.

SYSGEGV

Được phát ra khi gặp lỗi trên phân đoạn sự truy cập dữ liệu bên ngoài phân
đoạn dữ liệu được cấp phát cho tiến trình.

Liên Kết Chia Sẽ

** Đây là liên kết chia sẻ bới cộng đồng người dùng, chúng tôi không chịu trách nhiệm gì về nội dung của các thông tin này. Nếu có liên kết nào không phù hợp xin hãy báo cho admin.