DragonFly BSD

Tela Software:
DragonFly BSD
Detalhes de Software:
Versão: 5.2.2 Atualizado
Data de upload: 22 Jun 18
Revelador: The DragonFly Team
Licença: Livre
Popularidade: 50

Rating: 5.0/5 (Total Votes: 1)

O DragonFly BSD é um sistema operacional BSD de código aberto projetado para ser a continuação lógica da série de sistemas operacionais FreeBSD-4.x. É muito semelhante a outras distribuições baseadas em BSD, como FreeBSD, NetBSD ou OpenBSD. É uma bifurcação no caminho, por assim dizer, dando à base BSD uma oportunidade de crescer em uma direção inteiramente nova daquela tomada na série FreeBSD-5. Além disso, inclui um conjunto exclusivo de recursos que o diferencia de outros sistemas operacionais similares.


HAMMER é a principal atração

O HAMMER é a principal atração do FreeBSD, um moderno sistema de arquivos de alto desempenho que apresenta funcionalidade de acesso histórico e espelhamento integrado. O kernel também é uma das razões pelas quais o FreeBSD é uma distribuição BSD melhor.

Oferece dois agendadores diferentes para o kernel

O kernel do DragonFly inclui dois programadores diferentes, um que agenda todas as entidades executáveis ​​(Lightweight Kernel Thread) e outro que seleciona um único thread de usuário por vez para cada processador e abstrai os threads do usuário (User Thread Scheduler). Adicionalmente, o kernel possui um alocador de memória de kernel complexo composto de um alocador de memória orientado a objetos e um malloc de kernel básico chamado kmalloc (), o sistema de arquivos do dispositivo DragonFly (DEVFS), um kernel virtual (VKERNEL), assincronização NFS V3 RPC e estrutura do agendador de E / S de disco (dsched).


Recursos, muitos recursos

Entre outras características interessantes, podemos mencionar o NULL Filesystem Layer (NULLFS) que suporta pontos de montagem arbitrários não-loop, TMPFS (Temporary Filesystem VFS), criptografia de disco transparente, suporte SSD (Solid Storage Device) gerenciado, variante symlinks), DNTPD (daemon de tempo de rede de libélulas) e DMA (agente de correio de DragonFly). Além disso, os usuários poderão fazer checkpoints ou suspender processos no disco a qualquer momento. A distro fornece drivers AHCI fortes, nomes de dispositivos estáveis, bem como criptografia e gerenciamento de volume bem fundamentados.

Linha de fundo

No geral, o DragonFly prova ser um sistema operacional semelhante ao UNIX moderno, fácil de usar e muito acessível. Ele pode ser usado diariamente como um sistema desktop ou como um poderoso servidor BSD.

O que há de novo nesta versão:

  • A versão 5.2.1 do DragonFly foi lançada, com a atenuação do Meltdown / Specter, muitas melhorias no HAMMER2, ipfw e vídeo acelerado, além da correção (no 5.2.1 atualização) do CVE-2018-8897.

O que há de novo na versão:

  • Christian Groessler (1):
  • telnetd: imprime informações do sistema (SO e arquitetura) antes do login.
  • Matthew Dillon (7):
  • hammer2 - Corrigir divisão por 0 corrida
  • kernel - MFC seletivo do trabalho de kernel umtx do mestre
  • kernel - Documentação de atualização do umtx
  • libc e pthreads - Correção de problemas do atfork com o nmalloc, atualização do dmalloc
  • hammer2 - Corrigir renomear corrida
  • hammer2 - otimizar hammer2_pfs_memory_wakeup ()
  • hammer2 - Corrige correntes sujas indefinidas devido a renomeação
  • Sascha Wildner (5):
  • hammer2.8: Corrigir erro de digitação.
  • Diga "hammer2" em vez de "hammer" em vários lugares.
  • mtree: corrija o proprietário de vários diretórios em / usr / share.
  • libc / nls: Use o código do idioma atual (definido por encadeamento).
  • libarchive: Reverte o commit que não foi feito para ser enviado.

