Hệ điều hành Windows và Linux_Unix PDF
Document Details
Uploaded by DynamicBegonia7951
PTIT HN
2022
Tags
Summary
Bài báo này giới thiệu về lịch sử phát triển của hệ điều hành Windows và Linux_Unix, tập trung vào các tính năng đặc trưng, kiến trúc khái quát và các khái niệm cơ bản của môi trường Windows. Nó trình bày quá trình phát triển của Windows từ phiên bản đầu tiên cho đến các phiên bản mới nhất như Windows 10.
Full Transcript
CHƯƠNG 1. GIỚI THIỆU CÁC HỌ HỆ ĐIỀU HÀNH MICROSOFT WINDOWS Chương này giới thiệu quá trình phát triển của hệ điều hành Microsoft Windows và tập trung vào các tính năng đặc trưng, nổi bật của hệ điều hành này. Ngoài ra, chương này trình bày kiến trúc khái quát của hệ điều h...
CHƯƠNG 1. GIỚI THIỆU CÁC HỌ HỆ ĐIỀU HÀNH MICROSOFT WINDOWS Chương này giới thiệu quá trình phát triển của hệ điều hành Microsoft Windows và tập trung vào các tính năng đặc trưng, nổi bật của hệ điều hành này. Ngoài ra, chương này trình bày kiến trúc khái quát của hệ điều hành và các khái niệm căn bản của môi trường Windows. 1.1 Lịch sử phát triển Hệ điều hành Windows ban đầu không sử dụng giao diện đồ họa như hiện nay mà có nguồn gốc từ hệ thống dựa trên ký tự và giao diện đồ họa đơn giản. Phiên bản đầu tiên của hệ điều hành Microsoft là MS-DOS (Disk Operating System – Hệ thống điều khiển đĩa) ra đời vào năm 1981. Tại thời điểm đó, chức năng chủ yếu của hệ điều hành là nạp các chương trình và quản lý các ổ đĩa. MS-DOS không tích hợp giao diện người dùng đồ họa (GUI*) và hoạt động qua các câu lệnh như trong Hình 1-1. Hệ điều hành này đã rất phổ biến từ năm 1981 đến 1999. Hình 1-1. Giao diện dòng lệnh của MS-DOS. Cấu hình máy tính tiêu biểu cho hệ điều hành này là bộ xử lý tốc độ cỡ khoảng 10- 40Mhz, bộ nhớ chính 1MB, màn hình độ phân giải 640x480 điểm ảnh, ổ đĩa mềm dung lượng 1,44MB, và ổ cứng dung lượng cỡ 100MB. Tuy có nhiều công ty cung cấp giao diện đồ họa như Apple, Xerox, hay IBM song Windows đã thành công hơn tất cả sản phẩm của công ty khác thể hiện qua số lượng các bản được bán ra ngoài thị trường. Việc phổ biến này không có nghĩa là Windows ưu việt hơn các sản phẩm khác mà đơn giản là mọi người sẽ hay bắt gặp sản phẩm này hơn. * GUI - Graphic User Interface: Giao diện người dùng đồ họa 12 Phiên bản khiến cho Windows trở nên phổ biến là Windows 3.1 xuất hiện vào giữa những năm 1990 và thiết lập nền móng cho các các phiên bản Windows khác đến tận ngày nay. Hệ thống Windows 3.1 bao gồm các menu lựa chọn, các cửa sổ có thể thay đổi kích thước và hệ thống chạy chương trình gọi là quản lý chương trình – Program Manager. Chương trình đặc biệt này cho phép nhóm các chương trình lại và dùng biểu tượng đại diện cho chương trình. Rất nhiều các khái niệm của Windows 3.1 đã được sử dụng cho đến các hệ điều hành ngày nay. Windows 3.1 và hệ thống tương tự vẫn dựa trên DOS để hoạt động. Cùng thời điểm với Windows 3.1, Microsoft tung ra hệ điều hành khác gọi là Windows NT với nghĩa là hệ thống Windows công nghệ mới. Windows NT được thiết kế lại và là hệ điều hành mạng, chạy trên nền 32 bit song sử dụng GUI như Windows 3.1. Hệ điều hành mới mạnh hơn và sử dụng các nhân và phần nạp khởi động riêng chứ không dựa trên DOS. Windows NT hướng tới môi trường làm việc cộng tác và tính toán hiệu năng cao. Các hệ thống Windows sau này vẫn dựa trên kiến trúc của Windows NT. Hình 1-2. Giao diện menu và đồ họa Windows 3.1 Vào năm đầu của thế kỷ 21, Microsoft đưa ra Windows 2000 hướng tới môi trường máy chủ và máy trạm nhằm thay thế cho sản phẩm Windows NT trước đó. Một trong những tính năng quan trọng đó là thư mục động (Active Directory) dựa trên các chuẩn công nghiệp về tên miền, giao thức truy nhập thư mục và xác thực để kết nối và chia sẻ dữ liệu giữa các máy tính với nhau. Dịch vụ đầu cuối (Terminal Service) cho phép kết nối từ xa được tích hợp và mở rộng cho tất cả các phiên bản dùng cho máy chủ. Vào năm 2001, Microsoft kết hợp các dòng sản phẩm Windows NT/2000 (dành cho đối tượng công ty và doanh nghiệp) và Windows 95/98/Me (người quản trị thông thường) tạo nên Windows XP. Kể từ phiên bản này các sản phẩm của Microsoft cần phải qua thủ tục kích hoạt để được sử dụng hợp lệ. Đây có lẽ là một trong những phiên bản Windows tốt nhất và là hệ thống chạy lâu nhất (gần 13 năm tính từ lúc ra đời) cho dù ban đầu hệ thống có nhiều vấn đề về tính an toàn và hiệu năng. Windows Vista và Windows 13 7 được Microsoft đưa ra nhằm thay thế cho bản Windows XP song không được người dùng chấp nhận rộng rãi như bản Windows XP. Windows 8 và đặc biệt là Windows 10 thể hiện sự thay đổi mạnh mẽ về việc sử dụng các thiết bị tính toán cá nhân mà máy tính PC là một đại diện. Mục tiêu của hệ điều hành mới là hợp nhất các nền tảng Windows cho các thiết bị di động như điện thoại, máy tính bảng. Như vậy, các ứng dụng có thể được tải về và chạy trên tất cả các thiết bị Windows. Với sản phẩm dành cho môi trường chuyên nghiệp, Windows Server 2003 đưa ra các khái niệm về chức năng máy chủ như Web, file, ứng dụng hay cơ sở dữ liệu và công cụ hỗ trợ cài đặt các chức năng một cách thuận tiện. Phiên bản nâng cấp Server 2003 R2 hỗ trợ tính toán 64 bit và các công cụ quản lý tập trung, các chức năng ảo hóa. Các phiên sau gồm có Server 2008, 2012 tăng cường khả năng kết nối mạng, các hệ thống file phân tán, các tính năng bảo mật, ảo hóa và hướng tới tính toán đám mây (cloud computing). 1.2 Kiến trúc của hệ điều hành Kiến trúc của hệ điều hành Windows hiện thời dựa trên kiến trúc Windows NT. Về cơ bản, kiến trúc này (như trong hình dưới đây) được chia thành hai lớp tương ứng với hai chế độ hoạt động: chế độ nhân và chế độ người dùng. Chế độ nhân dành cho nhân của hệ điều hành và các chương trình mức thấp khác hoạt động. Chế độ người dùng dành cho các ứng dụng như Word, Excel và các hệ thống con hoạt động. Hình 1-3. Kiến trúc cơ bản của hệ điều hành Windows Về kỹ thuật, các thao tác ở chế độ nhân được thực thi ở cấp độ thấp nhất hay chế độ đặc quyền. Các thao tác ở chế độ người dùng được thực thi ở cấp độ cao nhất hay chế độ không đặc quyền. Nói cách khác, các chế độ này hạn chế các tài nguyên máy tính mà chương trình được phép sử dụng. 14 Các khối chức năng cơ bản của chế độ người quản trị như sau: Chương trình hỗ trợ hệ thống (System Support Processes): chứa các chương trình thực hiện các chức năng hệ thống như đăng nhập, quản lý phiên làm việc. Các chương trình dịch vụ (Service Processes): cung cấp dịch vụ của hệ điều hành như quản lý máy in, tác vụ. Chúng cũng có thể là các dịch vụ như cơ sở dữ liệu hay cung cấp chức năng cho chương trình khác. Ứng dụng người dùng (User Applications): Các chương trình thực hiện theo yêu cầu của người quản trị. Hệ thống con (Environment Sussystems) và hệ thống liên kết động (Subsystem DLL) kết hợp với nhau cho phép các kiểu ứng dụng khác nhau hoạt động được như môi trường Win32, Win64 hay DOS 32. Trong đó, hệ thống liên kết động chuyển các hàm ứng dụng thành các hàm dịch vụ hệ thống trực tiếp. Các chức năng cơ bản của chế độ nhân gồm có: Thực thi (Executive) thực hiện việc quản lý các tiến trình và luồng, quản lý bộ nhớ, vào/ra … Nhân (Kernel) chịu trách nhiệm điều độ luồng, đồng bộ giữa các tiến trình, xử lý ngắt. Các trình điều khiển thiết bị (Device Drivers) làm nhiệm vụ giao tiếp giữa quản lý vào/ra của phần thực thi và phần cứng cụ thể. Các trình điều khiển này cũng có thể liên lạc với hệ thống file, mạng hay giao thức khác. Lớp phần cứng trừu tượng (Hardware Abstraction Layer - HAL) giấu đi các chi tiết phần cứng giúp cho hệ điều hành có thể hoạt động trên nhiều phần cứng khác nhau với giao tiếp không đổi. Các chức năng cửa sổ và đồ họa (Windowing and Graphics Functions) cung cấp giao diện đồ họa cho người dùng như vẽ các cửa sổ các đối tượng đồ họa. Kiến trúc của Windows rất giống với các hệ điều hành khác như Linux hay Mac OS X. Điểm khác biệt căn bản là việc xử lý đồ họa. Windows nhúng chức năng này vào phần nhân để nhằm tăng hiệu năng đồ họa. Linux thì loại bỏ chức năng này ra khỏi phần nhân để tăng độ tin cậy. 1.3 Giao diện của Windows Hệ điều hành Windows có ba cách giao tiếp chính giúp làm việc với các ứng dụng và thực hiện các công việc quản trị. Hầu hết người dùng thông thường sử dụng GUI song người quản trị lại được lợi hơn từ giao diện dòng lệnh và Windows PowerShell. Giao diện đồ họa GUI Giao diện người dùng đồ họa trong Windows bao gồm các cửa sổ, nút bấm, hộp văn bản và các phần tử định hướng khác. Phần tử quan trọng trong GUI đó chính là menu 15 khởi động (Start) và thanh tác vụ (Taskbar) như trong hình dưới đây. Menu khởi động cho phép người quản trị truy nhập vào tất cả các chức năng của hệ điều hành cũng như các chương trình người quản trị. Thanh tác vụ cho phép truy nhập nhanh đến các ứng dụng và cho biết tình trạng của các chương trình người quản trị. Phần quan trọng khác, đó là màn hình làm việc (desktop). Đây là nơi chứa các biểu tượng các chương trình người dùng hay hệ thống hoặc các chương trình tiện ích như tra cứu thông tin thời tiết, chứng khoán... Khi các chương trình người dùng chạy, chúng sử dụng không gian này để hiện thị thông tin cho người dùng. Hình 1-4. Giao diện GUI Windows Giao diện dòng lệnh Giao diện này là giao diện xưa nhất của Microsoft đó chính là dòng lệnh DOS. Trong môi trường Windows, nó không còn thực sự là DOS dù có nhiều câu lệnh DOS vẫn còn dùng được và được kích hoạt thông qua chương trình cmd.exe. Thông qua giao diện này người dùng có thể thực thi các thao tác cấu hình cho hệ điều hành hay chạy các chương trình DOS cũ. Giao diện PowerShell Đây là giao diện dòng lệnh mới của Windows và là môi trường nên dùng cho các tác vụ quản trị. Thực tế, Microsoft hỗ trợ tập các lệnh trong môi trường PowerShell được gọi là cmdlet để thực hiện các tác vụ quản trị mong muốn. Một trong những tính năng quan trọng của PowerShell là khả năng lập trình đơn giản (scripting). Với các hàm lô-gíc và các biến, người quản trị có thể tự động hóa các tác vụ thuận tiện hơn rất nhiều so với giao diện DOS cũ. Hơn thế, PowerShell còn cho phép thực thi các lệnh từ xa nhờ hỗ trợ từ hệ điều hành. 16 1.4 Hệ thống file của Windows Hệ điều hành Windows sử dụng chủ yếu 2 hệ thống file: FAT* thừa hưởng từ DOS, và NTFS† được sử dụng rộng rãi. Hệ thống file FAT là một kiểu hệ thống file đơn giản nhất. Nó bao gồm một cung mô tả hệ thống file (cung khởi động-boot sector), bảng cấp phát các khối cấp phát và không gian lưu trữ file và thư mục. Các file được lưu vào thư mục và mỗi thư mục là một mảng gồm các bản ghi 32 byte dùng để mô tả các file hay thuộc tính mở rộng như tên file dài. Bản ghi file trỏ tới khối lưu trữ đầu tiên của file. Các khối lưu trữ tiếp theo được tìm bằng cách truy theo liên kết trong bảng cấp phát. Bảng cấp phát chứa mảng các mô tả khối cấp phát. Mỗi phần tử trong mảng này tương ứng với một phần tử cấp phát. Số thứ tự của phần tử mảng giúp tương ứng với vị trí của khối cấp phát trong không gian lưu trữ.Giá trị không của phần tử trong mảng cho biết khối cấp phát tương ứng chưa được sử dụng. Giá trị khác không cho biết vị trí của phân tử mảng cũng chính là khối lưu trữ kế tiếp. Trong hệ thống file FAT gồm có FAT12, FAT16 và FAT32 tương ứng với của số lượng tối đa các khối cấp phát là 212, 216 và 232. Đến nay hệ thống FAT chủ yếu dùng cho các thiết bị lưu trữ ngoài như thẻ nhớ hay USB. Hệ thống file NTFS được đưa ra cùng với Windows NT. Đến nay là hệ thống file chủ yếu của hệ điều hành Windows. Hệ thống file này mềm dẻo và hỗ trợ nhiều kiểu thuộc tính file bao gồm kiểm soát truy nhập, mã hóa, nén... Mỗi file trong hệ thống NTFS được lưu bằng một mô tả file trong bảng file chính (master file table) và nội dung của file. Bảng file chính chứa toàn bộ thông tin về file như kích cỡ, cấp phát, tên... Các khối cấp phát đầu tiên và cuối cùng của hệ thống file chứa các cài đặt của hệ thống file. Hệ thống file này sử dụng các giá trị 48 hay 64 bit để tham chiếu file nên hỗ trợ các thiết bị lưu trữ cỡ lớn. Bảng dưới đây cho thấy khả năng của từng hệ thống file. Bảng 1-1. Tương quan các hệ thống file Windows FAT16 FAT32 NTFS Tương thích DOS, Windows Windows 95 và mới Windows NT 4.0 và hơn mới hơn Kích cỡ 4GB 32GB 2TB hay lớn hơn Số file ~65000 ~4.000.000 ~4.000.000.000 Kích cỡ file tối đa 4GB 4GB 16TB * FAT- File Allocation Table: Bảng cấp phát file † New Technology File System: hệ thống file công nghệ mới. 17 1.5 Giới thiệu Windows Registry Danh mục đăng ký (Registry) là một cơ sở dữ liệu của Windows và là nơi lưu các thông tin quan trọng về phần cứng, các chương trình, các cài đặt, và các hồ sơ về tài khoản người dùng trong máy tính. Windows liên tục tham chiếu đến các thông tin trong danh mục này. Người dùng thông thường không nên tự ý sửa đổi các thông tin lưu trong danh mục đăng ký vì các chương trình và ứng dụng sẽ thực hiện toàn bộ các sửa đổi cần thiết một cách tự động. Mặt khác, các hư hỏng có thể làm cho Windows thậm chí là máy tính không thể hoạt động bình thường. Về cơ bản danh mục đăng ký là cơ sở dữ liệu phân cấp để lưu các cài đặt ở mức thấp cho Windows và các ứng dụng. Mỗi mục đăng ký bao gồm hai thành phần cơ bản khóa (key) và các giá trị. Các khóa đăng ký chứa các đối tượng. Các giá trị đăng ký là các đối tượng cụ thể. Các khóa có thể chứa các giá trị cụ thể hay các khóa khác nữa. Việc tham chiếu đến các khóa giống như đường dẫn trong Windows. Trong danh mục đăng ký được định nghĩa trước, các khóa gốc tiêu biểu gồm có: HKEY_CLASSES_ROOT: Lưu thông tin ứng dụng như tên file và đăng ký của các đối tượng COM. HKEY_CURRENT_USER: lưu thông tin về người quản trị đăng nhập hiện thời. HKEY_LOCAL_MACHINE: Lưu thông tin hệ thống. HKEY_USERS: Lưu thông tin về toàn bộ tài khoản trên máy. HKEY_CURRENT_CONFIG: Lưu thông tin về máy hiện thời. Các khóa trong danh mục đăng ký đều có thể bị hạn chế truy nhập thông qua danh sách kiểm soát truy nhập tương tự như việc kiểm soát truy nhập trong hệ thống file NTFS. Các giá trị của mục đăng ký là cặp tên/dữ liệu lưu bên trong các khóa như trong Hình 1-5. Các giá trị khóa có thể nhận một số kiểu dữ liệu tiêu biểu nhị phân, từ, hay chuỗi ký tự được mô tả tương ứng bằng các từ khóa REG_BINARY, REG_DWORD và REG_SZ. 18 Hình 1-5. Danh mục đăng ký trong Windows Để xem và thay đổi các giá trị trong danh mục đăng ký Windows cung cấp phần mềm RegEdit.exe có thể chạy từ dòng lệnh. Chương trình này cũng cung cấp các chức năng sao lưu và khôi phục các khóa trong cây Registry. Việc truy nhập các khóa cụ thể bị chi phối bởi quyền của người dùng trong Windows. 1.6 Câu hỏi ôn tập cuối chương 1. Trình bày đặc điểm các phiên bản chính của hệ điều hành Windows? 2. Trình bày kiến trúc của hệ điều hành Windows: khái niệm, chức năng của các thành phần? 3. Trình bày các loại giao diện của hệ điều hành Windows? 4. Trình bày đặc điểm các hệ thống file của hệ điều hành Windows? 5. Trình bày khái niệm và các thành phần của Windows Registry? 19