Я не уверен, что понимаю ваш вопрос.
Я просто попробовал это, и для байта -12 (знаковое значение) он возвращал целое число 244 (эквивалентное значению без знакового байта, но вводимое как int
):
public static int unsignedToBytes(byte b) {
return b & 0xFF;
}
public static void main(String[] args) {
System.out.println(unsignedToBytes((byte) -12));
}
Это то, что вы хотите сделать?
Java не позволяет выразить 244 как значение byte
, как и C. Чтобы выразить положительные целые числа выше Byte.MAX_VALUE
(127) вам нужно использовать другой целочисленный тип, например short
, int
или long
.
Это возможно, но бессмысленно. Ядро сохраняет кэш из данных из диска в RAM. Данные, которые Вы использовали последний раз, сохранены в RAM. Вы естественно закончите с частями /usr
, что Вы часто используете в RAM, и части, которые Вы не используете, не будут поднимать RAM.
, Если Вы хотите лучшее время реакции, когда Вы запускаете приложение, можно отобрать кэш. Файл загружается в память в первый раз, когда Вы используете его, и остается там, пока память не снова используется для чего-то еще. Можно вынудить файл быть загруженным:
cat /path/to/file >/dev/null
, Например, чтобы предварительно загрузить все исполняемые файлы и библиотеки в RAM:
cat /bin/* /lib/* /usr/bin/* /usr/lib/* >/dev/null
Это может требовать времени к полному, таким образом, необходимо сделать это в фоновом режиме. Можно поместить следующую команду в /etc/rc.local
:
ionice -c 3 cat /bin/* /lib/* /usr/bin/* /usr/lib/* >/dev/null &
, Чтобы также загрузить все библиотеки в подкаталогах /usr/lib*
могло быть полезно работать find
:
ionice -c 3 find /bin /usr/bin /usr/lib* -type f -exec ionice -c 3 cat '{}' ';' > /dev/null &
ionice -c 3 cat /bin/* /lib/* /usr/bin/* /usr/lib/* >/dev/null &
не будет работать, потому что существует много каталогов в рамках освобождения. попробуйте найдите:
ionice -c 3 find /bin /usr/bin /usr/lib* -type f -exec cat '{}' ';' > /dev/null &
Все, что это производит, переходит к/dev/null, таким образом, ничто не будет раздражать Вас.
<забастовка> я думаю оба , ионизируются , требуются, потому что находят, выполняет команды в собственном процессе. Исправьте меня, если я неправ. (Похож, я был неправ.)
Эта строка в rc.local должна добиться цели к уже выбранному ответу.
[редактирование] удалил второй "ionice", как предложено в комментарии.