O que há de novo na versão 4.8.1:

  • Kernel:
  • Refator o código do cache do buffer para remover reservas dinâmicas do KVA. Em vez disso, todo o KVA é reservado no momento da inicialização. Salva-nos de IPIs desnecessários e permite uma simplificação significativa do código do cache de buffer.
  • Adicione vfs.repurpose_enable (em teste, desativado por padrão). Esse recurso pode ser ativado para reduzir significativamente a carga de gerenciamento de IPI e VM em uma máquina que está realizando grandes quantidades de E / S de arquivo, por exemplo, de um SSD NVMe, ignorando o mecanismo normal de reciclagem de página da VM. Quando ativado, o recurso só dispara sob altas cargas de E / S. Ele funciona reutilizando as páginas da VM subjacentes a um buffer in-loco (quando possível) para não ter que remover / digitar as páginas no KVA do buffer. A reciclagem normal de páginas da VM (que, de outra forma, seria sobrecarregada pela carga de E / S) também é ignorada.
  • Altere como o IPIQ é processado, em particular, crie um mecanismo de vetor Xinterrupt independente para invalidações de página que ignoram (operarão) mesmo se uma seção crítica for mantida. Implemente machdep.optimized_invltlb (desabilitado por padrão, em teste), o que evita o envio de IPIs de invalidação para ociosos.
  • Corrija várias raças que podem ocorrer sob cargas extremas. A maioria dos casos de uso nunca os acionaria, mas nossas caixas de construção funcionavam ocasionalmente. Por exemplo, houve uma corrida de duas instruções em que o bit cpu para um pmap seria limpo (para duas instruções) e faria com que um IPI de TLB ocorresse ao mesmo tempo em outra cpu para o mesmo pmap não percebesse que cpu estava usando o pmap . A correção é desativar a otimização de recarregamento do CR3 para o caso de switch LWP- & gt; LWP (mesmo proc).
  • Corrija um bug do HAMMER que poderia resultar em um erro de CRC de dados sendo relatado incorretamente.
  • Corrigir uma gravação dupla acionada pela maneira como o HAMMER usa o cluster_write (). Isso melhora significativamente o desempenho de gravação do HAMMER.
  • Várias outras limpezas e correções do HAMMER também foram feitas.
  • Correção de um bloqueio de hardware que pode ocorrer em getpbuf * () devido a uma má interpretação do valor de retorno de uma operação atômica.
  • Corrija uma interrupção de empilhamento que pode ocorrer em uma janela de 10 instruções, possivelmente (mas não encontrada no estado natural) executando a pilha do kernel.
  • Corte os IPIs relacionados ao meio para determinadas operações de cache de buffer, não se incomodando em invalidar o TLB e, no outro lado, sempre invalidando o TLB ao inserir um novo PTE, mesmo que o conteúdo anterior seja inválido. Isso melhora o desempenho e também facilita a depuração, removendo uma otimização problemática.
  • Corrigir um número de raças SMP difíceis de disparar, em particular uma relacionada a fazer quantidades simultâneas de diferentes pontos de montagem que a compilação em massa poderia acionar. Corrigir também uma corrida mountctl vs umount.
  • Reduza o número de operações atômicas no caminho do comutador.
  • Corrigir uma corrida / pânico de namecache que pode ocorrer sob cargas extremas, juntamente com muita atividade de montagem / desmontagem.
  • Restringir% de amostragem de extração à raiz.
  • Corrigir um problema getpid () em vfork () quando encadeado. Em particular, vfork () s simultâneo em um programa encadeado pode fazer com que o PID errado seja retornado por getpid () no filho antes do exec.
  • Corrija uma corrida rara de tsleep / callout quando o cronômetro de callout é acionado antes que o tsleep () seja completamente configurado.
  • Limpe as mensagens de bloqueio do namecache no console. Em particular, relate o tempo decorrido adequado e o td_comm do encadeamento envolvido.
  • Reduza ainda mais o teste de memória e o zeramento de inicialização antecipada para melhorar os tempos de inicialização em sistemas com grandes quantidades de memória RAM.
  • Remove completamente o código de anulação de página ociosa. Zerar uma página em uma cpu moderna sob demanda é melhor por vários motivos e pode, na verdade, ser mais rápido quando combinado com o consumidor acessando dados na página, devido a efeitos de cache. Remova PG_ZERO, porque não é mais necessário. A remoção do PG_ZERO também torna o kernel mais depurável, removendo outra possível fonte de contaminação cruzada.
  • Refatore e conclua a implementação da localização da CPU para alocações de memória do kernel. Combine com a consciência NUMA. Isso funciona para estruturas de dados do kernel localizadas ou de curta duração. Os dois são combinados em nossa abstração PQ_L2_SIZE, que costumava ser o código de coloração da página da VM. Este código agora também lida com a localização da CPU e o reconhecimento da NUMA.
  • Corrija muitos problemas de vkernel e melhore significativamente o desempenho do vkernel.
  • Atualize kern.proc.pathname, um sysctl usado por programas para encontrar o caminho do programa em execução. Este sysctl foi originalmente implementado antes de armazenarmos dados suficientes para retornar um caminho completo e adequado.
  • Sincronize o ACPICA da Intel (esta é uma ocorrência regular).
  • Corrija a montagem ABI do memcpy (). O assembly não estava retornando o argumento original (dst). Não corrige nenhum problema conhecido, mas fecha um buraco quando o GCC às vezes decide chamar o memcpy enquanto gera código.
  • Muitos commits para limpar -O2 avisos e erros. O kernel agora é compilado -O2 por padrão.
  • Adicione uma solução alternativa para um rendimento inadequado no caminho da ACPI (também conhecido como código ACPI com bugs).
  • Corrija uma corrida STOP / CONT que pode ser acionada por um sinal pendente na hora errada.
  • Correções do coredump segmentado e correção de um bloqueio relacionado ao mesmo quando vários segmentos do mesmo processo seg-fault ao mesmo tempo.
  • Corrigir um deadlock CAM / VM que pode ocorrer devido a um bug no uiomove_nofault (). Isso pode causar um "buffer de espera indefinido" durante paginação / troca pesada.
  • Adicione código para detectar e lidar com IPIs perdidos. Isto é principalmente para vkernels onde alguns hosts virtuais podem perder IPIs. CPUs reais não devem perder IPIs.
  • Várias correções para clock_gettime ().
  • Remova mais vestígios do MPLOCK. Todos os caminhos críticos há muito desapareceram desse bloqueio, mas ainda há alguns lugares não críticos que o usam.
  • Refaça o código de morte do processo com pouca memória e corrija várias corridas que podem impedir o funcionamento do recurso.
  • Corrigir um bloqueio de sistema com o VMM e refatorar o código VMX.
  • Corrigir um deadlock quando o numvnodes atingir maxvnodes, o que pode ocorrer sob cargas pesadas. Também corrija um pequeno vazamento de memória do kernel quando 'df' ou sincronia do sistema de arquivos disputa um umount. Também reduza modestamente o cálculo de maxvnodes. Por exemplo, uma máquina com 8 GB de RAM agora configurará maxvnodes para 478483 em vez de 598103.
  • Corrija um pânico raro que pode ser acionado por vm_object_page_remove () quando user_yield () é indevidamente chamado enquanto segura um spinlock e decide desescalonar.
  • Reduza o tamanho de algumas estruturas de kernel alocadas dinamicamente. Em particular, as alocações de tabela de hash do inode de tamanho excessivo agora são menores. Principalmente afeta o UFS (que DragonFlyBSD não usa muito).
  • Adicione uma solução alternativa para o AMD erratum 793.
  • Corrigir um deadlock que pode ocorrer em chamadas de E / S de cluster empilhado _ * ().
  • Corrigir um bug em que o carregamento recursivo do módulo pode travar.
  • Corrija um bug bobo no código de nome de jogo do NFS (NFS do lado do servidor) que poderia fazer com que o código de nome de argumento do servidor NFS nunca remova o arquivo bobo-renomeado. Que bobagem!
  • Faça um trabalho melhor acomodando configurações de ncpu + baixa memória.
  • Refaça os spinlocks compartilhados para reduzir a quantidade de rotação que pode ocorrer quando vários processadores de computador adquirem um spinlock compartilhado ao mesmo tempo.
  • Revise as operações de cache de nomes para reduzir ainda mais a contenção de SMP. Isso melhora o desempenho de um único componente simultâneo e não conflitante em pelo menos 25x em sistemas com muitos núcleos e reduz significativamente as operações de ref e unref de estrutura de vnode e montagem.
  • Revise várias outras estruturas de kernel para melhorar a localidade do cache e reduzir o salto da linha de cache.
  • Corrigir um erro no código de renomeação de arquivos do SMBFS.
  • Implemente RLIMIT_RSS, um limitador de RSS por processo que forçará a paginação localizada em uma base por processo. Esse recurso pode ser usado para evitar que um processo transforme o restante da máquina em um caso difícil.
  • Aumenta o espaço de troca máximo suportado. O máximo agora é limitado principalmente pelo RAM e estará nas dezenas de terabytes (se você tiver memória RAM suficiente para as estruturas de gerenciamento de suporte). Também aumenta o KVM do kernel de 128G para 511G.
  • Implemente a exclusão pmap dinâmica (desativada por padrão). Isso direciona o código pmap para excluir páginas da tabela de páginas intermediárias e PDs do pmap na hora. Pode ser útil se a memória estiver em um prêmio, mas observe que, se ativada, ela retardará a execução de programas que alocam e desalocam a memória a uma taxa alta.
  • Refaça como os níveis "bons" do usuário funcionam, tornando os valores agradáveis ​​selecionados mais significativos do que costumavam ser.
  • Adicione um driver NVME nativo de alto desempenho ao FreeBSD, escrito por Matt Dillon. Esse driver usará vetores MSI-X e todas as filas disponíveis suportadas pelo dispositivo, localização por cpu sem bloqueio ou bloqueio mínimo (sem conflitos de SMP na maioria dos casos) e capacidade de IOPS e taxa de transferência insanos.
  • Gráficos:
  • Estabilize Broadwell e Skylake, traga-nos para o DRM equivalente ao Linux 4.6.
  • Implemente a API do Linux i2c para tornar a portabilidade mais fácil.
  • Corrigir alguns bugs antigos, incluindo uma reversão de ordem de bloqueio, que poderia interromper a reprodução de vídeo (e o restante do X).
  • Corrigir um erro de prioridade de encadeamento do kernel drm que permitia que os processos do usuário tivessem uma prioridade mais alta que o encadeamento auxiliar do drm. Isso corrige a maioria das barracas de vídeo temporárias informadas nos navegadores.
  • Lidar com framebuffer EFI passando para o DRM, melhorar a comutação VT do syscons e corrigir um impasse relacionado. Além disso, o kernel tenta voltar para o console VT a partir do X quando ocorrer um pânico.
  • Rede:
  • Muitas melhorias em toda a linha.
  • iwm - Corrige um problema causado pela lógica invertida. Inúmeras outras melhorias que melhoram significativamente o desempenho.
  • wlan - Suporte para varredura bg assíncrona e outros recursos adicionados.
  • Outros drivers:
  • nvme - Adicionado à compilação do kernel padrão, além de correções e melhorias de desempenho.
  • mmcsd - Suporte significativo para eMMC adicionado ao FreeBSD.
  • ahci - Alguns ajustes de compatibilidade e outras peculiaridades adicionadas para suportar chipsets quebrados, em especial multiplicadores de porta. Implemente também o FBS (FIS-Based-Switching) quando suportado pelo chipset.
  • Suporte para Trackpoint e Elantech adicionado.
  • Userland:
  • systat aprimorada para reduzir várias interrupções pertencentes ao mesmo driver, pois geralmente há muitas para listar agora.
  • systat -vm 1 foi significativamente aprimorado e reformulado para relatar informações mais úteis e para descompactar os campos para que eles não se encontrem. E adicione 'nvme' à correspondência de dispositivo de bloco. Também ajuste a exibição estendida de vmstats e altere a maneira como ozfod e nzfod são relatados.
  • 'vmstat 1' saída refatorada. Todos os campos estavam colidindo uns com os outros devido ao alto desempenho de uma máquina moderna em relação ao que existia há 30 anos.
  • Altere a sinalização mount / mountd para reduzir as varreduras e comandos desnecessários da lista de montagem das operações mount_null e mount_tmpfs. Só importa realmente sob uso simultâneo pesado de mount / umount, mas a compilação em massa realmente cria essa situação.
  • Corrija vários vazamentos fork / exec * () que a libc pode disparar devido a não usar O_CLOEXEC de maneira atômica. Adicione vários recursos O_CLOEXEC a funções como popen () e mk * stemp * () (add mkostemp () e mkostemps ()). Corrigir um vazamento de descritor de arquivo no popen () ao executar em um ambiente encadeado.
  • Seja mais legal pthreads em vfork () dando ao lwp do novo subprocesso o mesmo TID daquele que chamou vfork (). Isso permite que funções de suporte pthread sejam executadas no filho durante o vfork sem implodir pthreads.
  • Muitas correções de compatibilidade nos cabeçalhos para melhorar as compilações em massa do dports.
  • Várias importações do OpenSSL para correções de segurança.
  • Ressincronize o OpenSSH para facilitar a atualização.
  • Separe os sinalizadores do kernel C fazendo com que o kernel construa use KCFLAGS ao invés de CFLAGS.
  • Remova vários drivers ISA antigos da árvore completamente. Como o DragonFlyBSD é agora apenas de 64 bits, podemos começar a remover drivers antigos que não existem em plataformas de 64 bits.
  • Introduza WORLD_CFLAGS e WORLD_CCOPTLEVEL, com o padrão -O. Isso facilita a compilação do seu mundo -O2 ou o que for (por exemplo, WORLD_CCOPTLEVEL = 2). No entanto, desencorajamos o uso de 3 ou superior. Os valores válidos são 0, 1, 2, 3, s, g e 'fast'.
  • Ajuste a formatação de STATUS para ps para torná-lo mais legível e para remover sinalizadores antigos que não são mais aplicáveis ​​e apenas crie desordem.
  • Corrija o alinhamento malloc () para pequenas alocações. O alinhamento mínimo é agora 16 para alocações no intervalo de 16-128 bytes em vez de 8. Observe que as alocações de potência de 2 sempre foram naturalmente alinhadas, mas alguns programas usam múltiplos de (por exemplo) 16, como '48' e Assuma o alinhamento de 16 bytes.
  • Fortunas refatoradas, adicionadas.
  • powerd - Adiciona gerenciamento baseado em temperatura para energizar com uma nova opção -H Lotemp: hightemp. Esse recurso é extremamente útil em laptops com resfriamento deficiente e cujos BIOS são intencionalmente acelerados a uma temperatura muito alta. O Powerd agora também detecta alterações de estado de energia (que podem alterar a lista de freqüências disponíveis) e transita adequadamente o serviço quando ocorre uma alteração no estado de energia.
  • Muitas correções e ajustes libthread_xu / pthreads para melhorar a compatibilidade dos dows.
  • Adicione recursos de cópia na gravação ao vkernel. Por exemplo, permite que vários vkernels usem uma única imagem de disco tendo cada uma delas modificações COW internamente para ram.
  • / usr / src / secure rewired, conflitos removidos da libmd, libcrypt.
  • Várias ferramentas foram atualizadas no sistema básico:
  • Compilador atualizado para o GCC 5.4.1.
  • Agora temos um vinculador de ouro com LTO.
  • binutils 2.25
  • menos 481.
  • OpenSSL / LibRESSL completamente renovado. Base agora usa libressl.
  • Várias atualizações de fuso horário.
  • Status do martelo:
  • Melhorias diversas. Uma coisa que não chegou ao lançamento foi um salto de versão para usar um algoritmo CRC mais rápido com um polinômio diferente. Este trabalho terá o MFC para ser liberado assim que o teste for concluído. No entanto, os usuários não devem se preocupar muito com isso porque a correção de desempenho mais séria está no release (uma correção para o código cluster_write () para gravações do sistema de arquivos).
  • Status do Hammer2:
  • O desenvolvimento continua, mas ainda não há notícias sobre o primeiro lançamento.
  • Status do clang:
  • Uma estrutura inicial foi adicionada para usar o clang como o compilador base alternativo no FreeBSD, para substituir o gcc 4.7. Ainda não está completo. Clang pode, claro, ser adicionado como um pacote.
  • status de 64 bits:
  • Observe que o FreeBSD é um sistema operacional somente de 64 bits a partir do 4.6 e não será executado em hardware de 32 bits.
  • O suporte da AMD Ryzen está no lançamento e mais trabalhos serão trazidos à medida que novos desenvolvimentos da Ryzen ocorrerem. Há alguns problemas de topologia relatados pela CPU que serão corrigidos e MFC. Existem alguns problemas de estabilidade atualmente aguardando uma atualização de microcódigo da AMD para resolver / retestar. Os usuários do Ryzen podem ter certeza de que estamos ficando por cima disso!

