Tổng quan hệ điều hành UNIX
0 Hệ điều hành Unix UNIX là một hệ điều hành phổ biến, trước đây chúng được sử dụng trong các minicomputer và các workstation trong các công sở nghiên cứu ...
Hệ điều hành Unix
UNIX là một hệ điều hành phổ biến, trước đây chúng được sử dụng trong các minicomputer và các workstation trong các công sở nghiên cứu khoa học. Ngày nay UNIX đã trở thành hệ điều hành được dùng cho cả máy tính cá nhân và phục vụ công việc kinh doanh nhờ khả năng mở của nó.
UNIX giống như các hệ điều hành khác nó là lớp nằm giữa phần cứng và ứng dụng. Nó có chức năng quản lý phần cứng và quản lý các ứng dụng thực thi. Điều khác nhau cơ bản giữa UNIX và bất kỳ hệ điều hành khác là sự thực thi bên trong và giao diện.
Hệ điều hành UNIX thực sự là một hệ điều hành. Nó bao gồm các thành phần trước đây (Phần cơ bản vốn có của hệ điều hành Unix) và các thành phần mới bổ sung, nó là lớp nằm giữa phần cứng và các ứng dụng.

Kernel
Phần quản lý phần cứng và các ứng dụng thực thi gọi là kernel. Trong quản lý các thiết bị phần cứng UNIX xem mỗi thiết bị này như một file (được gọi là device file). Điều này cho phép việc truy nhập các thiết bị giống như việc đọc và ghi trên file. Việc quản lý quyền truy nhập trên các thiết bị thông qua hệ thống kiểm soát bảo mật quyền hạn. Các process đang thực thi được UNIX phân chi tài nguyên bao gồm CPU và các truy nhập tới phần cứng.
Khi khởi động máy tính thì một chương trình unix được nạp vào trong bộ nhớ chính, và nó hoạt động cho đến khi shutdown hoặc khi tắt máy. Chương trình này được gọi là kernel, thực hiện chức năng mức thấp và chức năng mức hệ thống. Kernel chịu trách nhiệm thông dịch và gửi các chỉ thị tới bộ vi xử lý máy tính. Kernel cũng chịu trách nhiệm về các tiến trình và cung cấp các đầu vào và ra cho các tiến trình. Kernel là trái tim của hệ điều hành UNIX.
Khi kernel được nạp vào trong bộ nhớ lúc đó nó đã sẵn sàng nhận các yêu cầu từ người sử dụng. Đầu tiên người sử dụng phải login và đưa ra yêu cầu. Việc login là để kernel biết ai đã vào hệ thống và cách truyền thông với chúng. Để làm điều này kernel gọi chạy hai chương trình đặc biệt là getty và login. Đầu tiên kernel gọi chạy getty. Getty hiển thị dấu nhắc và yêu cầu người sử dụng nhập vào.
Khi nhận được thông tin đầu vào getty gọi chương trình login. Chương trình login thiết lập định danh cho user và xác định quyền của user login. Chương trình login kiểm tra mật khẩu trong file mật khẩu. Nếu mật khẩu không đúng cổng vào sẽ không được thiết lập và bị trả lại điều khiển cho getty. Nếu user nhập đúng mật khẩu chương trình login gửi điều khiển tới chương trình mà có tên nằm trong password file. Thông thường chương trình này là shell.
Shell
Việc thao tác trực tiếp tới kernel là rất phức tạp và đòi hỏi kỹ thuật cao Để tránh sự phức tạp cho người sử dụng và để bảo vệ kernel từ những sai sót của người sử dụng shell đã được xây dựng thành lớp bao quanh kernel. Người sử dụng gửi yêu cầu tới shell, shell biên dịch chúng và sau đó gửi tới kernel.
Chức năng của shell
Thường với UNIX có ba loại shell được dùng phổ biến. Cả ba đều nhằm một mục đích cung cấp các chức năng sau:
- Thông dịch lệnh
- Khởi tạo chương trình
- Định hướng vào ra
- Kết nối đường ống
- Thao tác trên file
- Duy trì các biến
- Điều khiển môi trường
- Lập trình shell
Hiện nay trên hệ điều hành Unix người ta đang sử dụng chủ yếu ba loại shell sau: Bourne shell, Korn shell, C shell. Bảng sau so sánh giữa 3 loại shell (Theo tài liệu UNIX UNLEASHED - Sams Development Team - SAMS Publishibng)
1 tốt nhất, 2 trung bình, 3 yếu.
Shell | Learning | Editing | Shortcuts | Portability | Experience |
Bourne | 1 | 3 | 3 | 1 | 3 |
C | 2 | 2 | 1 | 3 | 2 |
Korn | 3 | 1 | 2 | 2 | 1 |
Gồm các tiện tích, các ứng dụng giao tiếp với người sử dụng.
Các đặc điểm cơ bản
Hệ điều hành UNIX có một số đặc điểm sau:
- Đa chương
- Nhiều người sử dụng
- Bảo mật
- Độc lập phần cứng
- Hệ mở
- Dùng chung thiết bị
- Tổ chức tập tin phân cấp
Network Goals | UNIX | NetWare | Windows NT |
Interoperability | Excellent | Good | Fair |
Transparency | Good | Good | Fair |
Security | Good | Good | Good |
Efficiency | Excellent | Good | Fair |
Reliability | Excellent | Good | Good |
Accessibility | Good | Excellent | Fair |
Cost | Depends | Fair | Fair |
Scalability | Excellent | Good | Fair |
Third-party utilities available | Excellent | Good | Fair |
Directory services | Excellent | Good | Fair |
Flexibility | Excellent | Good | Fair |
Performance | Excellent | Good | Fair |
Print support | Good | Good | Fair |
Years of experience | >25 | >10 | <10 |