Computer >> Hướng Dẫn Máy Tính >  >> Hệ Thống >> Linux

Tìm hiểu hệ điều hành:Phần mềm cốt lõi hỗ trợ máy tính của bạn

Bởi

  • Mary E. Shacklett, Dữ liệu xuyên thế giới
  • Stephen J. Bigelow, Biên tập viên công nghệ cao cấp

Đã xuất bản:ngày 31 tháng 10 năm 2024

Hệ điều hành (OS) là chương trình, sau khi được chương trình khởi động tải vào máy tính lần đầu, sẽ quản lý tất cả các chương trình ứng dụng khác trong máy tính. Các chương trình ứng dụng sử dụng HĐH bằng cách yêu cầu các dịch vụ thông qua giao diện chương trình ứng dụng (API) được xác định. Ngoài ra, người dùng có thể tương tác trực tiếp với hệ điều hành thông qua giao diện người dùng (UI), chẳng hạn như giao diện dòng lệnh (CLI) hoặc giao diện đồ họa người dùng (GUI).

Hệ điều hành mang lại những lợi ích to lớn cho việc phát triển phần mềm máy tính và phần mềm. Nếu không có hệ điều hành, là phần mềm hệ thống được thiết kế đặc biệt để chạy máy tính, mọi ứng dụng sẽ cần có giao diện người dùng riêng cũng như mã toàn diện cần thiết để xử lý tất cả chức năng cấp thấp của phần mềm hệ thống của máy tính cơ bản, chẳng hạn như bộ lưu trữ đĩa và giao diện mạng. Xem xét đến vô số phần cứng cơ bản sẵn có và số lượng quy trình phần mềm phải chạy ở cấp độ phần mềm hệ thống để hỗ trợ các chức năng của máy tính, điều này sẽ làm tăng kích thước của mọi ứng dụng và khiến việc phát triển phần mềm trở nên không thực tế.

Thay vào đó, HĐH xử lý nhiều tác vụ phần mềm cấp hệ thống, bao gồm gửi gói mạng hoặc hiển thị văn bản trên thiết bị đầu ra tiêu chuẩn, chẳng hạn như màn hình. Phần mềm hệ thống đóng vai trò trung gian giữa các ứng dụng và các chức năng phần cứng và máy tính cơ bản. Hệ điều hành cung cấp một cách nhất quán và có thể lặp lại để các ứng dụng tương tác với phần cứng và các chức năng cấp hệ thống khác mà không cần ứng dụng biết bất kỳ chi tiết nào về chúng.

Nếu mỗi ứng dụng truy cập vào cùng các tài nguyên và dịch vụ theo cùng một cách, thì hệ điều hành - và phần mềm hệ thống cơ bản mà nó tham gia - có thể phục vụ hầu hết mọi số lượng ứng dụng. Điều này giúp giảm đáng kể lượng thời gian và mã hóa cần thiết để phát triển và gỡ lỗi ứng dụng, đồng thời đảm bảo rằng người dùng có thể kiểm soát, định cấu hình và quản lý phần mềm cũng như phần cứng hệ thống thông qua giao diện hệ điều hành phổ biến và được hiểu rõ.

Hệ điều hành hoạt động như thế nào?

Sau khi được cài đặt, hệ điều hành sẽ dựa vào một thư viện lớn các trình điều khiển thiết bị để điều chỉnh các dịch vụ của nó cho phù hợp với môi trường phần cứng cụ thể. Ví dụ:mọi ứng dụng đều có thể thực hiện cuộc gọi chung đến thiết bị lưu trữ. Hệ điều hành nhận cuộc gọi đó và sử dụng trình điều khiển tương ứng để chuyển cuộc gọi thành hành động hoặc lệnh cần thiết cho phần cứng cơ bản trên máy tính cụ thể đó. Hệ điều hành cung cấp một nền tảng toàn diện giúp xác định, định cấu hình và quản lý những mục sau:

  • Nhiều loại phần cứng, bao gồm cả bộ xử lý.
  • Thiết bị bộ nhớ và quản lý bộ nhớ máy tính.
  • Chipset.
  • Lưu trữ.
  • Kết nối mạng.
  • Các giao diện cổng giao tiếp, chẳng hạn như Mảng đồ họa video, Giao diện đa phương tiện độ nét cao và Bus nối tiếp đa năng (USB).
  • Giao diện hệ thống con, chẳng hạn như Express Component Interconnect Express.

