Theo mặc định, Pi được đặt thành RAM 192MiB: 64MiB: VRAM tách. Vì tôi sẽ không sử dụng Pi cho mục đích đồ họa, tôi muốn thay đổi phân chia để phân bổ RAM bình thường hơn để dễ dàng sử dụng trao đổi.
Theo mặc định, Pi được đặt thành RAM 192MiB: 64MiB: VRAM tách. Vì tôi sẽ không sử dụng Pi cho mục đích đồ họa, tôi muốn thay đổi phân chia để phân bổ RAM bình thường hơn để dễ dàng sử dụng trao đổi.
Câu trả lời:
Đây là những phần tách RAM và chúng nên được sử dụng cho mục đích gì.
Có một số phương pháp có thể quản lý việc phân chia RAM:
Bạn có thể thay đổi phân chia RAM bằng phương pháp này:
sudo cp /boot/arm[ram-split]_start.elf /boot/start.elf
nơi [ram-split]
là dung lượng RAM để giao cho CPU. Sau khi khởi động lại, giá trị mới sẽ được áp dụng.
Cập nhật rpi của Hexxeh cũng hỗ trợ thay đổi phân chia RAM, bạn sẽ chạy rpi-update [ram-split]
ở đâu [ram-split]
là lượng RAM bạn muốn phân bổ cho CPU. Sau khi khởi động lại, phần tách sẽ được áp dụng.
Cách tốt nhất có lẽ là sử dụng tập lệnh select4.sh này , sau đó chọn cách chia RAM phù hợp. Sau khi bạn khởi động lại, phần mới sẽ được áp dụng.
#!/bin/bash
##
## Raspberry Pi Memory Split Selector Script v4
## Author: SirLagz
## Website: http://sirlagz.net
##
## The purpose of this script is to make selecting the memory split
## on the RPi easy.
## Simply make this script executable if it's not already, move
## it to the directory with the elf files, and run it with ./select4.sh
## The menu should be pretty self explanatory.
##
cd /boot
clear
list=./*
b128det=0
b192det=0
b224det=0
b240det=0
bdefdet=0
for i in $list
do
case $i in
"./arm128_start.elf") b128det=1;;
"./arm192_start.elf") b192det=1;;
"./arm224_start.elf") b224det=1;;
"./arm240_start.elf") b240det=1;;
"./start.elf") bdefdet=1;;
esac
done
if [[ "$b192det" == "$bdefdet" ]] ; then
if cmp -s arm192_start.elf start.elf; then
current=192
fi
fi
if [[ "$b128det" == "$bdefdet" ]] ; then
if cmp -s arm128_start.elf start.elf; then
current=128
fi
fi
if [[ "$b224det" == "$bdefdet" ]] ; then
if cmp -s arm224_start.elf start.elf; then
current=224
fi
fi
if [[ "$b240det" == "$bdefdet" ]] ; then
if cmp -s arm240_start.elf start.elf; then
current=240
fi
fi
declare -i vram
vram=256-$current
success=1
sysram=`awk '/MemTotal/ { printf("%.0f",$2/1024) }' /proc/meminfo`
echo "##################################"
echo "## Raspberry Pi Memory ##"
echo "## Selector Script ##"
echo "##################################"
echo " Current Memory Split"
echo " CPU $current/$vram VRAM"
echo " Detected System RAM"
echo " $sysram MB"
echo "##################################"
echo "1) Set CPU/VRAM split to 128/128"
echo "2) Set CPU/VRAM split to 192/64"
if [[ "$b240det" == 0 ]] ; then
echo "3) Set CPU/VRAM split to 240/16 (NOT DETECTED. DO NOT USE)"
else
echo "3) Set CPU/VRAM split to 240/16"
fi
if [[ "$b224det" == 1 ]] ; then
echo "4) Set CPU/VRAM split to 224/32"
fi
echo "q) Quit"
echo "Enter Choice:";
read x
case $x in
1)
rm start.elf && cp arm128_start.elf start.elf
newram=128
;;
2)
rm start.elf && cp arm192_start.elf start.elf
newram=192
;;
3)
if [[ "$b240det" == 1 ]] ; then
rm start.elf && cp arm240_start.elf start.elf
newram=240
else
echo "The arm240_start.elf was not detected. Not changing ram split."
success=0
fi
;;
4)
rm start.elf && cp arm224_start.elf start.elf
newram=224
;;
q|Q)
exit 0
;;
*)
$0
;;
esac
if [[ $? -ne 0 ]]; then
echo "Memory Split setting failed"
elif [[ $success == 1 ]]; then
declare -i newvram
newvram=256-$newram
echo "Memory Split set to $newram/$newvram successfully"
fi
for i in $list
do
case $i in
"./arm128_start.elf") b128det=1;;
"./arm192_start.elf") b192det=1;;
"./arm224_start.elf") b224det=1;;
"./arm240_start.elf") b240det=1;;
"./start.elf") bdefdet=1;;
esac
done
if [[ "$bdefdet" -ne 1 ]]; then
$0
echo "=============================================================================="
echo "start.elf not detected. Please check that you have selected a valid ram split."
echo "=============================================================================="
fi
Đây là một liên kết github trong trường hợp thối liên kết.
Bạn có thể thay đổi phân chia bộ nhớ bằng cách sử dụng raspi-config
tiện ích trong chế độ debian-wheezy hoặc raspbian-wheezy.
Chỉ cần chạy tiện ích: sudo raspi-config
sau đó chọn tùy chọn phân chia bộ nhớ (khoảng 8 trong danh sách).
Quá lớn cho một bình luận, nhưng liên quan. Bạn có thể kiểm tra phân chia ram của mình bằng cách chạy lệnh này
$ sha1sum /boot/*start.elf
a3f72ae7eae537800454de8e4cb231cbd176c0e1 /boot/arm128_start.elf
7784527719031c1c7fce6f72cf3a5c8c23565f24 /boot/arm192_start.elf
82c6be2c9098c0c9c3d71f45bf16c1dc5adfcf08 /boot/arm224_start.elf
82c6be2c9098c0c9c3d71f45bf16c1dc5adfcf08 /boot/start.elf
Sự phân chia được đưa ra bởi tệp có tổng kiểm tra phù hợp, vì vậy trong trường hợp của tôi, đó là 224/32