Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 63 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
63
Dung lượng
781 KB
Nội dung
Hệ điều hành Unix/Linux Bộ môn Mạng & Truyền thông 1 CHƯƠNG 3: SHELL - LẬP TRÌNH SHELL • Shell là gì ? • Một số đặc điểm của shell • Các Shell trong Unix • Quản lý tiến trình • Dấu nhắc lệnh • Các chuẩn vào ra • Chuyển tiếp • Ống nối • Bí danh cho lệnh • Cú pháp ngôn ngữ lập trình Shell • Lập trình C/C++ trên Unix/Linux Hệ điều hành Unix/Linux Bộ môn Mạng & Truyền thông 2 SHELL ? Hệ điều hành Unix/Linux Bộ môn Mạng & Truyền thông 3 SHELL LÀ GÌ ? • Shell là chương trình luôn được thực thi khi chúng ta đăng nhập hệ thống • Shell là chương trình nằm giữa chương trình người sử dụng và kernel • Shell cung cấp cho người dùng một tập lệnh để người dùng thao tác với hệ thống Hệ điều hành Unix/Linux Bộ môn Mạng & Truyền thông 4 MỘT SỐ ĐẶC ĐIỂM CỦA SHELL • Xử lý tương tác • Chạy nền • Chuyển hướng • Ống dẫn • Tập tin lệnh • Biến shell • Sử dụng lại các lệnh đã thực hiện • Cấu trúc lệnh như ngôn ngữ lập trình • Tự động hoàn tất tên file, hoặc lệnh • Bí danh cho lệnh Hệ điều hành Unix/Linux Bộ môn Mạng & Truyền thông 5 CÁC SHELL TRONG UNIX Hệ điều hành Unix/Linux Bộ môn Mạng & Truyền thông 6 CÁC SHELL TRONG UNIX • Unix shell bao gồm bộ biên dịch lệnh và ngôn ngữ lập trình • Có ba loại shell – Bourne shell của Steven Bourne đơn giản và hiệu quả. • Dấu nhắc lệnh: $, biên dịch sử dụng sh. – C shell của Bill Joy ở trường đại học Berkeley giống như Bourne shell nhưng bổ sung thêm các đặc điểm như bí danh, history vvv. • Dấu nhắc lệnh: %, nó có thể gọi bởi csh. – Korn shell của David F. Korn kết hợp Bourne shell và C shell nhưng bổ sung thêm các đặc điểm riêng. • Dấu nhắc lệnh: $, biên dịch sử dụng ksh. Hệ điều hành Unix/Linux Bộ môn Mạng & Truyền thông 7 QUẢN LÝ TIẾN TRÌNH • Một tiến trình là một chương trình được thực thi và cần được định danh bởi một số duy nhất là PID (Số tiến trình) • Một tiến trình bao gồm – Chương trình thực thi, dữ liệu và stack của nó – Chương trình và con trỏ stack, các thanh ghi – Tất cả những thông tin cần thiết khác cho chương trình chạy Hệ điều hành Unix/Linux Bộ môn Mạng & Truyền thông 8 QUẢN LÝ TIẾN TRÌNH (tiếp) Hệ điều hành Unix/Linux Bộ môn Mạng & Truyền thông 9 QUẢN LÝ TIẾN TRÌNH • Các lời gọi hệ thống – Sử dụng fork • Để tạo tiến trình – Sử dụng wait • Một tiến trình ở trạng thái chờ – Sử dụng exec • Thực thi một chương trình mới – Sử dụng exit • Kết thúc một chương trình – Sử dụng kill • Diệt một tiến trình Hệ điều hành Unix/Linux Bộ môn Mạng & Truyền thông 10 QUẢN LÝ TIẾN TRÌNH