O que há de novo na versão 4.8.0:

  • Kernel:
  • Refator o código do cache do buffer para remover reservas dinâmicas do KVA. Em vez disso, todo o KVA é reservado no momento da inicialização. Salva-nos de IPIs desnecessários e permite uma simplificação significativa do código do cache de buffer.
  • Adicione vfs.repurpose_enable (em teste, desativado por padrão). Esse recurso pode ser ativado para reduzir significativamente a carga de gerenciamento de IPI e VM em uma máquina que está realizando grandes quantidades de E / S de arquivo, por exemplo, de um SSD NVMe, ignorando o mecanismo normal de reciclagem de página da VM. Quando ativado, o recurso só dispara sob altas cargas de E / S. Ele funciona reutilizando as páginas da VM subjacentes a um buffer in-loco (quando possível) para não ter que remover / digitar as páginas no KVA do buffer. A reciclagem normal de páginas da VM (que, de outra forma, seria sobrecarregada pela carga de E / S) também é ignorada.
  • Altere como o IPIQ é processado, em particular, crie um mecanismo de vetor Xinterrupt independente para invalidações de página que ignoram (operarão) mesmo se uma seção crítica for mantida. Implemente machdep.optimized_invltlb (desativado por padrão, sob teste), o que evita o envio de IPIs de invalidação para ociosos.
  • Corrija várias raças que podem ocorrer sob cargas extremas. A maioria dos casos de uso nunca os acionaria, mas nossas caixas de construção funcionavam ocasionalmente. Por exemplo, houve uma corrida de duas instruções em que o bit cpu para um pmap seria limpo (para duas instruções) e faria com que um IPI de TLB ocorresse ao mesmo tempo em outra cpu para o mesmo pmap não percebesse que cpu estava usando o pmap . A correção é desativar a otimização de recarregamento do CR3 para o caso de switch LWP- & gt; LWP (mesmo proc).
  • Corrija um bug do HAMMER que poderia resultar em um erro de CRC de dados sendo relatado incorretamente.
  • Corrigir uma gravação dupla acionada pela maneira como o HAMMER usa o cluster_write (). Isso melhora significativamente o desempenho de gravação do HAMMER.
  • Várias outras limpezas e correções do HAMMER também foram feitas.
  • Correção de um bloqueio de hardware que pode ocorrer em getpbuf * () devido a uma má interpretação do valor de retorno de uma operação atômica.
  • Corrija uma interrupção de empilhamento que pode ocorrer em uma janela de 10 instruções, possivelmente (mas não encontrada no estado natural) executando a pilha do kernel.
  • Corte os IPIs relacionados ao meio para determinadas operações de cache de buffer, não se incomodando em invalidar o TLB e, no outro lado, sempre invalidando o TLB ao inserir um novo PTE, mesmo que o conteúdo anterior seja inválido. Isso melhora o desempenho e também facilita a depuração, removendo uma otimização problemática.
  • Corrigir um número de raças SMP difíceis de disparar, em particular uma relacionada a fazer quantidades simultâneas de diferentes pontos de montagem que a compilação em massa poderia acionar. Corrigir também uma corrida mountctl vs umount.
  • Reduza o número de operações atômicas no caminho do comutador.
  • Corrigir uma corrida / pânico de namecache que pode ocorrer sob cargas extremas, juntamente com muita atividade de montagem / desmontagem.
  • Restringir% de amostragem de extração à raiz.
  • Corrigir um problema getpid () em vfork () quando encadeado. Em particular, vfork () s simultâneo em um programa encadeado pode fazer com que o PID errado seja retornado por getpid () no filho antes do exec.
  • Corrija uma corrida rara de tsleep / callout quando o cronômetro de callout é acionado antes que o tsleep () seja completamente configurado.
  • Limpe as mensagens de bloqueio do namecache no console. Em particular, relate o tempo decorrido adequado e o td_comm do encadeamento envolvido.
  • Reduza ainda mais o teste de memória e o zeramento de inicialização antecipada para melhorar os tempos de inicialização em sistemas com grandes quantidades de memória RAM.
  • Remove completamente o código de anulação de página ociosa. Zerar uma página em uma cpu moderna sob demanda é melhor por vários motivos e pode, na verdade, ser mais rápido quando combinado com o consumidor acessando dados na página, devido a efeitos de cache. Remova PG_ZERO, porque não é mais necessário. A remoção do PG_ZERO também torna o kernel mais depurável, removendo outra possível fonte de contaminação cruzada.
  • Refatore e conclua a implementação da localização da CPU para alocações de memória do kernel. Combine com a consciência NUMA. Isso funciona para estruturas de dados do kernel localizadas ou de curta duração. Os dois são combinados em nossa abstração PQ_L2_SIZE, que costumava ser o código de coloração da página da VM. Este código agora também lida com a localização da CPU e o reconhecimento da NUMA.
  • Corrija muitos problemas de vkernel e melhore significativamente o desempenho do vkernel.
  • Atualize kern.proc.pathname, um sysctl usado por programas para encontrar o caminho do programa em execução. Este sysctl foi originalmente implementado antes de armazenarmos dados suficientes para retornar um caminho completo e adequado.
  • Sincronize o ACPICA da Intel (esta é uma ocorrência regular).
  • Corrija a montagem ABI do memcpy (). O assembly não estava retornando o argumento original (dst). Não corrige nenhum problema conhecido, mas fecha um buraco quando o GCC às vezes decide chamar o memcpy enquanto gera código.
  • Muitos commits para limpar -O2 avisos e erros. O kernel agora é compilado -O2 por padrão.
  • Adicione uma solução alternativa para um rendimento inadequado no caminho da ACPI (também conhecido como código ACPI com bugs).
  • Corrija uma corrida STOP / CONT que pode ser acionada por um sinal pendente na hora errada.
  • Correções do coredump segmentado e correção de um bloqueio relacionado ao mesmo quando vários segmentos do mesmo processo seg-fault ao mesmo tempo.
  • Corrigir um deadlock CAM / VM que pode ocorrer devido a um bug no uiomove_nofault (). Isso pode causar um "buffer de espera indefinido" durante paginação / troca pesada.
  • Adicione código para detectar e lidar com IPIs perdidos. Isto é principalmente para vkernels onde alguns hosts virtuais podem perder IPIs. CPUs reais não devem perder IPIs.
  • Várias correções para clock_gettime ().
  • Remova mais vestígios do MPLOCK. Todos os caminhos críticos há muito desapareceram desse bloqueio, mas ainda há alguns lugares não críticos que o usam.
  • Refaça o código de morte do processo com pouca memória e corrija várias corridas que podem impedir o funcionamento do recurso.
  • Corrigir um bloqueio de sistema com o VMM e refatorar o código VMX.
  • Corrigir um deadlock quando o numvnodes atingir maxvnodes, o que pode ocorrer sob cargas pesadas. Também corrija um pequeno vazamento de memória do kernel quando 'df' ou sincronia do sistema de arquivos disputa um umount. Também reduza modestamente o cálculo de maxvnodes. Por exemplo, uma máquina com 8 GB de RAM agora configurará maxvnodes para 478483 em vez de 598103.
  • Corrija um pânico raro que pode ser acionado por vm_object_page_remove () quando user_yield () é indevidamente chamado enquanto segura um spinlock e decide desescalonar.
  • Reduza o tamanho de algumas estruturas de kernel alocadas dinamicamente. Em particular, as alocações de tabela de hash do inode de tamanho excessivo agora são menores. Principalmente afeta o UFS (que DragonFlyBSD não usa muito).
  • Adicione uma solução alternativa para o AMD erratum 793.
  • Corrigir um deadlock que pode ocorrer em chamadas de E / S de cluster empilhado _ * ().
  • Corrigir um bug em que o carregamento recursivo do módulo pode travar.
  • Corrija um bug bobo no código de nome de jogo do NFS (NFS do lado do servidor) que poderia fazer com que o código de nome de argumento do servidor NFS nunca remova o arquivo bobo-renomeado. Que bobagem!
  • Faça um trabalho melhor acomodando configurações de ncpu + baixa memória.
  • Refaça os spinlocks compartilhados para reduzir a quantidade de rotação que pode ocorrer quando vários processadores de computador adquirem um spinlock compartilhado ao mesmo tempo.
  • Revise as operações de cache de nomes para reduzir ainda mais a contenção de SMP. Isso melhora o desempenho de um único componente simultâneo e não conflitante em pelo menos 25x em sistemas com muitos núcleos e reduz significativamente as operações de ref e unref de estrutura de vnode e montagem.
  • Revise várias outras estruturas de kernel para melhorar a localidade do cache e reduzir o salto da linha de cache.
  • Corrigir um erro no código de renomeação de arquivos do SMBFS.
  • Implemente RLIMIT_RSS, um limitador de RSS por processo que forçará a paginação localizada em uma base por processo. Esse recurso pode ser usado para evitar que um processo transforme o restante da máquina em um caso difícil.
  • Aumenta o espaço de troca máximo suportado. O máximo agora é limitado principalmente pelo RAM e estará nas dezenas de terabytes (se você tiver memória RAM suficiente para as estruturas de gerenciamento de suporte). Também aumenta o KVM do kernel de 128G para 511G.
  • Implemente a exclusão pmap dinâmica (desativada por padrão). Isso direciona o código pmap para excluir páginas da tabela de páginas intermediárias e PDs do pmap na hora. Pode ser útil se a memória estiver em um prêmio, mas observe que, se ativada, ela retardará a execução de programas que alocam e desalocam a memória a uma taxa alta.
  • Refaça como os níveis "bons" do usuário funcionam, tornando os valores agradáveis ​​selecionados mais significativos do que costumavam ser.
  • Adicione um driver NVME nativo de alto desempenho ao FreeBSD, escrito por Matt Dillon. Esse driver usará vetores MSI-X e todas as filas disponíveis suportadas pelo dispositivo, localização por cpu sem bloqueio ou bloqueio mínimo (sem conflitos de SMP na maioria dos casos) e capacidade de IOPS e taxa de transferência insanos.
  • Gráficos:
  • Estabilize Broadwell e Skylake, traga-nos para o DRM equivalente ao Linux 4.6.
  • Implemente a API do Linux i2c para tornar a portabilidade mais fácil.
  • Corrigir alguns bugs antigos, incluindo uma reversão de ordem de bloqueio, que poderia interromper a reprodução de vídeo (e o restante do X).
  • Corrigir um erro de prioridade de encadeamento do kernel drm que permitia que os processos do usuário tivessem uma prioridade mais alta que o encadeamento auxiliar do drm. Isso corrige a maioria das barracas de vídeo temporárias informadas nos navegadores.
  • Lidar com framebuffer EFI passando para o DRM, melhorar a comutação VT do syscons e corrigir um impasse relacionado. Além disso, o kernel tenta voltar para o console VT a partir do X quando ocorrer um pânico.
  • Rede:
  • Muitas melhorias em toda a linha.
  • iwm - Corrige um problema causado pela lógica invertida. Inúmeras outras melhorias que melhoram significativamente o desempenho.
  • wlan - Suporte para varredura bg assíncrona e outros recursos adicionados.
  • Outros drivers:
  • nvme - Adicionado à compilação do kernel padrão, além de correções e melhorias de desempenho.
  • mmcsd - Suporte significativo para eMMC adicionado ao FreeBSD.
  • ahci - Alguns ajustes de compatibilidade e outras peculiaridades adicionadas para suportar chipsets quebrados, em especial multiplicadores de porta. Implemente também o FBS (FIS-Based-Switching) quando suportado pelo chipset.
  • Suporte para Trackpoint e Elantech adicionado.
  • Userland:
  • systat aprimorada para reduzir várias interrupções pertencentes ao mesmo driver, pois geralmente há muitas para listar agora.
  • systat -vm 1 foi significativamente aprimorado e reformulado para relatar informações mais úteis e para descompactar os campos para que eles não se encontrem. E adicione 'nvme' à correspondência de dispositivo de bloco. Também ajuste a exibição estendida de vmstats e altere a maneira como ozfod e nzfod são relatados.
  • 'vmstat 1' saída refatorada. Todos os campos estavam colidindo uns com os outros devido ao alto desempenho de uma máquina moderna em relação ao que existia há 30 anos.
  • Altere a sinalização mount / mountd para reduzir as varreduras e comandos desnecessários da lista de montagem das operações mount_null e mount_tmpfs. Só importa realmente sob uso simultâneo pesado de mount / umount, mas a compilação em massa realmente cria essa situação.
  • Corrija vários vazamentos fork / exec * () que a libc pode disparar devido a não usar O_CLOEXEC de maneira atômica. Adicione vários recursos O_CLOEXEC a funções como popen () e mk * stemp * () (add mkostemp () e mkostemps ()). Corrigir um vazamento de descritor de arquivo no popen () ao executar em um ambiente encadeado.
  • Seja mais legal pthreads em vfork () dando ao lwp do novo subprocesso o mesmo TID daquele que chamou vfork (). Isso permite que funções de suporte pthread sejam executadas no filho durante o vfork sem implodir pthreads.
  • Muitas correções de compatibilidade nos cabeçalhos para melhorar as compilações em massa do dports.
  • Várias importações do OpenSSL para correções de segurança.
  • Ressincronize o OpenSSH para facilitar a atualização.
  • Separe os sinalizadores do kernel C fazendo com que o kernel construa use KCFLAGS ao invés de CFLAGS.
  • Remova vários drivers ISA antigos da árvore completamente. Como o DragonFlyBSD é agora apenas de 64 bits, podemos começar a remover drivers antigos que não existem em plataformas de 64 bits.
  • Introduza WORLD_CFLAGS e WORLD_CCOPTLEVEL, com o padrão -O. Isso facilita a compilação do seu mundo -O2 ou o que for (por exemplo, WORLD_CCOPTLEVEL = 2). No entanto, desencorajamos o uso de 3 ou superior. Os valores válidos são 0, 1, 2, 3, s, g e 'fast'.
  • Ajuste a formatação de STATUS para ps para torná-lo mais legível e para remover sinalizadores antigos que não são mais aplicáveis ​​e apenas crie desordem.
  • Corrija o alinhamento malloc () para pequenas alocações. O alinhamento mínimo é agora 16 para alocações no intervalo de 16-128 bytes em vez de 8. Observe que as alocações de potência de 2 sempre foram naturalmente alinhadas, mas alguns programas usam múltiplos de (por exemplo) 16, como '48' e Assuma o alinhamento de 16 bytes.
  • Fortunas refatoradas, adicionadas.
  • powerd - Adiciona gerenciamento baseado em temperatura para energizar com uma nova opção -H Lotemp: hightemp. Esse recurso é extremamente útil em laptops com resfriamento deficiente e cujos BIOS são intencionalmente acelerados a uma temperatura muito alta. O Powerd agora também detecta alterações de estado de energia (que podem alterar a lista de freqüências disponíveis) e transita adequadamente o serviço quando ocorre uma alteração no estado de energia.
  • Muitas correções e ajustes libthread_xu / pthreads para melhorar a compatibilidade dos dows.
  • Adicione recursos de cópia na gravação ao vkernel. Por exemplo, permite que vários vkernels usem uma única imagem de disco tendo cada uma delas modificações COW internamente para ram.
  • / usr / src / secure rewired, conflitos removidos da libmd, libcrypt.
  • Várias ferramentas foram atualizadas no sistema básico:
  • Compilador atualizado para o GCC 5.4.1.
  • Agora temos um vinculador de ouro com LTO.
  • binutils 2.25
  • menos 481.
  • OpenSSL / LibRESSL completamente renovado. Base agora usa libressl.
  • Várias atualizações de fuso horário.
  • Status do martelo:
  • Melhorias diversas. Uma coisa que não chegou ao lançamento foi um salto de versão para usar um algoritmo CRC mais rápido com um polinômio diferente. Este trabalho terá o MFC para ser liberado assim que o teste for concluído. No entanto, os usuários não devem se preocupar muito com isso porque a correção de desempenho mais séria está no release (uma correção para o código cluster_write () para gravações do sistema de arquivos).
  • Status do Hammer2:
  • O desenvolvimento continua, mas ainda não há notícias sobre o primeiro lançamento.
  • Status do clang:
  • Uma estrutura inicial foi adicionada para usar o clang como o compilador base alternativo no FreeBSD, para substituir o gcc 4.7. Ainda não está completo. Clang pode, claro, ser adicionado como um pacote.
  • status de 64 bits:
  • Observe que o FreeBSD é um sistema operacional somente de 64 bits a partir do 4.6 e não será executado em hardware de 32 bits.
  • O suporte da AMD Ryzen está no lançamento e mais trabalhos serão trazidos à medida que novos desenvolvimentos da Ryzen ocorrerem. Há alguns problemas de topologia relatados pela CPU que serão corrigidos e MFC. Existem alguns problemas de estabilidade atualmente aguardando uma atualização de microcódigo da AMD para resolver / retestar. Os usuários do Ryzen podem ter certeza de que estamos ficando por cima disso!

