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-169677

Lassi's questions

Martin Hope
Lassi
Asked: 2019-08-13 06:44:26 +0800 CST

E comercial no campo passwd GECOS

  • 1

Ao expandir o /etc/passwd campo GECOS para obter o nome completo do usuário, devemos expandir apenas o primeiro e comercial ( &caractere) ou todos os e comerciais?

Em um campo GECOS com ,subcampos delimitados por vírgula ( ), o e comercial deve ser expandido apenas no primeiro subcampo (ou seja, o nome completo do usuário) ou em todos os subcampos?

Se o nome de usuário do Unix contiver letras maiúsculas, devemos preservá-las na &expansão ou devemos apenas capitalizar a primeira letra do nome de usuário e minúsculas o resto?

passwd history
  • 1 respostas
  • 280 Views
Martin Hope
Lassi
Asked: 2019-08-02 05:01:28 +0800 CST

Como emular o sistema de janelas do NeWS

  • 3

Existe uma maneira razoavelmente fácil de executar o NeWS (Network-extensible Window System, um sistema de janelas baseado em PostScript feito por pesquisadores da Sun na década de 1980) em computadores atuais?

x11 graphics
  • 1 respostas
  • 291 Views
Martin Hope
Lassi
Asked: 2019-07-21 06:00:10 +0800 CST

Por que fork() foi projetado para retornar um descritor de arquivo?

  • 15

Em sua página da web sobre o truque do tubo automático , Dan Bernstein explica uma condição de corrida select()e sinaliza, oferece uma solução alternativa e conclui que

Claro, a Coisa Certa seria ter fork()retornado um descritor de arquivo, não um ID de processo.

O que ele quer dizer com isso - é algo sobre poder select()nos processos filho manipular suas mudanças de estado em vez de ter que usar um manipulador de sinal para ser notificado dessas mudanças de estado?

signals file-descriptors
  • 4 respostas
  • 3008 Views
Martin Hope
Lassi
Asked: 2019-05-17 02:16:40 +0800 CST

Instale apenas as atualizações de segurança da Alpine

  • 0

Existe uma maneira de instalar apenas atualizações de segurança para o Alpine Linux e seus apkpacotes, ignorando atualizações que não corrigem falhas de segurança?

security package-management
  • 1 respostas
  • 637 Views
Martin Hope
Lassi
Asked: 2019-04-24 14:18:27 +0800 CST

VM de desenvolvimento fácil e gratuita do tipo Solaris

  • 3

Eu escrevi algum software Linux/BSD de código aberto com uma interface de linha de comando e gostaria de saber se posso facilmente executá-lo no Solaris também. Quais seriam as opções fáceis (ou seja, tão fáceis quanto Linux/BSD) para instalar uma máquina virtual amd64 com Solaris ou um de seus derivados para pessoas que não sabem quase nada sobre Solaris?

Deve ter (fora da caixa ou facilmente instalável):

  • conectividade com a internet
  • cliente e servidor ssh
  • bash ou zsh
  • git
  • alcatrão
  • faço
  • algum editor de texto melhor que o vi (vim ou um clone do emacs está bem)
  • qualquer compilador e vinculador C é popular entre os programadores do Solaris (muitas pessoas usam o GCC hoje em dia?)
  • Cabeçalhos C para libc, interface syscall do kernel e o que mais for normalmente necessário
  • um gerenciador de pacotes fácil seria bom, mas se ele for fornecido com as coisas acima, tudo bem também
solaris system-installation
  • 2 respostas
  • 175 Views
Martin Hope
Lassi
Asked: 2019-04-11 11:49:50 +0800 CST

Consultas Whois com saída em cores

  • 1

Existe uma maneira fácil de fazer com que as whoisconsultas do terminal tenham coloração de sintaxe na saída para que seja mais fácil de ler?

Algo básico como colorir NOT FOUNDem vermelho e nomes de campos e datas em cores diferentes já seria útil. Não importa se a coloração não for 100% precisa.

colors syntax-highlighting
  • 1 respostas
  • 285 Views
Martin Hope
Lassi
Asked: 2018-11-24 13:17:08 +0800 CST

Por que os emuladores de terminal ainda têm tela piscando?

  • 4

Por que ainda existem artefatos visuais quando os emuladores de terminal desenham aplicativos baseados em texto? Isso em computadores recentes que renderizam jogos 3D e janelas GUI, incluindo fontes vetoriais com suavização de serrilhado sem artefatos.

Vejo regularmente os seguintes artefatos que revelam etapas intermediárias do processo de atualização de tela:

  • Movimento do cursor do terminal (o cursor pisca ou salta pela tela durante a atualização)
  • Rasgando (parte da tela mostra coisas antigas enquanto outra parte mostra coisas novas)
  • Rolagem (a rolagem é perceptível, em vez da nova posição de rolagem ser mostrada imediatamente)

Os artefatos são vistos apenas por intervalos de menos de um segundo, e não durante a maioria das atualizações de tela, mas tendo crescido em GUIs sem cintilação, eu ainda gostaria de saber como evitá-los. Todos os artefatos acima (exceto rolagem) podem ser vistos, por exemplo, no vídeo ASCIInema a seguir, uma vez que ele começa a desenhar as telas mais complexas: MapSCII - o mundo inteiro em seu console!

Também não estou falando especificamente sobre atualizações lentas. Seria bom se as atualizações fossem sempre instantâneas, mas isso nem sempre é possível devido a atrasos na rede e no processamento. O que quero dizer aqui é que telas parcialmente desenhadas geralmente são visíveis por um breve momento. Na maioria das GUIs modernas, apenas telas totalmente finalizadas são mostradas ao usuário, e artefatos de desenho parcial são muito raros.