Chức năng của hệ điều hành là gì?

Tất cả các nền tảng máy tính chính -- cả phần cứng và phần mềm -- thường yêu cầu và bao gồm một hệ điều hành phải được phát triển với các tính năng khác nhau để đáp ứng nhu cầu cụ thể của nhiều kiểu dáng thiết bị khác nhau.

Từ quan điểm của người dùng cuối, hệ điều hành cung cấp ba khả năng thiết yếu sau:

  1. Cung cấp giao diện người dùng thông qua CLI hoặc GUI.
  2. Khởi chạy ứng dụng và quản lý việc thực thi ứng dụng.
  3. Xác định và xác định việc phân bổ tài nguyên phần cứng hệ thống như máy in và ổ đĩa dự phòng cho các ứng dụng đó, thường thông qua API được tiêu chuẩn hóa.

Giao diện người dùng

Người dùng có thể tương tác với máy tính để thực hiện công việc thông qua GUI, là màn hình trực quan trỏ và nhấp có chứa các biểu tượng kích hoạt chức năng hệ thống và khởi chạy ứng dụng, CLI, bao gồm một dòng lệnh duy nhất để nhập dữ liệu hoặc cả hai.

Tìm hiểu hệ điều hành:Phần mềm cốt lõi hỗ trợ máy tính của bạn Kiến trúc của một hệ điều hành.

Quản lý ứng dụng

Hệ điều hành xử lý việc khởi chạy và quản lý mọi ứng dụng, hỗ trợ các chức năng sau:

  • Chia sẻ thời gian nhiều quy trình hoặc luồng để các tác vụ khác nhau có thể chia sẻ tài nguyên của bộ xử lý có sẵn.
  • Quản lý sự gián đoạn mà ứng dụng tạo ra để thu hút sự chú ý ngay lập tức của bộ xử lý, đảm bảo có đủ bộ nhớ để thực thi ứng dụng và dữ liệu tương ứng mà không can thiệp vào các quy trình khác.
  • Tiến hành xử lý lỗi có thể xóa quy trình của ứng dụng.
  • Thực hiện quản lý bộ nhớ mà không làm gián đoạn các ứng dụng hoặc hệ điều hành khác.

Cung cấp và thực thi phần cứng

Hệ điều hành cũng có thể hỗ trợ các API cho phép ứng dụng sử dụng các chức năng của hệ điều hành và phần cứng mà không cần biết gì về trạng thái phần cứng hoặc hệ điều hành cấp thấp. Ví dụ:API Windows có thể cho phép chương trình lấy đầu vào từ bàn phím hoặc chuột; tạo các phần tử GUI, chẳng hạn như các cửa sổ và nút hộp thoại; và đọc và ghi tập tin vào thiết bị lưu trữ. Các ứng dụng hầu như luôn được điều chỉnh để sử dụng hệ điều hành mà ứng dụng dự định chạy.

Lên lịch và ưu tiên quy trình

Trong hệ điều hành đa nhiệm, nơi nhiều chương trình có thể chạy cùng lúc, hệ điều hành sẽ xác định thứ tự ứng dụng sẽ chạy và thời gian cho phép cho mỗi ứng dụng trước khi chuyển ứng dụng khác. Ví dụ:HĐH có thể xác định xem liệu một tác vụ hàng loạt, chẳng hạn như tác vụ in lớn, có thể được lên lịch để chạy sau khi tài nguyên trống hay không.

Xử lý song song

Trên các máy tính có thể cung cấp khả năng xử lý song song, hệ điều hành quản lý cách phân chia chương trình để chương trình chạy trên nhiều bộ xử lý cùng một lúc.

Quản lý tệp

Theo yêu cầu của người dùng, bộ quy tắc CNTT hoặc cài đặt mặc định, hệ điều hành sẽ quản lý việc tạo, truy cập, sửa đổi và xóa các tệp và thư mục.

Kết nối mạng

Minh bạch đối với người dùng, HĐH tự động kết nối máy trạm với các tài nguyên trên toàn mạng bằng cách giải mã các giao thức mạng và kết nối với mạng. Điều này cho phép một người dùng truy cập vào máy in và máy chủ mạng được lưu trữ trên mạng.