O que há de novo na versão 4.6.0:

  • mmcsd (4): Corrigir erro de digitação em disk_create () args. Permite o acesso a & gt; 1 cartão SD / MMC.
  • Adicione o unzip (1). Se você não pode vencê-los, junte-se a eles
  • Restaurar capacidade do mundo mestre para criar a versão 4.4
  • buildworld - Permitir que o release seja construído no master
  • etc / rc.d - ajustes sem disco
  • kernel - adiciona suporte ao kqueue ao NFS (corrige problemas do firefox com nfs)
  • Importar OpenSSL 1.0.1s.
  • Ajustes locais para o OpenSSL 1.0.1s.
  • banco de dados sync zoneinfo com tzdata2016b em ftp://ftp.iana.org/tz/releases
  • zic (8) / zdump (8): Não avise sobre abreviações como '-05'.
  • zic (8): Remove um 'register' que aparece no último commit.
  • kernel / acpi_timer: Adicione um cpu_enable_intr () ausente após o teste do timer.
  • em.4: Mencione o suporte ao i219.
  • ig_hal / em / emx: Adicionar suporte ao I219 (Skylake)
  • sys / vfs / hammer: corrija o erro ao apagar o cabeçalho do volume
  • sbin / hammer: Não acesse além de 16 KB de buffer de espaço de usuário do HAMMER
  • sbin / hammer: Adicionar a opção ofuscação para mostrar martelo
  • sys / vfs / hammer: Correção temporária do kernel panic no volume-del

O que há de novo na versão 4.4.3 / 4.6.0 RC2:

  • mmcsd (4): Corrigir erro de digitação em disk_create () args. Permite o acesso a & gt; 1 cartão SD / MMC.
  • Adicione o unzip (1). Se você não pode vencê-los, junte-se a eles
  • Restaurar capacidade do mundo mestre para criar a versão 4.4
  • buildworld - Permitir que o release seja construído no master
  • etc / rc.d - ajustes sem disco
  • kernel - adiciona suporte ao kqueue ao NFS (corrige problemas do firefox com nfs)
  • Importar OpenSSL 1.0.1s.
  • Ajustes locais para o OpenSSL 1.0.1s.
  • banco de dados sync zoneinfo com tzdata2016b em ftp://ftp.iana.org/tz/releases
  • zic (8) / zdump (8): Não avise sobre abreviações como '-05'.
  • zic (8): Remove um 'register' que aparece no último commit.
  • kernel / acpi_timer: Adicione um cpu_enable_intr () ausente após o teste do timer.
  • em.4: Mencione o suporte ao i219.
  • ig_hal / em / emx: Adicionar suporte ao I219 (Skylake)
  • sys / vfs / hammer: corrija o erro ao apagar o cabeçalho do volume
  • sbin / hammer: Não acesse além de 16 KB de buffer de espaço de usuário do HAMMER
  • sbin / hammer: Adicionar a opção ofuscação para mostrar martelo
  • sys / vfs / hammer: Correção temporária do kernel panic no volume-del

