Để sử dụng bước này, tôi giả sử là bạn đã xác định có lỗi bộ nhớ thực sự mà đã được quá trình POST hay chuẩn đoán bộ nhớ trên đĩa báo cáo. Nếu đây là trường hợp đó, xem các bước sau và hình 6.21 cho các bước xác định hoặc cô lập module nào trong hệ thống gây ra lỗi.
1.Thay bộ nhớ trong dãy đầu tiên (tốt nhất là với các module dự phòng chất lượng và nổi tiếng, nhưng bạn cũng có thể hoán đổi bằng những cái khác mà bạn đã gỡ bỏ) và kiểm tra lại. Nếu các vấn đề vẫn còn tồn tại khi kiểm tra tất cả các dãy nhớ (và thấy tất cả chúng đều hoạt động đúng cách), có khả năng là bản thân bo mạch chủ bị hỏng (có thể hỏng một trong các socket bộ nhớ). Thay bo mạch chủ và kiểm tra lại.
2.Lưu lại các thiết lập, khởi động và kiểm tra lại việc sử dụng các quy trình kiểm tra và xử lý sự cố được liệt kê lúc trước. Nếu vấn đề đã được giải quyết, các thiết lập BIOS sai chính là sự cố. Nếu các vấn đề vẫn còn, có khả năng là bạn gặp một bộ nhớ khiếm khuyết, vì thế hãy tiếp tục bước tiếp theo.
3.
Mở hệ thống để truy xuất vật lý đến các module trên bo mạch chủ. Xác định sự sắp xép dãy trong hệ thống. Sử dụng sách hướng dẫn hay ghi chú được in bằng kỹ thuật in đồ hình trên bo mạch chủ xác định các module nào tương ứng với các dãy nào. Hãy nhớ rằng nếu bạn đang kiểm tra một hệ thống đa kênh, bạn phải chắc rằng bạn gở bỏ tất cả module trong cùng kênh.
4.Gơ bỏ tất cẩ bộ nhớ ngoại trừ dãy đầu tiên và kiểm tra lại việc sử dụng quy trình xử lý sự cố và kiểm tra đã được liệt kê trước đó (xem hình 6.22). Nếu vấn đề vẫn ở đó với tất cả bộ nhớ trừ khi dãy đầu tiên bị gỡ bỏ đi, thì vấn đề đã cô lập vào dãy đầu tiên và dãy này phải được thay thế.
5.Thay bộ nhớ trong dãy đầu tiên (tốt nhất là với các module dự phòng chất lượng và nổi tiếng, nhưng cũng có thể hoán đổi với những cái khác mà bạn đã gỡ bỏ) và kiểm tra lại. Nếu các vấn đề vẫn còn tồn tại sau khi kiểm tra tất cả các dãy nhớ (và thấy tất cả chúng đều hoạt động đúng cách), có khả năng là bản thân bo mạch chủ bị hỏng (có thể hỏng một trong các socket bộ nhớ). Thay bo mạch chủ và kiểm tra lại.
6.Tại thời điểm này, dãy đầu tiên (hay dãy trước đó) đã được kiểm tra là tốt, vì thế vấn đề phải ở trong các module còn lại mà bây giờ đã tạm thời bị gỡ bỏ. Lắp đạt vào dãy kế của bộ nhớ và kiểm tra lại. Nếu vấn đề lại xuất hiện, thì bộ nhớ trong dãy đó đã bị khiếm khuyết. Tiếp tục kiểm tra mỗi dãy cho đến khi bạn tìm ra module khiếm khuyết.
7.Lập lại bước trước cho đến khi tất cả các dãy còn lại của bộ nhớ được lắp đủ và kiểm tra. Nếu sự cố không xuất hiện nữa sau khi gỡ bỏ và gắn lại tất cả bộ nhớ. Sự cố có khả năng không tiếp tục hoặc được gây ra bởi tính dẫn kém trên các chân tiếp xúc của bộ nhớ. Thông thường việc gỡ bỏ và thay thế bộ nhớ là có thể giải quyết vấn đề bởi vì tác động làm sạch giữa module và socket trong quá trình di dời và lắp đặt lại bộ nhớ.
Bản thiết kế bộ nhớ logic hệ thống
PC đầu tiên có tổng cộng 1MB bộ nhớ có thể định địa chỉ và 384KB đầu được để dành riêng cho hệ thống. Đặt khoảng không gian dành riêng này tại vị trí đầu tiên (giữa 640KB và 1024KB thay vì ở cuối, giữa 0KB và 640KB) dẫn tới cái thường được gọi là ranh giới bộ nhớ quy ước (conventional memory barrier). Các sức ép không ngở lên các nhà sản xuất hệ thống và thiết bị ngoại vi nhằm duy trì khả năng tương thích bằng cách không bao giờ phá vỡ kiể bộ nhớ nguyên tủy của dòng PC đầu tiên đã dẫn đến kiếm trúc bộ nhớ hệ thống được đặt vào tình trạng hết sức lộn xộn.gần như hai thập kỷ sau khi dòng PC đầu tiên được giới thiệu, thậm chí các hệ thống mới nhất cũng bị hạn chế ở nhiều mặt quan tọng bởi sơ đồ bộ nhớ của các dòng PC đầu tiên.
PC đầu tiên sử dụng bộ xử lý Intel 8088 chỉ có thể chạy các tập lệnh hay mã 16 bit, vận hành trong cái được gọi là chế độ thực (real mode) của bộ xử lý. Các bộ xử lý đầu tiên này chỉ có đủ dòng địa chỉ để truy xuất lên đến 1MB bộ nhớ và 384KB cuối cùng của bộ nhớ này được dành riêng cho card video như RAM video, các thiết bị tiếp hợp khác (dành cho BIOS ROM hay các bộ nhớ đệm RAM trên card) và cuối cùng là BIOS ROM bo mạch chủ.
Bộ xử lý 286 mang lại nhiều dòng địa chỉ hơn, đủ để cho phép dùng lên đến 16MB RAM và một chế độ mới gọi là chế độ được bảo vệ (protected mode) mà bạn phải sử dụng chúng. Một phạm vi rối rắm là RAM bây giờ cũng không thể kề nhau nữa; đó là do hệ điều hành có thể sử dụng 640KB đầu tiên và 15MB cuối, nhưng không sử dụng 384KB vùng giữa dành riêng cho hệ thống.
Khi Intel công bố bộ xử lý 32 bit đầu tiên vào năm 1985 (dòng 386DX), kiến trúc bộ nhớ hệ thống đã thay đổi đột ngột. Bấy giờ đã có đủ các dòng địa chỉ bộ xử lý dùng 4GB bộ nhớ, nhưng chỉ truy cập được trong chế độ được bảo vệ 32 bit mới mà trong đó các tập lệnh hoắc mã 32 bit có thể hoạt động. Không may là nền công nghệ mất 10 năm để chuyển các hệ điều hành và ứng dụng từ 16 bit lên 32 bit. Từ quan điểm tập lệnh phần mềm, tất cả các bộ xử lý 32 từ dòng 386 thực sự chỉ là các phiên bản nhanh hơn trong các phiên bản giống nhau.
Khi AMD phát hành bộ xử lý x86-64 đầu tiên năm 2003 (Intel tiếp theo năm 2004), thời đại 64 bit bắt đầu. Thêm vào các chế độ 16 bit và 32 bit, các chip này có thêm chế độ 64 bit. Các bộ xử lý 64 bit có ba chế độ khác nhau rõ rệt, với mỗi chế độ là một kiến trúc bộ nhớ khác nhau. Với sự tương thích ngược, các bộ xử lý 64 có thể chayjowr chế độ 16 bit, 32 bit, 64 bit và các bộ xử lý 32 bit có thể chạy ở chế độ 16 bit có thể chạy ở chế độ 32 bit chỉ có thể định địa chỉ 4GB RAM, bộ xử lý 64 bit hay 32 bit chạy trong chế độ 16 bit chỉ có thể định địa chỉ 1MB RAM. Tất cả bộ xử lý PC tương thích với Intel bắt đầu sự vận hành ở chế độ thực 16-bit khi chúng được bật nguồn. Khi một hệ điều hành 32 bit hay 64 bit tải, mã hệ điều hành chỉ thị cho bộ xử lý chuyển sang chế độ được bảo vệ 32 bit hay 64 bit.
Khi một hệ điều hành như Windows được tải về, bộ xử lý chuyển sang chế độ được bảo vệ 32 bit ngay bắt đầu trình tự tải. Kế đó các trình điều khiển 32 của tất cả các phần cứng được tải về, tiếp sau đó đến phần còn lại của hệ điều hành. Trong chế độ được bảo vệ 32 bit, các hệ điều hành và các ứng dụng có thể truy cập vào tất cả bộ nhớ trong hệ thống lên đến 4GB. Tương tự, trên hệ điều hành 64 Bit, hệ thống chuyển sang chế độ được bảo vệ 64 bit ngay bắt đầu trình tự tải và tải các tình điều khiển 64 bit, tiếp theo là phần còn lại của hệ điều hành.
Các ấn bản 32 bit của Window hỗ trợ bộ nhớ vật lý 4GB (RAM). Điều mà nhiều người không nhận ra là phần cứng hệ thống PC dùng một số hay tất cả gigabyte thứ tư cho BIOS, các nguồn bo mạch chủ, bộ nhớ I/O được ánh xạ, khoảng bộ nhớ dành cho cấu hình PCI, bộ nhớ thiết bị (đồ họa AGP), bộ nhớ VGA…Điều này có nghĩa là nếu bạn lắp đặt 4GB (hay nhiều hơn), RAM, không thể nhìn thấy hết 4GB, và phần lớn hay tất cả gigabyte thứ tư (đó là, RAM giữa 3GB và 4GB) sẽ bị vô hiệu hóa bởi vì nó bị chiếm bởi phần cứng hệ thống khác. Điều này được gọi là Giới hạn 3Gb (3GB limit), tương tự giới hạn bộ nhớ 640K, trên hệ thống 16 bit trong những năm 1980. Định địa chỉ 16 bit hỗ trợ 1MB, nhưng 384K trên được dùng bởi phần cứng hệ thống (BIOS, video, ROM thiết bị tiếp hợp, và…)
Hình 6.23 thể hiện lược đồ bộ nhớ cho một hệ thống hiện đại dùng chipset Intel Intel G45, hỗ trợ tối đa 16GB RAM. Đối với hệ điều hành 32 bit, dòng được gán “Mức cao nhất của DRAM, có thể sử dụng (Hệ điều hành 32 bit)” là ở 4.096MB. Lưu ý rằng vùng bộ nhớ PCI, công 770MB bộ nhớ dưới 4GB. Bạn cũng có thể nhìn thấy 384K (0.375MB) bộ nhớ dưới 1MB cũng được dùng bởi hệ thống. Điều này có nghĩa nếu bạn đang chạy hệ điều hành 32 bit, thậm chí nếu có 4GB RAM được cài đặt, số lượng có thể sử dụng bởi hệ điều hành sẽ là 4.096MB-770MB-0.375MB, là 3.325.625MB (hay khoảng 3.24GB, làm tròn xuống).
Có thể bất kỳ bộ nhớ không sử dụng giữa 3GB và 4GB được tận dụng? Cho những hệ thống chạy hệ điều hành 32 bit, câu trả lời là không thể. Tuy nhiên, nếu chạy hệ điều hành 64 bit trên hệ thống hỗ trợ tải ánh xạ bộ nhớ (chủ yếu một chức năng của chipset bo mạch chủ và BIOS), câu trả lời là được. Hầu hết các chipset bo mạch chủ mới hơn có một tính năng có thể tải ánh xạ RAM bị vô hiệu hóa khác trong GB thứ tư sang GB thứ năm (hoặc cao hơn), nơi nó được hiển thị và được sử dụng bởi hệ điều hành 64 bit. Lưu ý, nếu bo mạch chủ không hỗ trợ tải ánh xạ (remapping), thậm chí hệ điều hành 64 bit đang chạy, bộ nhớ sẽ bị mất.
Nhận xét rằng giới hạn 3GB không được xác định hoàn toàn như với giới hạn 640K. Điều này có nghĩa là nếu bạn lắp đặt 4Gb, bạn có thể chỉ dùng được 3.5GB, hay có thể 2.5GB hay ít hơn. Nó tùy thuộc phần lớn vào các loại bus trong hệ thống cũng như loại và số card video được lắp đặt. Với một card video cấp thấp, bạn có thể truy xuất đến 3.5GB. Tuy nhiên, với hệ thống mới hơn có hai hay nhiều hơn Slot Pcle x 16, đặc biệt với hai hay nhiều hơn card video PCI Express cao cấp được lắp đặt, bạn có thể hạ giới hạn có thể sử dụng gần tới 2GB.
Để chạy các ấn bản 32 bit của Windows, tôi thường đề nghị lắp đặt tối đa 3GB RAM, bởi vị phần lớn nếu không là tất cả GB thứ tư không thể sử dụng. Tuy nhiên, trên hê thống hỗ trợ bộ nhớ hai kênh, thường chỉ rẻ hơn nếu lắp đặt hai module 2GB để có 4GB hơn là lắp đặt hai kênh, bạn sẽ không muốn lắp đặt ba module 1GB, do trong trường hợp này tất cả bộ nhớ đều chạy trong chế độ kênh đôi.
Theo "Nâng cấp và sửa chữa máy tính" Scott Mueller