Bảo mật

Sử dụng các chính sách do bộ phận CNTT xác định và ủy quyền, HĐH thực thi các biện pháp kiểm soát truy cập bảo mật và mã hóa cho người dùng, ứng dụng và dữ liệu.

Giám sát hiệu suất và phát hiện lỗi

Hệ điều hành liên tục giám sát hiệu suất máy tính và tạo nhật ký hệ thống hỗ trợ tinh chỉnh để có hiệu suất tối ưu và giải quyết các vấn đề liên quan đến việc sử dụng tài nguyên, làm chậm và tắc nghẽn hiệu suất cũng như giải quyết lỗi.

Sao lưu và phục hồi

Dữ liệu có thể được sao lưu định kỳ suốt cả ngày, hàng đêm, hàng tuần hoặc ở bất kỳ tần suất nào được xác định. Hệ điều hành có thể tự động thực hiện các bản sao lưu này mà không cần sự trợ giúp của người dùng hoặc CNTT. Nếu xảy ra sự cố mất dữ liệu hoặc lỗi hệ thống, dữ liệu có thể dễ dàng được khôi phục từ bản sao lưu mới nhất.

Ảo hóa

Hầu hết các hệ điều hành cho phép người dùng xác định nhiều hệ điều hành chạy độc lập với nhau bằng cách sử dụng các phân vùng do phần mềm tạo ra để tách từng hệ điều hành khỏi các hệ điều hành khác trên một máy trạm vật lý. Điều này cho phép người dùng chạy đồng thời nhiều ứng dụng, mỗi ứng dụng có hệ điều hành chuyên dụng riêng trên một máy trạm để tối ưu hóa hiệu suất.

Quản lý thiết bị

Hệ điều hành xác định, định cấu hình và cung cấp cho các ứng dụng quyền truy cập chung vào các thiết bị đầu vào/đầu ra cơ bản như máy in, bàn phím và các thiết bị phần cứng máy tính khác. Khi HĐH nhận dạng và xác định phần cứng, nó sẽ cài đặt các trình điều khiển và giao diện thiết bị tương ứng để cho phép HĐH và các ứng dụng chạy trên HĐH sử dụng thiết bị.

Hệ điều hành xác định đúng máy in và cài đặt trình điều khiển máy in thích hợp để ứng dụng chỉ cần thực hiện cuộc gọi đến máy in mà không cần phải sử dụng mã hoặc lệnh dành riêng cho máy in đó. Quá trình này tương tự đối với các thiết bị khác, bao gồm:

  • Cổng USB.
  • Cổng mạng.
  • Thiết bị đồ họa, chẳng hạn như bộ xử lý đồ họa.
  • Chipset bo mạch chủ.
  • Các thiết bị lưu trữ, chẳng hạn như bộ điều hợp đĩa SCSI gắn nối tiếp và các ổ đĩa được định dạng bằng hệ thống tệp phù hợp.

HĐH xác định và định cấu hình các thiết bị vật lý và logic cho dịch vụ và thường ghi lại chúng theo cấu trúc được tiêu chuẩn hóa, chẳng hạn như Windows Register. Các nhà sản xuất thiết bị vá và cập nhật trình điều khiển định kỳ và hệ điều hành nên cập nhật chúng để đảm bảo hiệu suất và bảo mật thiết bị tối ưu. Khi thiết bị được thay thế, hệ điều hành cũng cài đặt và định cấu hình trình điều khiển mới.

Các loại hệ điều hành và ví dụ

Mặc dù vai trò cơ bản của hệ điều hành là phổ biến nhưng vẫn có vô số hệ điều hành phục vụ nhiều loại phần cứng và nhu cầu của người dùng, bao gồm:

Hệ điều hành đa năng

Một hệ điều hành đa năng có thể chạy vô số ứng dụng trên nhiều lựa chọn phần cứng, cho phép người dùng chạy một hoặc nhiều ứng dụng hoặc tác vụ cùng một lúc. Một hệ điều hành đa năng có thể được cài đặt trên nhiều mẫu máy tính để bàn và máy tính xách tay khác nhau và chạy các ứng dụng từ hệ thống kế toán, cơ sở dữ liệu, trình duyệt web đến trò chơi. Các hệ điều hành đa năng thường tập trung vào quản lý quy trình hoặc luồng và phần cứng để đảm bảo rằng các ứng dụng có thể chia sẻ một cách đáng tin cậy nhiều loại phần cứng máy tính hiện có.