O que há de novo na versão 4.4.3:

  • mmcsd (4): Corrigir erro de digitação em disk_create () args. Permite o acesso a & gt; 1 cartão SD / MMC.
  • Adicione o unzip (1). Se você não pode vencê-los, junte-se a eles
  • Restaurar capacidade do mundo mestre para criar a versão 4.4
  • buildworld - Permitir que o release seja construído no master
  • etc / rc.d - ajustes sem disco
  • kernel - adiciona suporte ao kqueue ao NFS (corrige problemas do firefox com nfs)
  • Importar OpenSSL 1.0.1s.
  • Ajustes locais para o OpenSSL 1.0.1s.
  • banco de dados sync zoneinfo com tzdata2016b em ftp://ftp.iana.org/tz/releases
  • zic (8) / zdump (8): Não avise sobre abreviações como '-05'.
  • zic (8): Remove um 'register' que aparece no último commit.
  • kernel / acpi_timer: Adicione um cpu_enable_intr () ausente após o teste do timer.
  • em.4: Mencione o suporte ao i219.
  • ig_hal / em / emx: Adicionar suporte ao I219 (Skylake)
  • sys / vfs / hammer: corrija o erro ao apagar o cabeçalho do volume
  • sbin / hammer: Não acesse além de 16 KB de buffer de espaço de usuário do HAMMER
  • sbin / hammer: Adicionar a opção ofuscação para mostrar martelo
  • sys / vfs / hammer: Correção temporária do kernel panic no volume-del