É minha impressão que o pipeline de emulação de terminal é algo assim:

  1. O usuário pressiona uma tecla no teclado
  2. Kernel passa o pressionamento de tecla do driver do teclado para o sistema de janelas
  3. O sistema de janelas passa o pressionamento de tecla para o emulador de terminal
  4. O emulador de terminal passa o pressionamento de tecla para o dispositivo de kernel pseudoterminal (pty)
  5. Pty interpreta o pressionamento de tecla e passa o resultado para o aplicativo baseado em texto
  6. O aplicativo executa o comando em resposta ao pressionamento de tecla
  7. O aplicativo renderiza uma nova tela (grade de células de caracteres) para o buffer interno
  8. Chamadas de aplicativos cursesou outra biblioteca para converter a grade de células de caracteres em códigos de escape ANSI que renderizarão uma tela equivalente no terminal
  9. A biblioteca grava esses códigos de escape ANSI no dispositivo pty
  10. Pty processa os dados escritos de alguma forma
  11. O emulador de terminal lê dados processados ​​de pty em alguns pedaços
  12. O emulador de terminal chama o sistema de janelas para renderizar o resultado dos códigos de escape ANSI na janela do terminal

Qual das etapas acima pode retardar o processo o suficiente para que o emulador de terminal nos mostre etapas intermediárias de renderização em vez de mostrar apenas o resultado final?

  • Parece que a velocidade dos terminais de hardware (conexões de porta serial) é ditada por sua taxa de transmissão, que pode ser alterada tcsetattr(), mas li em várias fontes que a configuração da taxa de transmissão não tem efeito nos dispositivos pseudoterminais (pty) usados ​​​​pelo terminal emuladores. Isso significa que os kernels Unix não limitam deliberadamente as comunicações pty?

  • Os aplicativos ou bibliotecas de renderização (curses, etc.) enviam texto e códigos ANSI em várias gravações em vez de tentar se contentar com apenas uma write()?

  • Os kernels Unix têm limites de tamanho em seus buffers de E/S internos, o que afeta coisas como a quantidade máxima de dados que podem ser enviados por um canal sem bloqueio. Isso afeta a renderização de telas de terminal com muitos detalhes (uma tela cheia de texto, muitas cores etc.)? Imagino que o texto combinado e os códigos de escape ANSI poderiam somar tantos dados que não cabem no buffer do driver pty, o que dividiria uma atualização de tela em várias operações de gravação pelo aplicativo e várias leituras pelo emulador de terminal. Se o emulador de terminal estivesse ansioso para exibir os resultados de cada leitura antes de processar a próxima, isso faria com que a exibição piscasse até que a leitura final em um lote fosse processada.

  • Os emuladores de terminal ou drivers pty têm tempos limite deliberados para processamento em lote, de modo que seu comportamento imite mais de perto os terminais de hardware, pareça mais natural ou aborde alguma outra preocupação que foi considerada mais importante do que a velocidade de exibição?

Recentemente tem havido algum esforço para fazer novos emuladores de terminal que renderizem mais rápido (por exemplo, pré-renderizando fontes em texturas OpenGL na memória de vídeo). Mas esses esforços só parecem acelerar a renderização de uma grade de células de caracteres em um bitmap de tela uma vez que a grade foi calculada.

Parece haver algo mais acontecendo que torna essas coisas fundamentalmente lentas, mesmo em um computador muito rápido. Pense nisso: se o emulador de terminal processa todos os códigos ANSI para obter uma grade de células de caracteres antes de renderizar qualquer coisa em um bitmap de tela, então não importa quão lentas sejam as rotinas de renderização de grade de caracteres para bitmap - deve haver sem cintilação (pelo menos não o tipo de cintilação que claramente parece corresponder ao movimento do cursor em um terminal de hardware, que é o que vemos com frequência). Mesmo que o emulador de terminal levasse um segundo inteiro para desenhar qualquer grade de células de caracteres na tela, simplesmente teríamos um segundo de inatividade, não um segundo de cintilação.

Um problema semelhante é que o Unix cleare os resetcomandos são incrivelmente lentos para o que fazem (da perspectiva de um usuário de GUI, eles não fazem nada mais complexo do que redesenhar um bitmap). Talvez por motivos relacionados.

terminal performance
  • 1 respostas
  • 2435 Views
Martin Hope
Lassi
Asked: 2018-04-14 23:29:35 +0800 CST

Fazendo 'sudo pkg_add' funcionar no NetBSD

  • 0

Existe alguma maneira de fazer o comando simples

sudo pkg_add some-package

trabalhar em uma instalação comum do NetBSD sem recompilar nada do código-fonte? Todos os outros sistemas Unix que experimentei fornecem um comando equivalente pronto para uso com pouco esforço.

O melhor que consegui pensar foi adicionar

export PKG_PATH="ftp://ftp.NetBSD.org/pub/pkgsrc/packages/$(uname)/$(uname -m)/$(uname -r)/All/"

mas sudo não /root/.shrclê .shrc.

A FAQ do pkgsrc, "Usando 'sudo' com o pkgsrc" diz que você pode adaptar o "recurso su(1) just-in-time do pkgsrc" para usar o sudo, mas requer a edição de um makefile e a recompilação de algo. Isso parece um requisito exorbitante para uma tarefa tão básica. Mesmo sem esta modificação, pkg_addnão me pede suquando tento instalar pacotes como um usuário normal - apenas dizpkg_add: Can't create pkgdb entry: /var/db/pkg/<...>: Permission denied

O OpenBSD tem um arquivo /etc/installurl para esse fim, mas não consegui encontrar um equivalente para o NetBSD.

netbsd pkgsrc
  • 1 respostas
  • 772 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