Các hệ điều hành máy tính để bàn phổ biến bao gồm:

  • Windows, hệ điều hành hàng đầu của Microsoft, là tiêu chuẩn thực tế cho máy tính gia đình và doanh nghiệp. Được giới thiệu vào năm 1985, hệ điều hành dựa trên GUI của Microsoft Windows đã được phát hành với nhiều phiên bản kể từ đó. Windows 95 thân thiện với người dùng góp phần lớn vào sự phát triển nhanh chóng của máy tính cá nhân.
  • Mac OS là hệ điều hành dành cho dòng PC và máy trạm của Apple.
  • Unix là hệ điều hành nhiều người dùng được thiết kế để mang lại sự linh hoạt và khả năng thích ứng. Được phát triển lần đầu vào những năm 1970, Unix là một trong những hệ điều hành đầu tiên được viết bằng ngôn ngữ C.
  • Linux là một hệ điều hành giống Unix của cộng đồng nguồn mở được thiết kế để cung cấp cho người dùng PC một giải pháp thay thế hệ điều hành miễn phí hoặc chi phí thấp. Linux nổi tiếng là hệ điều hành hiệu quả và hoạt động nhanh.

Hệ điều hành di động

Hệ điều hành máy tính di động được thiết kế cho các thiết bị tập trung vào điện toán di động và truyền thông, chẳng hạn như điện thoại thông minh và máy tính bảng. Các thiết bị di động thường cung cấp tài nguyên máy tính hạn chế so với PC truyền thống và hệ điều hành phải được thu nhỏ lại về kích thước và độ phức tạp để giảm thiểu việc sử dụng tài nguyên của chính nó, đồng thời đảm bảo đủ tài nguyên cho một hoặc nhiều ứng dụng chạy trên thiết bị. Hệ điều hành di động có xu hướng nhấn mạnh vào hiệu suất hiệu quả, khả năng phản hồi của người dùng và sự chú ý chặt chẽ đến các tác vụ xử lý dữ liệu, chẳng hạn như hỗ trợ truyền phát phương tiện. Apple iOS và Android là những ví dụ về hệ điều hành di động.

Hệ điều hành nhúng

Không phải tất cả các thiết bị máy tính đều có mục đích chung. Một lượng lớn các thiết bị chuyên dụng - bao gồm trợ lý kỹ thuật số tại nhà, máy rút tiền tự động, hệ thống máy bay, thiết bị đầu cuối tại điểm bán lẻ và thiết bị Internet of Things - sử dụng các hệ điều hành được tùy chỉnh và "thu gọn" hơn. Sự khác biệt chính giữa các hệ điều hành nhúng và các hệ điều hành đa năng là các thiết bị có hệ điều hành nhúng được nhúng chỉ thực hiện một chức năng chính, do đó hệ điều hành này được đơn giản hóa rất nhiều và dành riêng cho cả hiệu suất và khả năng phục hồi. Hệ điều hành nhúng phải chạy nhanh, không bị lỗi và xử lý mọi lỗi một cách khéo léo để tiếp tục hoạt động trong mọi trường hợp. Trong hầu hết các trường hợp, hệ điều hành được cung cấp trên một con chip được tích hợp vào thiết bị thực tế. Ví dụ, một thiết bị y tế được sử dụng trong thiết bị hỗ trợ sự sống của bệnh nhân sử dụng một hệ điều hành nhúng phải chạy đáng tin cậy để giữ cho bệnh nhân sống sót. Linux nhúng là một ví dụ về hệ điều hành nhúng.

Hệ điều hành mạng

