AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / user-302721

John P's questions

Martin Hope
John P
Asked: 2018-11-02 10:49:23 +0800 CST

Como comandos como fdisk -l encontram o tamanho do setor?

  • 6

O MBR do disco contém essas informações e, portanto, quando chamo um comando como fdisk, um código de nível de kernel eventualmente é executado e o lê de uma parte específica do MBR? Se sim, qual parte dele? Qual compensação?

Se não estiver no MBR, como esses tipos de comandos podem encontrá-lo? Eles não podem lê-lo desde o início de uma partição, considerando que precisam calcular o endereço inicial dessa partição e precisam do tamanho do setor para fazer isso, não é?

Como os comandos são fdiskimplementados para encontrar essas informações? De onde eles lêem?

linux hard-disk
  • 2 respostas
  • 1690 Views
Martin Hope
John P
Asked: 2018-10-31 12:21:03 +0800 CST

Erro ao tentar usar o Xorg: Apenas usuários do console têm permissão para executar o servidor X?

  • 30

Então, quando tento usar o comando Xorg como um usuário normal, este é o erro que me dá:

/usr/lib/xorg/Xorg.wrap: Only console users are allowed to run the X server

mas eu não entendo, quais são os "usuários do console"? e quando mudo para root me dá outro erro:

_XSERVTransSocketUNIXCreateListener: ...SocketCreateListener() failed
_XSERVTransMakeAllCOTSServerListeners: server already running
(EE) 
Fatal server error:
(EE) Cannot establish any listening sockets - Make sure an X server isn't already running(EE) 
(EE) 
Please consult the The X.Org Foundation support 
     at http://wiki.x.org
 for help. 
(EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
(EE) 
(EE) Server terminated with error (1). Closing log file.

Então, o que está acontecendo e qual é a razão para cada um desses erros?

UPDATE: e a saída do comando netstat -ln | grep -E '[.]X|:6[0-9][0-9][0-9]é:

unix  2      [ ACC ]     STREAM     LISTENING     18044    @/tmp/.X11-unix/X0
unix  2      [ ACC ]     STREAM     LISTENING     47610    @/tmp/.X11-unix/X1
unix  2      [ ACC ]     STREAM     LISTENING     18045    /tmp/.X11-unix/X0
unix  2      [ ACC ]     STREAM     LISTENING     47611    /tmp/.X11-unix/X1
linux xorg
  • 3 respostas
  • 110322 Views
Martin Hope
John P
Asked: 2018-10-26 05:17:13 +0800 CST

Os threads de um processo funcionam no mesmo espaço de memória virtual no linux?

  • 2

Então eu estava lendo esta pergunta:

https://stackoverflow.com/questions/1762418/what-resources-are-shared-between-threads

e com base na resposta, "threads compartilham todos os segmentos, exceto a pilha, mas um thread ainda pode acessar a pilha de outro thread"?

mas ainda tenho três perguntas:

  1. todas as threads de um processo funcionam no mesmo espaço de memória virtual?

  2. quando dizemos que as threads ainda podem acessar a pilha de outras threads, isso significa, por exemplo, que nossa pilha começa de 0x00 a 0xff, então uma thread pode funcionar de 0x00 a 0x0f e a outra funciona de 0x10 a 0xff? ou ..?

  3. a pilha é a única parte da memória virtual que é exclusiva por thread no linux?

linux virtual-memory
  • 1 respostas
  • 5283 Views
Martin Hope
John P
Asked: 2018-10-09 08:01:11 +0800 CST

Por que algumas bibliotecas e outras partes se repetem na memória virtual do linux com gdb?

  • 7

insira a descrição da imagem aqui

Este é o resultado de olhar para a memória virtual de um processo em gdb; Tenho algumas dúvidas sobre isso:

  1. Por que algumas partes da memória virtual são repetidas? Por exemplo, nosso programa (stack6) e biblioteca libc são repetidos 4 vezes; se eles os dividiram em partes diferentes, então por quê? Por que não apenas colocá-los todos juntos?

  2. O caminho superior (/opt/pro...) é a seção de instruções (seção de texto) da nossa memória virtual e contém apenas as instruções?

  3. Por que os tamanhos das 4 libc's são diferentes? Qual é o problema com o deslocamento, se já temos o tamanho e o endereço inicial, para que serve o deslocamento?

  4. Onde estão as seções de dados, bss, kernel e heap e por que algumas partes da imagem acima não têm informações sobre elas? Existe alguma opção melhor no gdb que realmente mostre todas as partes?

  5. Existe algum programa melhor que o gdb que mostre muito melhor a parte da memória virtual do nosso processo? Eu só quero ter um bom visual de uma memória virtual real, qual programa de depuração fornece o melhor resultado.

As seções que mencionei:

insira a descrição da imagem aqui

linux process
  • 1 respostas
  • 1641 Views
Martin Hope
John P
Asked: 2018-10-08 09:25:27 +0800 CST

Quando saltamos para a parte do kernel da memória virtual do nosso processo, exceto quando usamos chamadas de sistema? (No Linux)

  • 2

Esta é uma pergunta de acompanhamento da minha pergunta anterior .

Com base na resposta, uma chamada de sistema é um exemplo de quando pulamos para a parte do kernel da memória virtual do nosso processo.

  1. Quais são outros exemplos de um processo normal (não kernel) usando essa parte da memória virtual além das chamadas do sistema? como existe alguma chamada de função que salta diretamente para esta parte do kernel ou ..?

  2. Quando pulamos para esta seção da memória, o processador define automaticamente o bit do modo kernel para 1 para que nosso processo acesse essa parte ou não há necessidade de definir esse bit?

  3. Toda a execução dentro desta parte do kernel acontece sem a necessidade de mudança de contexto para um processo do kernel?

(Eu não queria fazer essas perguntas de acompanhamento nos comentários, então abri outro tópico.)

insira a descrição da imagem aqui

linux kernel
  • 3 respostas
  • 1321 Views
Martin Hope
John P
Asked: 2018-10-05 07:06:32 +0800 CST

A MMU está dentro do kernel Unix/Linux? ou apenas em um dispositivo de hardware com memória própria?

  • 12

Então eu sempre pensei que o MMU é parte do kernel unix que traduz endereços para endereços físicos, mas na página wiki do MMU diz que é um hardware de computador que geralmente tem sua própria memória, mas essa página não fala muito sobre sistemas operacionais Unix/Linux

Então estou confuso, toda a tradução acontece no hardware e o kernel não faz nenhuma tradução? e basicamente o sistema operacional não sabe nada sobre o endereço físico real?

Estou perguntando sobre sistemas operacionais baseados em Unix, mas se você conhece outros sistemas operacionais, bem como o Windows ou se é uma coisa geral em computadores modernos, me avise, obrigado.

kernel memory
  • 2 respostas
  • 8397 Views
Martin Hope
John P
Asked: 2018-09-30 02:15:04 +0800 CST

O Linux não tem um bit especial na tabela de páginas de processos para parar as instruções a serem executadas na pilha, impedindo os ataques de estouro?

  • 1

Então o cara desse vídeo:

https://www.youtube.com/watch?v=1S0aBV-Waeo

estourou a pilha, adulterou o endereço de retorno, apontou-o na pilha e copiou o código executável na pilha com um deslizamento NOP

mas eu pensei que todos os sistemas linux modernos, incluindo os debian, têm uma defesa contra isso usando um tipo de bit NX (não executável) na tabela de páginas e usando essas instruções de parada como essa para trabalhar na pilha? Ou eu estou esquecendo de alguma coisa?

linux memory
  • 2 respostas
  • 541 Views
Martin Hope
John P
Asked: 2018-09-29 23:09:32 +0800 CST

Qual é a utilidade de ter uma parte do kernel no espaço de memória virtual dos processos Linux?

  • 20

Encontrei uma pergunta semelhante, mas ainda não responde às minhas perguntas Os espaços de endereço virtual de todos os processos têm o mesmo conteúdo em suas partes "Kernel"?

  1. Primeiro, considerando que os processos do usuário não têm acesso a essa parte e acho que se eles tentarem acessá-la, isso levaria a um erro, então por que incluir essa parte no espaço virtual do processo do usuário? Vocês podem me dar um cenário da vida real dessa parte sendo essencial e útil?

  2. Além disso, mais uma pergunta é que eu sempre pensei que a parte do kernel da memória é dinâmica, o que significa que pode crescer, por exemplo, quando usamos bibliotecas dinâmicas em nossos programas, então é verdade? Em caso afirmativo, como o sistema operacional pode determinar o tamanho do kernel no espaço virtual de nossos processos?

  3. E quando nosso kernel na memória física cresce ou muda, o mesmo efeito acontece na parte do kernel da memória virtual para todos os processos? O mapeamento desse kernel virtual para o kernel real é um mapeamento de um para um?

insira a descrição da imagem aqui

linux kernel
  • 2 respostas
  • 8194 Views

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Possível firmware ausente /lib/firmware/i915/* para o módulo i915

    • 3 respostas
  • Marko Smith

    Falha ao buscar o repositório de backports jessie

    • 4 respostas
  • Marko Smith

    Como exportar uma chave privada GPG e uma chave pública para um arquivo

    • 4 respostas
  • Marko Smith

    Como podemos executar um comando armazenado em uma variável?

    • 5 respostas
  • Marko Smith

    Como configurar o systemd-resolved e o systemd-networkd para usar o servidor DNS local para resolver domínios locais e o servidor DNS remoto para domínios remotos?

    • 3 respostas
  • Marko Smith

    apt-get update error no Kali Linux após a atualização do dist [duplicado]

    • 2 respostas
  • Marko Smith

    Como ver as últimas linhas x do log de serviço systemctl

    • 5 respostas
  • Marko Smith

    Nano - pule para o final do arquivo

    • 8 respostas
  • Marko Smith

    erro grub: você precisa carregar o kernel primeiro

    • 4 respostas
  • Marko Smith

    Como baixar o pacote não instalá-lo com o comando apt-get?

    • 7 respostas
  • Martin Hope
    user12345 Falha ao buscar o repositório de backports jessie 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl Por que a maioria dos exemplos do systemd contém WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky Como exportar uma chave privada GPG e uma chave pública para um arquivo 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll status systemctl mostra: "Estado: degradado" 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim Como podemos executar um comando armazenado em uma variável? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S Por que /dev/null é um arquivo? Por que sua função não é implementada como um programa simples? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 Como ver as últimas linhas x do log de serviço systemctl 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - pule para o final do arquivo 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla Por que verdadeiro e falso são tão grandes? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis Substitua a string em um arquivo de texto enorme (70 GB), uma linha 2017-12-30 06:58:33 +0800 CST

Hot tag

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve