Cấp khái niệm
Khi bạn bắt đầu một tiến trình từ shell của mình, thư mục làm việc hiện tại của tiến trình này giống như thư mục làm việc hiện tại của shell của bạn. Trong ngữ cảnh của trình bao, thư mục làm việc hiện tại là vị trí bạn hiện đang "tại."
Thư mục làm việc hiện tại của bất kỳ quá trình được sử dụng để giải thích các đường dẫn tương đối. Ví dụ, nếu thư mục làm việc hiện tại của shell của bạn đã /home/renevà bạn chạy ls ..từ vỏ, thư mục làm việc hiện hành của quá trình, /home/rene, sẽ được sử dụng để quyết tâm ..đến /home.
Bạn có thể xem các thư mục làm việc hiện tại của tất cả các quy trình đang chạy trên hệ thống của bạn lsof | grep '\scwd\s'(lưu ý rằng có lẽ bạn sẽ cần phải root để xem các quy trình của người dùng khác.) Điều này có thể cho bạn biết về cách các thư mục làm việc hiện tại liên quan đến các quy trình đang chạy trên hệ thống của bạn.
Cấp chương trình
Thư mục làm việc hiện tại của shell là thư mục bạn nhìn thấy và sửa đổi với shell được tích hợp sẵn pwdvà cdtương ứng. Các lệnh này gọi các cuộc gọi hệ thống như getcwdvà chdirhoạt động với thư mục làm việc hiện tại của shell của bạn.
Sử dụng bashlàm ví dụ, cdcuối cùng tích hợp chạy dòng này:
if (chdir (nolinks ? newdir : tdir) == 0)
và tích pwdhợp cuối cùng chạy dòng này:
the_current_working_directory = getcwd (0, PATH_MAX);
Shell chỉ là một ví dụ thuận tiện cho việc sử dụng thư mục làm việc hiện tại; các cuộc gọi hệ thống tương tự cũng được sử dụng bởi các chương trình khác. Một chương trình có thể thay đổi thư mục làm việc hiện tại của nó thành /usrvà bất kỳ đường dẫn tương đối nào mà chương trình sử dụng sẽ bắt đầu từ /usrthư mục,
Cấp hạt nhân
Thư mục làm việc hiện tại của một tiến trình được lưu trữ bởi kernel. Linux lưu trữ nó trong pwdthành viên của một fs_structtrỏ đến bởi fsthành viên của một task_struct. Thành pwdviên là một pathcấu trúc, trỏ đến thông tin về mount ( vfsmount) và vị trí của thư mục trong hệ thống tập tin ( dentry). Mỗi quá trình có một task_structliên kết với nó.
Các cuộc gọi chdirvà getcwdhệ thống sửa đổi và lấy thông tin trong pwd.