Khái niệm cơ bản về máy tính - Hệ thống S / W
Như bạn đã biết, phần mềm hệ thống hoạt động như một giao diện cho hệ thống phần cứng bên dưới. Ở đây chúng ta sẽ thảo luận chi tiết về một số phần mềm hệ thống quan trọng.
Hệ điều hành
Operating system (OS)là huyết mạch của máy tính. Bạn kết nối tất cả các thiết bị cơ bản như CPU, màn hình, bàn phím và chuột; cắm nguồn điện và bật nó lên vì nghĩ rằng bạn đã có mọi thứ. Nhưng máy tính sẽ không khởi động hoặc không hoạt động trừ khi nó được cài đặt hệ điều hành trong đó vì OS -
- Giữ tất cả các bộ phận phần cứng ở trạng thái sẵn sàng làm theo hướng dẫn của người dùng
- Phối hợp giữa các thiết bị khác nhau
- Lên lịch nhiều tác vụ theo mức độ ưu tiên
- Phân bổ tài nguyên cho từng nhiệm vụ
- Cho phép máy tính truy cập mạng
- Cho phép người dùng truy cập và sử dụng phần mềm ứng dụng
Ngoài khởi động ban đầu, đây là một số chức năng của hệ điều hành -
- Quản lý tài nguyên máy tính như phần cứng, phần mềm, tài nguyên dùng chung, v.v.
- Phân bổ nguồn lực
- Ngăn ngừa lỗi trong quá trình sử dụng phần mềm
- Kiểm soát việc sử dụng máy tính không đúng cách
Một trong những hệ điều hành sớm nhất là MS-DOS,được phát triển bởi Microsoft cho IBM PC. Nó là mộtCommand Line Interface (CLI)Hệ điều hành đã cách mạng hóa thị trường PC. DOS rất khó sử dụng vì giao diện của nó. Người dùng cần nhớ các hướng dẫn để thực hiện nhiệm vụ của họ. Để làm cho máy tính dễ tiếp cận và thân thiện hơn với người dùng, Microsoft đã phát triểnGraphical User Interface (GUI) dựa trên hệ điều hành được gọi là Windows, điều này đã làm thay đổi cách mọi người sử dụng máy tính.
Người lắp ráp
Assembler là một phần mềm hệ thống chuyển đổi các chương trình cấp độ lắp ráp sang mã cấp độ máy.
Đây là những lợi thế được cung cấp bởi lập trình cấp lắp ráp -
- Tăng hiệu quả của lập trình viên vì ghi nhớ dễ dàng hơn
- Năng suất tăng khi số lỗi giảm và do đó thời gian gỡ lỗi
- Lập trình viên có quyền truy cập vào tài nguyên phần cứng và do đó có thể linh hoạt trong việc viết các chương trình được tùy chỉnh cho máy tính cụ thể
Thông dịch viên
Ưu điểm chính của ngôn ngữ cấp hợp ngữ là khả năng tối ưu hóa việc sử dụng bộ nhớ và sử dụng phần cứng. Tuy nhiên, với tiến bộ công nghệ, máy tính có nhiều bộ nhớ hơn và các thành phần phần cứng tốt hơn. Vì vậy việc dễ viết chương trình trở nên quan trọng hơn việc tối ưu hóa bộ nhớ và các tài nguyên phần cứng khác.
Ngoài ra, người ta thấy cần phải loại bỏ lập trình của một số ít các nhà khoa học và lập trình máy tính được đào tạo, để máy tính có thể được sử dụng trong nhiều lĩnh vực hơn. Điều này dẫn đến việc phát triển các ngôn ngữ cấp cao dễ hiểu do sự tương đồng của các lệnh với ngôn ngữ tiếng Anh.
Phần mềm hệ thống được sử dụng để dịch mã nguồn của ngôn ngữ cấp cao thành từng dòng mã đối tượng ngôn ngữ cấp máy được gọi là interpreter. Một trình thông dịch lấy từng dòng mã và chuyển nó thành mã máy và lưu trữ vào tệp đối tượng.
Các advantagecủa việc sử dụng trình thông dịch là chúng rất dễ viết và chúng không yêu cầu dung lượng bộ nhớ lớn. Tuy nhiên, có một nhược điểm lớn trong việc sử dụng trình thông dịch, tức là các chương trình được thông dịch mất nhiều thời gian để thực thi. Để khắc phục điều nàydisadvantage, đặc biệt đối với các chương trình lớn, compilers được phát triển.
Trình biên dịch
Phần mềm hệ thống lưu trữ chương trình hoàn chỉnh, quét nó, dịch chương trình hoàn chỉnh thành mã đối tượng và sau đó tạo mã thực thi được gọi là trình biên dịch. Về mặt của nó, trình biên dịch so sánh bất lợi với trình thông dịch vì họ -
- phức tạp hơn thông dịch viên
- cần thêm dung lượng bộ nhớ
- mất nhiều thời gian hơn trong việc biên dịch mã nguồn
Tuy nhiên, các chương trình đã biên dịch thực thi rất nhanh trên máy tính. Hình ảnh sau đây cho thấy quy trình từng bước về cách một mã nguồn được chuyển đổi thành một mã thực thi:
Đây là các bước biên dịch mã nguồn thành mã thực thi -
Pre-processing - Trong giai đoạn này, các lệnh của bộ xử lý trước, thường được sử dụng bởi các ngôn ngữ như C và C ++ được thông dịch, tức là được chuyển đổi sang ngôn ngữ cấp hợp ngữ.
Lexical analysis - Ở đây tất cả các hướng dẫn được chuyển đổi thành lexical units như hằng số, biến, ký hiệu số học, v.v.
Parsing - Tại đây, tất cả các hướng dẫn được kiểm tra để xem chúng có tuân theo grammar rulescủa ngôn ngữ. Nếu có lỗi, trình biên dịch sẽ yêu cầu bạn sửa chúng trước khi bạn có thể tiếp tục.
Compiling - Ở giai đoạn này, mã nguồn được chuyển thành object code.
Linking- Nếu có bất kỳ liên kết nào đến các tệp hoặc thư viện bên ngoài, địa chỉ của tệp thực thi của chúng sẽ được thêm vào chương trình. Ngoài ra, nếu mã cần được sắp xếp lại để thực thi thực tế, chúng sẽ được sắp xếp lại. Đầu ra cuối cùng làexecutable code đã sẵn sàng để được thực thi.