Video: HTG giải thích: CPU thực sự hoạt động như thế nào?
2024 Tác giả: Geoffrey Carr | [email protected]. Sửa đổi lần cuối: 2023-12-17 11:02
Hầu hết các nghiên cứu cho bài viết này đến từ “Nhưng làm thế nào để nó biết?” Của J. Clark Scott. Đó là một bài đọc tuyệt vời, đi sâu hơn nhiều so với bài viết này, và cũng xứng đáng với vài đô la trên Amazon.
Một lưu ý trước khi chúng tôi bắt đầu: CPU hiện đại là các đơn đặt hàng có độ phức tạp hơn so với những gì chúng tôi phác thảo ở đây. Nó gần như không thể cho một người để hiểu mọi sắc thái của một con chip với hơn một tỷ bóng bán dẫn. Tuy nhiên, các nguyên tắc cơ bản về cách tất cả chúng phù hợp với nhau vẫn như cũ, và sự hiểu biết cơ bản sẽ giúp bạn hiểu rõ hơn về các hệ thống hiện đại.
Bắt đầu từ nhỏ
Máy tính hiện đại sử dụng hàng tỷ bóng bán dẫn để thực hiện các phép tính, nhưng ở mức thấp nhất, bạn chỉ cần một số ít để tạo thành các thành phần cơ bản nhất, được gọi là cổng.
Cổng logic
Làm toán với Gates
Khi cả hai đầu vào được bật, nút mang sẽ bật và gửi nó đến bộ cộng đầy đủ tiếp theo trong chuỗi:
Hầu hết các hoạt động toán học khác có thể được thực hiện với phần bổ sung; phép nhân chỉ là lặp đi lặp lại cộng, phép trừ có thể được thực hiện với một số đảo ngược bit ưa thích, và phân chia chỉ là phép trừ lặp đi lặp lại. Và trong khi tất cả các máy tính hiện đại có các giải pháp dựa trên phần cứng để tăng tốc độ hoạt động phức tạp hơn, bạn có thể làm tất cả về mặt kỹ thuật với trình bổ sung đầy đủ.
Xe buýt và bộ nhớ
Ngay bây giờ, máy tính của chúng tôi không có gì hơn một máy tính xấu. Điều này là bởi vì nó không thể nhớ bất cứ điều gì, và không có gì với kết quả đầu ra của nó. Hiển thị ở trên là một ô nhớ, có thể thực hiện tất cả điều đó. Dưới mui xe, nó sử dụng rất nhiều cổng NAND, và trong cuộc sống thực có thể khá khác nhau tùy thuộc vào kỹ thuật lưu trữ, nhưng chức năng của nó là như nhau. Bạn cung cấp cho nó một số đầu vào, bật bit ‘write’ và nó sẽ lưu trữ các đầu vào bên trong ô. Đây không chỉ là một ô nhớ, vì chúng ta cũng cần một cách để đọc thông tin từ nó. Điều này được thực hiện với một enabler, là một tập hợp các cổng AND cho mỗi bit trong bộ nhớ, tất cả được gắn với một đầu vào khác, bit “đọc”. Các bit ghi và đọc thường được gọi là "set" và "enable".
Toàn bộ gói này được bao bọc thành những gì được gọi là đăng ký. Các thanh ghi này được kết nối với bus, là một bó dây chạy quanh toàn bộ hệ thống, được kết nối với mọi thành phần. Ngay cả các máy tính hiện đại cũng có một chiếc xe buýt, mặc dù họ có thể có nhiều xe buýt để cải thiện hiệu suất đa nhiệm.
Các thanh ghi cũng được sử dụng để tạo RAM. RAM thường được bố trí trong một mạng lưới, với dây dẫn theo hai hướng:
Đồng hồ, Stepper và bộ giải mã
Các thanh ghi được sử dụng ở khắp mọi nơi và là công cụ cơ bản để di chuyển dữ liệu xung quanh và lưu trữ thông tin trong CPU. Vậy điều gì bảo họ di chuyển mọi thứ xung quanh?
Đồng hồ là thành phần đầu tiên trong lõi của CPU và sẽ tắt và bật tại một khoảng thời gian định sẵn, được đo bằng hertz hoặc chu kỳ mỗi giây. Đây là tốc độ bạn thấy được quảng cáo cùng với CPU; một chip 5 GHz có thể thực hiện 5 tỷ chu kỳ mỗi giây. Tốc độ đồng hồ thường là một chỉ số rất tốt cho CPU nhanh như thế nào.
Đồng hồ được kết nối với bộ tạo bước, sẽ được tính từ bước này đến bước tối đa và đặt lại chính nó trở lại khi nó được thực hiện. Đồng hồ cũng được kết nối với các cổng AND cho mỗi thanh ghi mà CPU có thể ghi vào:
Hướng dẫn chương trình được lưu trữ trong RAM (hoặc cache L1 trên các hệ thống hiện đại, gần CPU hơn). Kể từ khi dữ liệu chương trình được lưu trữ trong sổ đăng ký, giống như mọi biến khác, nó có thể được thao tác trên bay để nhảy xung quanh chương trình. Đây là cách các chương trình lấy cấu trúc của chúng, với các vòng lặp và các câu lệnh if. Hướng dẫn nhảy đặt vị trí hiện tại trong bộ nhớ mà bộ giải mã lệnh đang đọc từ một vị trí khác.
Làm thế nào nó tất cả đi kèm với nhau
Để thực hiện một phép tính, dữ liệu chương trình được nạp từ RAM hệ thống vào phần điều khiển. Phần điều khiển đọc hai số từ RAM, nạp số đầu tiên vào thanh ghi chỉ dẫn của ALU, sau đó tải số thứ hai lên xe buýt. Trong khi đó, nó sẽ gửi cho ALU một mã hướng dẫn cho biết phải làm gì. Sau đó ALU thực hiện tất cả các phép tính và lưu trữ kết quả trong một thanh ghi khác, mà CPU có thể đọc từ và sau đó tiếp tục quá trình.
Máy Mac của bạn có chức năng chống phần mềm độc hại (hoặc chống vi rút) tích hợp sẵn. Nó hoạt động rất nhiều khủng khiếp như phần mềm chống vi-rút trên Windows, kiểm tra các ứng dụng bạn chạy và đảm bảo chúng không khớp với danh sách các ứng dụng đã biết.
uTorrent gần đây đã thực hiện các tiêu đề cho gói phần mềm rác khai thác tiền điện tử. Trong số tất cả các chương trình junkware đi kèm với trình cài đặt, các nhà khai thác tiền điện tử như Epic Scale là một trong những chương trình tồi tệ nhất.
Mọi người nói về tài khoản trực tuyến của họ bị “tấn công”, nhưng chính xác thì việc hack này xảy ra như thế nào? Thực tế là tài khoản bị tấn công theo những cách khá đơn giản - kẻ tấn công không sử dụng ma thuật đen.
Phần mở rộng bảo mật hệ thống tên miền (DNSSEC) là một công nghệ bảo mật giúp vá lỗi một trong những điểm yếu của Internet. Chúng tôi may mắn là SOPA đã không vượt qua, bởi vì SOPA đã làm cho DNSSEC bất hợp pháp.
Bài viết này giải thích một loại virus Rootkit là gì, Rootkits hoạt động như thế nào và các loại Rootkit trong Windows - Kernel & User-mode Rootkits. Bootkit vs Rootkit đã giải thích.