Hệ điều hành mạng (NOS) là một hệ điều hành chuyên dụng khác nhằm hỗ trợ liên lạc giữa các thiết bị hoạt động trên mạng cục bộ. NOS cung cấp ngăn xếp giao tiếp cần thiết để hiểu các giao thức mạng nhằm tạo, trao đổi và phân tách các gói mạng. Ngày nay, khái niệm về NOS chuyên biệt phần lớn đã lỗi thời vì các hệ điều hành khác xử lý giao tiếp mạng. Ví dụ:Windows 10 và Windows Server 2019 bao gồm khả năng kết nối mạng toàn diện. Khái niệm NOS vẫn được sử dụng cho một số thiết bị mạng, chẳng hạn như bộ định tuyến, bộ chuyển mạch và tường lửa, đồng thời các nhà sản xuất sử dụng NOS độc quyền, bao gồm Hệ điều hành Internetwork của Cisco và NOS RouterOS nguồn mở của MikroTik.

Hệ điều hành thời gian thực

Khi một thiết bị máy tính phải tương tác với thế giới thực trong giới hạn thời gian liên tục và có thể lặp lại, nhà sản xuất thiết bị có thể chọn sử dụng hệ điều hành thời gian thực (RTOS). Ví dụ, một hệ thống điều khiển công nghiệp có thể điều khiển hoạt động của một nhà máy hoặc nhà máy điện rộng lớn. Cơ sở như vậy tạo ra tín hiệu từ vô số cảm biến và gửi tín hiệu để vận hành van, bộ truyền động, động cơ và vô số thiết bị khác. Trong những tình huống này, hệ thống điều khiển công nghiệp phải phản ứng nhanh chóng và có thể dự đoán được trước những thay đổi của điều kiện thực tế -- nếu không, thảm họa có thể xảy ra. RTOS phải hoạt động mà không có bộ đệm, độ trễ xử lý và các độ trễ khác, những điều này hoàn toàn có thể chấp nhận được trong các loại hệ điều hành khác. Ví dụ về RTOS bao gồm FreeRTOS và Wind River VxWorks.

Sự khác biệt giữa các loại hệ điều hành không phải là tuyệt đối và một số hệ điều hành có thể có chung đặc điểm của các hệ điều hành khác. Ví dụ:các hệ điều hành đa năng thường bao gồm các khả năng kết nối mạng có trong NOS truyền thống. Tương tự, hệ điều hành nhúng thường bao gồm các thuộc tính của RTOS, trong khi hệ điều hành di động thường có thể chạy nhiều ứng dụng cùng lúc như các hệ điều hành đa năng khác.

Hệ điều hành phân tán

Một hệ điều hành phân tán được cài đặt trên mạng có thể cung cấp dịch vụ cho nhiều máy trạm, đặc biệt là các máy tính mỏng có ít hoặc không có ứng dụng hoặc dữ liệu thường trú trên đó. Nhiều người dùng truy cập và chia sẻ các ứng dụng cũng như tài nguyên được lưu trữ trên các máy chủ mạng phân tán, lớn hơn này và hệ điều hành trên các máy chủ này quản lý các yêu cầu truy cập và mức tiêu thụ tài nguyên từ nhiều máy trạm của người dùng. Ví dụ về các hệ điều hành phân tán là Microsoft Windows Server và các bản phân phối Linux nguồn mở khác nhau dành cho máy chủ.

Hệ điều hành cụm

Hệ điều hành cụm là hệ điều hành được thiết kế để chạy một cụm máy tính hoạt động cùng nhau trên một hệ thống. Xử lý trí tuệ nhân tạo là một ví dụ điển hình của điện toán cụm, vì nó yêu cầu xử lý dữ liệu song song, nhanh chóng, đồng thời. Các hệ thống điện toán hiệu suất cao trong đó hàng nghìn giao dịch phải được xử lý đồng thời và trong thời gian thực -- chẳng hạn như hệ thống môi giới -- là một trường hợp sử dụng khác của điện toán cụm. Rocks Cluster Distribution và Open MPI nguồn mở là hai ví dụ về hệ điều hành điện toán cụm.

Continue Reading Giới thiệu Hệ điều hành (OS) là gì?

  • Lời khuyên dành cho các trung tâm dữ liệu muốn thay đổi hệ điều hành
  • Cuối cùng thì Windows 11 đã sẵn sàng cất cánh chưa?
  • Kỹ năng của máy tính lớn bị khủng hoảng; góc nhìn của người ngoài cuộc và người trong cuộc
  • Cách lập kế hoạch cho dự án nâng cấp Windows 11
  • Khi nào Windows 10 hết hạn sử dụng? Cách mở rộng hỗ trợ