Fork (lời gọi hệ thống)


Trong khoa học máy tính, đặc biệt là trong bối cảnh của hệ điều hành Unixtương tự Unix, fork là một hoạt động mà một tiến trình tạo ra một bản sao của chính nó. Nó thường là một lời gọi hệ thống, được thực hiện trong kernel. fork là phương thức chính (và là duy nhất trong lịch sử) để tạo tiến trình trên các hệ điều hành tương tự Unix.

Tổng quan

[sửa | sửa mã nguồn]

Trong các hệ điều hành đa nhiệm, các tiến trình (chương trình đang chạy) cần một cách để tạo các tiến trình mới, ví dụ, để chạy các chương trình khác. fork và các biến thể của nó thường là cách duy nhất để làm việc này trong các hệ thống tương tự Unix. Để một tiến trình bắt đầu thực thi một chương trình khác, trước tiên, nó tạo ra một bản sao của chính nó. Sau đó, bản sao này (được gọi là "tiến trình con") gọi lời gọi hệ thống exec để ghi đè chính nó bằng chương trình khác: nó ngừng thực thi chương trình cũ của nó để chạy chương trình kia.

fork tạo ra một không gian địa chỉ riêng cho tiến trình con. Tiến trình con có một bản sao của tất cả các phân đoạn bộ nhớ của tiến trình cha. Trong các biến thể UNIX hiện đại tuân theo mô hình bộ nhớ ảo của SunOS-4.0, sao chép khi ghi (copy-on-write) được thực hiện và bộ nhớ vật lý không cần phải được sao chép thực sự. Thay vào đó, các trang bộ nhớ ảo trong cả hai tiến trình có thể tham chiếu đến cùng một trang của bộ nhớ vật lý cho đến khi một trong số chúng ghi vào một trang như vậy, nó sẽ được sao chép.

Khi một tiến trình gọi fork, nó được coi là tiến trình cha, và tiến trình mới được tạo là con của nó. Sau khi fork, cả hai tiến trình không chỉ chạy cùng một chương trình, mà chúng tiếp tục thực thi giống như cả hai đã gọi lời gọi hệ thống. Sau đó, chúng có thể kiểm tra giá trị trả về của lời gọi để xác định trạng thái của chúng (là tiến trình con hoặc tiến trình cha) và hành động một cách tương ứng.

Tham khảo

[sửa | sửa mã nguồn]
Chúng tôi bán
Bài viết liên quan
Xilonen – Lối chơi, hướng build và đội hình
Xilonen – Lối chơi, hướng build và đội hình
Là một support với nhiều tiềm năng và liên tục được buff, Xilonen đã thu hút nhiều chú ý từ những ngày đầu beta
Takamine: Samurai huyền thoại và hai món vũ khí lôi thần ban tặng
Takamine: Samurai huyền thoại và hai món vũ khí lôi thần ban tặng
Cánh cổng Arataki, Kế thừa Iwakura, mãng xà Kitain, Vết cắt sương mù Takamine
Nhân vật Kugisaki Nobara - Jujutsu Kaisen
Nhân vật Kugisaki Nobara - Jujutsu Kaisen
Kugisaki Nobara (釘くぎ崎さき野の薔ば薇ら Kugisaki Nobara?, Đanh Kì Dã Tường Vi) là nhân vật chính thứ ba (từ gốc: tritagonist) của bộ truyện Jujutsu Kaisen
Con người rốt cuộc phải trải qua những gì mới có thể đạt đến sự giác ngộ?
Con người rốt cuộc phải trải qua những gì mới có thể đạt đến sự giác ngộ?
Mọi ý kiến và đánh giá của người khác đều chỉ là tạm thời, chỉ có trải nghiệm và thành tựu của chính mình mới đi theo suốt đời