01/10/2018, 10:50

Điều gì sẽ xảy ra khi bạn đổi toàn bộ giá trị từng ô nhớ của RAM về 0?

Chả là trong lúc e học về Pointer trong C, e thấy là mình hoàn toàn có thể xem trong mỗi ô nhớ ở RAM chứa gì và cũng có thế thay giá trị trong ô nhớ đó.
Vậy nếu e viết một chương trình : đưa vào dung lượng RAM của máy mình, chuyển sang bit. rồi lần lượt chuyển hết giá trị những ô nhớ đó về 0 thì sao nhỉ?
Liệu máy có hỏng hay không, LOL

Hung viết 13:04 ngày 01/10/2018

Tuỳ vào hệ điều hành (OS), đối với Unix thì OS sẽ quản lý vùng nhớ của app. Nếu app truy cập vùng nhớ nằm ngoài phạm vi OS cấp phát thì OS cho app đó ngủm luôn, hay gọi là crash app.

LVV viết 13:05 ngày 01/10/2018

Khởi động lại máy và khởi động lại ứng dụng thì OS có cấp phát bộ nhớ mới cho app đúng không bạn? vậy thì sau đó app vẫn chạy bình thường chứ?

HelloWorld viết 12:54 ngày 01/10/2018

chạy bình thường, nhưng không set về 0 được hết như bạn nói, vì cứ set thì nó crash ứng dụng, rồi khởi động lại, set tiếp thì nó lại crash

rogp10 viết 13:07 ngày 01/10/2018

Chả là trong lúc e học về Pointer trong C, e thấy là mình hoàn toàn có thể xem trong mỗi ô nhớ ở RAM chứa gì và cũng có thế thay giá trị trong ô nhớ đó.

Không được vì sẽ bị protection fault do truy cập linh tinh.

Vả lại những ô nhớ ở userspace không hẳn từ RAM mà ra. Muốn ghi thẳng vào RAM phải boot riêng.

Vô Thin viết 12:51 ngày 01/10/2018

Muốn ghi hết tất cả vào RAM với giá trị Zero thì không có cách nào thực hiện được trên một hệ điều hành, chỉ có thể thực hiện nếu làm công việc của một hệ điều hành.

Hãy viết một hệ điều hành mini rồi boot máy với hệ điều hành đó rồi thực hiện ghi tất cả ô nhớ về zero xem, việc đó e là không được, giống y chang việc cầm cái điện thoại mà muốn chụp hình chính nó (không dùng gương/ một vật phản chiếu như gương) để gửi hình đó khoe với bạn bè là mình mới mua cái điện thoại đẹp như thế nào.

Mình ví dụ hơi buồn cười nhưng cái mà chủ topic muốn nói theo mình nghĩ các bạn sẽ trông thấy anh chàng ta một ngày nào đó đứng cạnh xô nước, với cái ca không có nước làm hành động đang múc nước đổ vào xô, miệng luôn mồm “chuyện gì xảy ra khi ta đổ một triệu ca không khí vào xô”.

Trần Hoàn viết 13:03 ngày 01/10/2018

Trong chế độ debug thì tuỳ tình hình sẽ có lỗi ra sao, có thể có những ô nhớ vẫn thay đổi được vì hệ điều hành cho phép, nhưng có những ô nhớ sẽ không thể thay đổi được. Còn lý do gì không thay đổi được thì nhiều, nếu debug bằng IDE xịn sẽ thấy:


Còn nếu chạy trực tiếp chương trình thì sẽ là:

Bài liên quan
0