O que há de novo na versão 4.4.2:

  • virtio_blk: use contigmalloc / contigfree para as alocações vtblk_request.
  • drm / radeon: Precisamos do endereço físico da página fictícia, não do virtual
  • if_iwm: Aplique algumas alterações do OpenBSD, if_iwm.c rev 1.39 - & gt; 1,42
  • if_iwm: Basta armazenar o ponteiro do firmware struct, como if_iwn.
  • if_iwm: remova comentários referentes aos nomes de arquivos de origem do iwlwifi do Linux.
  • if_iwm: corrija o uso de IEEE80211_ADDR_COPY ().
  • if_iwm: corrija o código de configuração do controle de taxa.
  • etc / rc.d: atualize o rtsold
  • i915 - Adicionar atraso após o anexo para evitar corridas do console / X
  • kernel - Reduza a latência de lwp_signotify ()
  • devfs - Correção de pânico em montagens extras do devfs quando as regras estão presentes
  • ssh - Remover suporte a roaming não documentado CVE-2016-0777 CVE-2016-0778
  • kernel - Adicione peculiaridades para o xhci (usb)
  • hammer - remova o debugging do kprintf
  • libc / stdtime: Corrija dois casos em que um ponteiro NULL poderia ter sido free () 'd.
  • kernel / vga: remova o lwkt_reltoken errado (). Não é tomado neste momento.
  • libc / nls: Sincronize str {erro, sinal} () mensagens com.
  • w (1): inet_addr () retorna INADDR_NONE após falha.
  • ee (1): corrija uma variável não inicializada.
  • kernel: corrija o sysctl kern.dumpdev.
  • Importar OpenSSL 1.0.1r.
  • Ajustes locais para o OpenSSL 1.0.1r.
  • gcc50 / libconv_supc: cp-demangle.c precisa de HAVE_CONFIG_H.
  • banco de dados Sync zoneinfo com tzdata2016a em ftp://ftp.iana.org/tz/releases
  • fazer upgrade: adicione um fuso horário obsoleto.
  • igb: corrija as configurações do DMACR
  • ifconfig: corrija a exclusão do endereço inet6

