• Thứ Hai, 15/05/2017 00:27 (GMT+7)

    Hệ điều hành 32-bit và 64-bit: Đâu là sự khác biệt

    Hoàng An
    Có thể bạn đang sử dụng hệ điều hành chạy trên nền tảng 64-bit, nhưng điều đó có ý nghĩa gì hơn so với thế hệ 32-bit?

    32-bit và 64-bit

    Có rất nhiều cách để đếm số nhưng khi nói đến máy tính thì chỉ có hệ nhị phân (hay hệ đếm cơ số hai) với 2 ký tự duy nhất là 0 và 1. Mỗi ký tự được xem là một “bit - binary digit, số ký nhị phân”. Điều đó có nghĩa là 1-bit điện toán biểu thị được 2 trị giá (0 hay 1); 2-bit là 4; sau đó đến 3-bit sẽ là 8, gấp đôi trị số trước đó (2 lũy thừa 3).

    Tiếp tục đi theo cấp số nhân và cuối cùng chúng ta nhận được 32-bit (2 lũy thừa 32) có giá trị 4.294.967.296; 64-bit (2 lũy thừa 64) đạt giá trị 18.446.744.073.709.551.616.

    Điều đó có nghĩa là máy tính sử dụng số bit có giá trị khác nhau sẽ có khả năng xử lý cũng khác nhau. Cứ mỗi vài năm, các chip bên trong máy tính (kể cả loại dành cho smartphone) và phần mềm chạy trên đó lại có một bước nhảy mới tiến về phía trước trong việc hỗ trợ tính toán. Ví dụ:

    • Chip Intel 8080 hồi năm 1970 chỉ hỗ trợ 8-bit 

    • Windows 3.1 ra mắt năm 1992 là hệ điều hành Windows đầu tiên chạy trên máy bàn sử dụng nền tảng 16-bit 

    AMD ra mắt thế hệ chip máy tính để bàn 64-bit đầu tiên vào năm 2003

    • Hệ điều hành Mac OS X Snow Leopard của Apple bắt đầu chạy trên nền 64-bit hồi 2009.

    • iPhone 5s là smartphone đầu tiên sử dụng chip 64-bit (Apple A7) năm 2013.

    Điều khá rõ ràng là nền tảng 64-bit, đôi khi được viết theo kiểu x64, có nhiều khả năng xử lý hơn so với 32-bit (thường được gọi là x86 - thuật ngữ vốn bị mắt kẹt từ thời Windows Vista gán chúng trong các ứng dụng 32-bit của mình như "Program Files (x86)," bản chất thuật ngữ x86 dùng để chỉ tới kiến trúc tập lệnh của dòng vi xử lý 8086 của Intel. 8086 được Intel đưa ra năm 1978).

    Hệ điều hành

    Ngày nay, có nhiều khả năng chúng ta đang sử dụng chip 64-bit với các hệ điều hành 64-bit của mình để chạy các ứng dụng 64-bit (cho điện thoại di động) hoặc phần mềm (trên máy tính để bàn). Nhưng không phải tất cả đều như vậy. Ví dụ, Windows 7, 8, 8.1, và 10: tất cả trong số đó đều có phiên bản 32-bit hoặc 64-bit.

    Hiện tại dung lượng bộ nhớ máy tính đã vượt quá mức "32-bit" rất nhiều nên định nghĩa 64-bit được dùng để phân biệt giữa hệ điều hành (Operating) của Microsoft là 32-bit và 64-bit. Khác biệt chủ yếu giữa hai phiên bản hệ điều hành này là băng thông xử lý trong 1 xung nhịp của CPU mà hệ điều hành 64-bit xử lý sẽ cao hơn 32-bit, phân biệt rõ ràng bằng việc hệ điều hành 64-bit có khả năng quản lý, xử lý được bộ nhớ (Ram) lớn hơn 3,2 GB (Gigabyte), còn 32-bit thì chỉ quản lý được bộ nhớ nhỏ hơn 3,2GB.

    Tại sao phần lớn máy tính hiện đại ngày nay đều sử dụng hệ nhị phân?

    Câu trả lời ngắn gọn là do máy tính ngày nay chưa được thiết kế để có thể nhận ra nhiều hơn 2 tín hiệu (ngoại trừ máy tính lượng tử nhưng loại máy này chưa được sử dụng phổ thông). Hệ nhị phân được chọn bởi vì nó khá dễ dàng khi phân biệt sự hiện diện hay vắng mặt của 1 tín hiệu điện tại 1 thời điểm nào đó. Điều này càng trở nên đáng giá khi máy tính phải xử lý hàng tỷ tỷ các tín hiệu này mỗi giây. Nếu dùng những hệ đếm cơ số khác trên những hệ thống máy này thì đòi hỏi rất nhiều tài nguyên.

     

    Intel bắt đầu sản xuất bộ vi xử lý 32-bit với các mẫu 80386 hồi năm 1985 và hãng này theo sau AMD cũng đã đưa dòng 64-bit ra thị trường vào năm 2004. 

    Nếu bạn đã có một máy tính với chip Pentium D sản xuất trước năm 2005, thì chắc hẳn sẽ cần những thiết lập 32-bit. Các chip Intel 32-bit cuối cùng như Pentium 4E ra mắt hồi tháng 2/2004 đã có phần mở rộng đến 64-bit, đó là thời kỳ chuyển tiếp x86-64. Điều này cho phép hệ điều hành 64-bit có khả năng tương thích ngược với cả 2 loại phần mềm là 32-bit và 16-bit khi cần thiết. Các phiên bản sau của Pentium 4, như Extreme Edition, đã hỗ trợ đầy đủ 64-bit trước khi bị ngưng vào năm 2005.

    Cài đặt một hệ điều hành 32-bit trên hệ thống kiến trúc 64-bit thì mọi thứ vẫn hoạt động nhưng không thực sự tối ưu. Hệ điều hành 32-bit có khá nhiều hạn chế, nổi bật nhất chính là việc chỉ có thể thực sự sử dụng 4GB RAM. Lắp đặt thêm RAM trên hệ thống sử dụng hệ điều hành 32-bit thì sẽ không tăng thêm sức mạnh cho hiệu suất. Nhưng khi nâng cấp RAM lên hơn 4GB  trên các phiên bản hệ điều hành 64-bit thì bạn sẽ nhận thấy ngay sự khác biệt.

    Điều này có thể diễn giải theo cách: RAM tối đa hỗ trợ chính thức trên Windows 10 là 2 terabyte (hoặc 128GB trên Windows 10 Home). Giới hạn lý thuyết của bộ nhớ RAM 64-bit: 16 exabyte. Nhưng chúng ta  còn phải đi một chặng đường dài mà chưa biết đến bao giờ phần cứng mới có thể hỗ trợ được. Dù vậy, hiện nay việc mua một máy tính xách tay mới với RAM 16 GB cũng đã rất ấn tượng rồi.

    Nhưng hiện nay vẫn còn rất nhiều máy tính sử dụng hệ điều hành 32-bit, bởi vì còn rất nhiều phần mềm chỉ chạy được trên nền kiến trúc đó mà chưa có phiên bản 64-bit. Mặc dù hiện nay hệ điều hành 64-bit vẫn hỗ trợ 32-bit nhưng lại không thực sự tối ưu. 

    Nếu bạn là người dùng Windows, khi nhìn vào ổ cài đặt thì bạn sẽ thấy 2 thư mục Program: một cho 64-bit , cái còn lại là Program Folders (x86) để chạy các ứng dụng 32-bit. Trước hết, lý do bạn có hai thư mục là vì hiện nay chip xử lý hỗ trợ hai kiến trúc cơ bản và kết quả là, có hai cách cơ bản khác nhau để viết các chương trình và ứng dụng. Mọi ứng dụng  đều chia sẻ việc sử dụng các nguồn tài nguyên trên hệ thống Windows thông qua các file DLL (Dynamic Link Libraries). Về cơ bản chúng gộp các thư viện tài nguyên phổ biến vào nơi mà nhiều ứng dụng khác nhau sẽ sử dụng. Vì vậy, những tập tin DLL được viết và được cấu trúc theo những cách khác nhau để có thể sử dụng bởi các ứng dụng 64-bit hoặc 32-bit. 

    Trên những phiên bản hệ điều hành Mac thế hệ mới, bạn ít có khả năng tìm thấy ứng dụng 32-bit, hầu hết chúng đã hỗ trợ nền tảng 64-bit. Gần đây nhất là việc Microsoft Office chỉ cung cấp phiên bản 64-bit trên máy Mac vào hồi giữa năm 2016.

    Ứng dụng với yêu cầu hiệu suất cao đã tận dụng lợi thế của việc gia tăng bộ nhớ có sẵn khiến nhiều công ty đưa ra các phiên bản 64-bit dành cho chương trình của họ.  Điều này đặc biệt hữu ích đối với chương trình có thể lưu trữ rất nhiều thông tin để truy cập ngay lập tức, như phần mềm chỉnh sửa hình ảnh khi đồng thời mở ra nhiều tập tin lớn cùng một lúc. Các trò chơi video cũng hỗ trợ tối đa để tận dụng lợi thế xử lý của 64-bit và khả năng cấp RAM đi kèm. Việc có khả năng xử lý nhiều phép tính cùng lúc có thể giúp hình ảnh được xử lý trơn mượt hơn từ card đồ họa mà không phải chia sẻ bộ nhớ với các trình xử lý khác nữa.

    Hầu hết các phần mềm có thể tương thích ngược, cho phép bạn chạy các ứng dụng 32-bit trong môi trường 64-bit mà không đòi hỏi yêu cầu nào. Phần mềm chống vi-rút và trình điều khiển có xu hướng đi ngược với quy tắc này, đối với thiết bị phần cứng thì đòi hỏi phải đúng phiên bản để có thể cài đặt phần mềm.

    Mobile 64-bit

    Như đã nói ở trên, chip A7 của Apple là bộ vi xử lý 64-bit đầu tiên được đưa vào sử dụng trong điện thoại di động (iPhone 5s). Năm 2015, Apple bắt buộc tất cả phần mềm iOS phải sử dụng kiến trúc 64-bit. Vì vậy, tính đến tháng 6/2016, nếu bạn mở một ứng dụng 32-bit trong các phiên bản iOS mới nhất thì sẽ được cảnh báo là có thể ảnh hưởng đến toàn bộ  hiệu suất hệ thống.

    Nếu bạn đã nâng cấp lên iOS 10, thì hầu như sẽ không còn sử dụng được những ứng dụng 32-bit cũ (một vài ngoại lệ của Apple là những thiết bị cũ sử dụng chip 32-bit hỗ trợ iOS 10).

    Đối với điện thoại Android, thì mọi thứ có thể phức tạp hơn để có thể tìm hiểu chi tiết trừ khi bạn thực sự am hiểu về những con chip ở bên trong. Nếu bạn không chạy Android 5.0 hoặc mới hơn như Lollipop thì chắc chắn là máy vẫn đang sử dụng kiến trúc 32-bit.

    Đối với iOS và Android, kiến trúc vi xử lý được trang bị không phải để hệ điều hành có thể sử dụng nhiều RAM bởi hiệu suất xử lý không đáng kể so với việc sử dụng máy tính để bàn. Trong thực tế, kiến trúc x64 không đảm bảo về hiệu suất tốt hơn, nhiều điện thoại Android 32-bit tốt hơn so với iPhone 5s 64-bit đầu tiên. Thêm vào đó, điện thoại Android đầu tiên HTC Desire 510 sử dụng kiến trúc 64-bit không được hưởng lợi nhiều bởi hầu hết ứng dụng còn bị mắc kẹt với  phiên bản 32-bit cũ .

    Nhưng điện thoại thông minh tiến tới 64-bit có nhiều lợi ích khác, những thứ như dữ liệu trên mỗi chu kỳ và tốc độ nhanh hơn, mã hóa tốt hơn, và tổng thể các chip 64-bit mới giúp cải tiến tính năng, như tăng hiệu quả sử dụng pin.

    Ví dụ như việc chuyển từ 32-bit lên 64-bit ở vi xử lý ARM là bước phát triển trong việc chuyển từ kiến trúc ARMv7 lên ARMv8. Trước đó, kiến trúc ARMv7 đã có những cải tiến và mở rộng nhưng phần lõi của kiến trúc này vẫn không khác gì so với trước đây. Còn ARMv8 bao gồm một loạt những cải tiến, với việc xây dựng cấu trúc vi xử lý cho phù hợp với các ứng dụng hiện đại và loại bỏ các kiến trúc lỗi thời trên vi xử lý. Kiến trúc mã hóa bảo mật cũng được thêm vào, hơn nữa, phần không gian dành cho thanh ghi bên trong bộ xử lý đã tăng gấp đôi. Điều này đồng nghĩa với việc vi xử lí ARMv8 sẽ tốn ít thời gian để truy cập dữ liệu từ bộ nhớ hơn.

    Cuối cùng, các cuộc cách mạng 64-bit đã được diễn ra trên máy tính và điện thoại thông minh. Những chuyên gia tiếp thị sẽ không còn tung hô chúng như cách đây vài năm còn đối với người tiêu dùng thì chip 64-bit đang dần trở thành 1 phần trong đời sống công nghệ mà không quá xa lạ. 

    PC World VN 03/2017

    ID: A1703_29