Aprovado: Fortect
Nos últimos dias, alguns de nossos usuários receberam uma mensagem de erro relacionada ao redimensionamento da postagem do kernel do Linux na web. Existem vários fatores que provavelmente causarão esse problema. Vamos discutir isso agora.
Eu gostaria de resgatar PAGE_SIZE
de 4096
destinado à experiência. Portanto, alterei o valor relativo a PAGE_SHIFT
durante /arch/x86/include/asm/page_types.h
. Mas não consigo compilar isso.
Na declaração contada por include / linux / linking.h: documentos: 0,de include / linux / kernel.h: 6,de include / linux / cache.h: 4,de include / linux system / time.h: 4,de ark / x86 kernel / vsyscall_64.c: 23:arch / x86 / kernel para cada vsyscall_64.c: motivo para "map_vsyscall" † ...:include / ubuntu / compiler.h: 437: 20: eroor: Call "compiletime_assert_390" ao lado do atributo de erro declarado: falhou BUILD_BUG_ON: (long unigned) __ fix_to_virt (VVAR_PAGE)! = (sem sinal longo) VVAR_ADDRESSPrefixo sufixo (); n^include / linux / compiler.Nota: h: 442: second: Viver na extensão de macro "__compiletime_assert"__compiletime_assert (condição, correspondência, prefixo, sufixo)^include / linux / compiler.h: 454: 7: Observação: refere-se a "_compiletime_assert" em uma macro de expansão_compiletime_assert (condição, mensagem, __compiletime_assert_, __LINE)^include / linux versus bug.h: 53: 37: Observação: em uma extensão que cobre a macro "compiletime_assert"#define BUILD_BUG_ON_MSG (cond, msg) msg)^include - linux / bug compiletime_assert (! (cond), .h: setenta e sete: 2: saber: na extensão de macro "BUILD_BUG_ON_MSG"BUILD_BUG_ON_MSG (condição, "BUILD_BUG_ON falhou: # condição)^Arch / x86 - kernel / vsyscall_64 ".c: 389: 2: Nota: em adiamento com macro" BUILD_BUG_ON "BUILD_BUG_ON ((não assinado! =^make [2]: long) __ fix_to_virt (VVAR_PAGE) * [arch / x86 kernel / vsycall_64.o] eroor 1faça [1]: 3. [arch / x86 / kernel] Erro 2make: *** [arch x86] mensagem de erro 2
Provavelmente por causa de VVAR_PAGE, ao contrário, não estou como alterá-lo.E se eu fizer isso?
perguntou-me em 13 de dezembro de 19 às 6:32
1 11 ícone marrom
Não é a resposta que você está procurando? Procure outras perguntas marcadas como Linux Kernel Paging e faça sua própria pergunta.
Não é possível modificar PAGE_SIZE
diretamente definindo PAGE_SHIFT
porque a ideia foi gerada em tempo de compilação.
Assumindo que seu processador principal é um processador x86 específico, você certamente pode redimensionar a página para 8 KB usando as variáveis pessoais em CONFIG_PAGE_SIZE_XXX
, como CONFIG_PAGE_SIZE_8 KB
. Observe que o uso de Internet grande ocupa muito espaço, porque a documentação sobre um byte realmente ocupa uma página inteira em seu disco rígido. Além disso, as alterações de página dependem do tamanho da estrutura e geralmente é recomendado retornar para deixá-la no tamanho padrão de 4K.
No entanto, uma abordagem melhor pode ser considerar páginas maiores, mais variadas e poderosas. Eles são frequentemente descritos lá
respondeu em 13 de dezembro de 19 às 8:49
Aprovado: Fortect
Fortect é a ferramenta de reparo de PC mais popular e eficaz do mundo. Milhões de pessoas confiam nele para manter seus sistemas funcionando de forma rápida, suave e livre de erros. Com sua interface de usuário simples e mecanismo de verificação poderoso, o Fortect localiza e corrige rapidamente uma ampla gama de problemas do Windows, desde instabilidade do sistema e problemas de segurança até gerenciamento de memória e gargalos de desempenho.
946 55 emblemas de prata Distintivo de bronze 1818
Acelere o desempenho do seu computador agora com este simples download.