Я собираюсь сказать «нет», или «не в bash 4.4», или «не без изменения кода и повторной -компиляции», так как это значение находится в переменной с именем current_command_number
, и оно только когда-либо упоминается и увеличивается:
$ grep -r current_command_number *.c
eval.c:extern int current_command_number, current_command_line_count, line_number;
eval.c: current_command_number++;
shell.c:int current_command_number = 1;
shell.c: current_command_number = 1;
y.tab.c:extern int current_command_number;
y.tab.c: temp = itos (current_command_number);
shell.c
дважды устанавливает его в 1 :во время создания экземпляра переменной и в функцииshell_reinitialize
. Эта функция также сбрасывает приглашение, re -инициализирует историю и удаляет все переменные и функции. Эта функция вызывается только один раз из main()
.
Единственная внешняя видимость этой переменной находится в функции decode_prompt_string
, которая сама вызывается, когда предполагается отобразить или повторно отобразить подсказку.
Я не уверен, что вы подразумеваете под «одной страницей диска». В виртуальной памяти есть страницы, а в дисках их нет.
Жесткие диски имеют размер физического сектора (сегодня обычно 4096 байт )и размер логического сектора (обычно 512 байт ). Это связано с тем, что давным-давно жесткие диски имели размер физического сектора 512 байт, а логические/физические размеры были введены для того, чтобы поддерживать его (некоторую )совместимость.
Вы можете узнать размер физического и логического секторов вашего жесткого диска, например, с помощью fdisk -l
.
В спецификации жесткого диска «размер буфера» обычно означает объем внутренней оперативной памяти контроллера жесткого диска, используемый для буферизации. Но это намного больше, чем 512 байт. Я понятия не имею, какую конкретную спецификацию с «размером буфера = 512 байт» вы читали, поэтому я не могу это комментировать.