O que há de novo na versão 4.4.1:

  • Kernel:
  • Configurações aprimoradas de economia de energia da CPU
  • Alocação de arquivos reduzida / contenção livre
  • Reduza a contenção do kqueue
  • Implementado lwp_setname (2) chamada do sistema
  • Suporte para operação não bloqueada de dsp (4)
  • Adicione o driver aperf (4) para exibir a frequência efetiva da CPU
  • Várias limpezas e correções para o HAMMER
  • Sincronizar ACPIC para 20151124
  • Quase terminou de remover os bits i386 (32 bits)
  • Ajustar o heap do carregador de inicialização para lidar com imagens MD maiores
  • Limpeza passa o código do kernel morto (syslink permanece, etc)
  • dsched removed (problemas com bugs e não funciona bem com SSDs)
  • Recode algoritmos de pager para pkill de pouca memória e falta de memória
  • Gráficos:

  • Os drivers
  • drm / i915 e drm / radeon agora correspondem ao kernel do Linux 3.18
  • O i915 suporta os SOCs ValleyView / Baytrail e Cherryview Atom
  • As GPUs da Broadwell estão agora totalmente aceleradas
  • Trabalho preparatório para o suporte do Skylake
  • O console do sistema agora suporta gráficos drm por padrão; terminais virtuais não mostram apenas uma tela preta, uma vez que o Xorg foi iniciado e um dos módulos do kernel kms carregados.
  • Gerenciamento de energia aprimorado. Auto-atualização do painel disponível em hardware i915
  • Sensores de temperatura agora suportados no hardware da Radeon
  • Rede:
  • Suporte Realtek 8168H em re (4)
  • iwm (4) driver adicionado
  • rtadvd atualizado, rtadvctl adicionado
  • Conexões UDP assíncronas, para lidar com uma carga muito maior
  • Nova janela inicial TCP maior, para conexões de alta latência
  • Os valores do nmbcluster do Kernel são ajustáveis ​​ao vivo, para tráfego extremo Rede:
  • Estabilize o soquete do domínio UNIX
  • Novo código de GC para passagem de fd sobre sockets de domínio unix
  • Diversos IPv6 sincronizam com o FreeBSD
  • Melhor desempenho do soquete (2) para TCP e UDP
  • Seleção de porta local TCP (2) melhorada
  • Adicionado aceita (4) chamada do sistema
  • Adicionado suporte para os soquetes SOCK_CLOEXEC e SOCK_NONBLOCK (2) e accept4 (2)
  • Disponibilizar recursos de controle de fluxo HW para ifconfig
  • Adicione ajustes para permitir que o NFSROOT iosize e o readahead sejam definidos
  • Traga o ipfw expandido do FreeBSD (chamado ipfw3 no DFly)
  • Outros drivers:
  • O suporte MIDI foi lido
  • Muitas correções de bugs para o mapeador de dispositivos
  • dm-delay e dm-flakey foram adicionados ao mapeador de dispositivos
  • Os modems USB funcionam melhor (ou pelo menos não entram em pânico no kernel)
  • Melhor acesso a recursos e status de ECC de ram
  • wlan atualizado do FreeBSD (para antes da remoção do dispositivo dividido)
  • Userland:
  • a biblioteca regex foi substituída pela biblioteca regex TRE de multi-byte e geralmente muito mais capaz. Ele corresponde ao OSX em recursos. (DF é o primeiro BSD a se mudar para o TRE depois do MacOS)
  • libm substituído pela versão do OpenBSD (este é um trabalho colaborativo em andamento)

  • O
  • libc agora possui versões de símbolos que podem permitir que binários criados no Release 4.4 sejam executados no FreeBSD por anos no futuro.
  • Revisão completa e atualização de localidades, incluindo a implementação de agrupamento.
  • malloc.h removed (o FreeBSD é o primeiro BSD a remover esse cabeçalho)
  • gcc50 libstdc ++ modificado para permitir o uso total de funções C99 no clang
  • Como consequência da atualização de locales, a saída do formato longo e do formato ls (1) de ls mudou quando as localidades nomeadas estão em uso. Notavelmente, os meses de formato longo são sempre abreviados em inglês (usando as definições POSIX garantidas para ser rápidas e com três letras de largura) e as informações de ano, hora e segunda sempre são exibidas. Sob a localidade C / POSIX não há alteração na saída ls (1) que não seja o manuseio de timestamp futuro que foi corrigido para corresponder aos requisitos padrão POSIX.
  • Se o WPA Supplicant da base for usado, haverá um atraso de 10 segundos durante a inicialização quando uma mensagem for exibida, recomendando enfaticamente que a versão do DPorts (security / wpa_supplicant) seja usada.
  • Powerd aprimorado (8)
  • Melhor saída top (1) e ps (1) para LWPs e encadeamentos do kernel
  • Corrigido o suporte para pthread_set_name_np (3)
  • tcpdrop portado (8)
  • Adição de muitos novos locais, incluindo seis locais árabes (Emirados Árabes Unidos, Arábia Saudita, Egito, Jordânia, Marrocos, Catar), localidades espanholas adicionais (México, Argentina, Costa Rica), localidades adicionais em inglês (Filipinas, Cingapura, Hong Kong) , localidades norueguesas corrigidas (apenas nb e nn), sueco extenso (Finlândia), Sami (Finlândia, Noruega), sérvio apresentado em formas cirílicas e latinas agora. ('locale -a' fornece uma lista completa.)
  • rtadvc importado do FreeBSD
  • Várias ferramentas foram atualizadas no sistema básico:
  • nvi2 atualizado para a versão 2.1.3
  • libexecinfo adicionado (sincronizado do FreeBSD)
  • iconv sincronizado com o FreeBSD
  • openssl atualizado para 1.0.1q
  • xz atualizado para o 5.2.2
  • libedit atualizado para a versão 2015-03-25
  • binutils atualizado para 2.25.1
  • grep atualizado para 2,22
  • tcsh atualizado para 6.19.00
  • libdialog atualizado para v1.2-20150920
  • (tn) ftp atualizado para '10 OCT 2015 '
  • gcc atualizado para 5,2
  • acpica atualizado para 20150717
  • sort (1), que veio do NetBSD, foi substituído pela versão do FreeBSD
  • localedef (1), ferramenta interna com origens no Illumos
  • cldr2def, ferramenta interna com origens no projeto abandonado do FreeBSD, mas estendida para DF
  • Removido do sistema básico:
  • hostapd (versão mais recente disponível via dports: net / hostapd)
  • mklocale (substituído por localedef)
  • colldef (substituído por localedef)

  • Melhorias do
  • HAMMER:
  • Muitas limpezas e consertos no Hammer1, graças a Tomohiro Kusumi
  • Outras melhorias:
  • As DPorts contam em torno de 22.800 portas. Muitas portas quebradas anteriormente foram consertadas por usuários regulares devido às contribuições oferecidas pelo mecanismo Pull Request do GitHub. (Obrigado!)
  • Seis conjuntos "oficiais" de papéis de parede do DragonFly estão disponíveis em x11-themes / dragonfly-wallpapers (pkg install dragonfly-wallpapers). Eles são automaticamente instalados e pré-selecionados para usuários do KDE e automaticamente instalados para usuários do XFCE4, mas os papéis de parede ainda são selecionados manualmente com essa área de trabalho (pelo menos por enquanto). Eles são instalados no share / wallpapers, que é linkado para compartilhar / backgrounds / libélula.

Programas semelhantes

Comentário para DragonFly BSD

Comentários não encontrado
Adicionar comentário
Ligue imagens!