Leitura recomendada para entender melhor os componentes internos do Unix / Linux [fechado]


54

Eu trabalhei em ambientes * nix nos últimos quatro anos como desenvolvedor de aplicativos (principalmente em C).

Por favor, sugira alguns livros / blogs etc. para melhorar meu conhecimento interno * nix.


11
com a sua experiência, apenas a leitura da fonte do kernel ajudaria.) #
307

3
O RTFS é sempre o melhor, mas algumas vezes uma pequena leitura facilita a compreensão da fonte.
Stephen Jazdzewski

Alguém que tenha privilégios de edição realmente deve editar esse título.
precisa saber é o seguinte

11
Atualmente, estou seguindo o conselho de Matt Might em seu artigo, O que todo especialista em ciência da computação deve saber . Ele recomendou o ambiente de programação Unix de Kernighan e Pike, Linux Server Hacks, manual de administração de sistemas UNIX e Linux de Nemeth, Synder, Hein e Whaley, desenvolvimento de kernel Linux de Love e programação de rede Unix de Stevens, Fenner e Rudoff.
Anthony

11
@ Anthony, esses são excelentes recursos, mas mais orientados para a terra do usuário / linha de comando. Além disso, particularmente o Linux está mudando muito rapidamente agora, você precisa se manter atualizado. Recursos agradáveis ​​são LWN e kernelnewbies .
vonbrand

Respostas:


36

Aqui estão algumas sugestões sobre como entender o "espírito" do Unix, além das ótimas recomendações que foram feitas nos posts anteriores:

  • "The Unix Programming Environment", de Kernighan e Pike: um livro antigo, mas mostra a essência do ambiente Unix. Também o ajudará a se tornar um usuário de shell eficaz.

  • "Unix para o impaciente" é um recurso útil para aprender a navegar no ambiente Unix. Um dos meus favoritos.

Se você quer se tornar um usuário avançado, não há nada melhor do que as "Unix Power Tools" de O'Reilly, que consistem nas dicas e truques coletivos dos profissionais do Unix.

Outro livro que eu não vi mencionado que é uma leitura divertida e educativa é o "Sistemas Operacionais, Design e Implementação", o livro de Andy Tanenbaum que incluía o código fonte de um sistema operacional Unix completo em 12k linhas de código.


9
por que um livro com 864 páginas é chamado de "para os impacientes"?
amphibient

12
@ amphibient Presumo que você não tenha visto a edição "para o paciente".
Christopher Poile 5/10

3
Isto não é "internos" ....
user997112


14

2
+1 para o livro do Lions. O xv6 do MIT é uma versão moderna do Lions v6 que roda em máquinas x86 e usa ANSI C. É possível fazer o download do código-fonte e do livro associado.
Daniel Näslund

8

Livros / sites / manuais que uso frequentemente:

  • O kernel do Linux : este livro é publicado online como parte do TLDP (The Linux Documentation Project). Ele não é atualizado e não é um manual interno, mas fornece informações úteis e materiais introdutórios sobre os princípios e mecanismos do kernel.

  • Noções básicas sobre o Linux Kernel: IMHO, é o melhor livro para iniciantes que tem experiência em design e conceito de sistemas operacionais. É aceito como atualizado, abrange a versão 2.6 do kernel. Existe uma versão em HTML do livro na web, mas acho que é provavelmente o warez.

  • Algum livro sobre gerenciamento de memória virtual

Ao estudar os componentes internos do kernel do linux, você geralmente precisa aprender como o hardware funciona e o que o hardware fornece de maneira abstrata. A Intel tem ótimos manuais para isso.

Se você precisar estudar o design e o conceito de sistemas operacionais, sugiro o seguinte livro: Conceitos de Sistema Operacional .


11
Há outro livro sobre o gerenciador de memória virtual do linux. Inclui explicações sobre o código-fonte. URL: ptgmedia.pearsoncmg.com/images/0131453483/downloads/… (Legal para fazer o download)
dirtybit

+1. livro sobre "gerenciador de memória virtual"? parece muito interessante. obrigado :-).
Hemant





2

Drivers de dispositivo Linux é outro bom recurso. Daria a você outra maneira de entrar no funcionamento interno. Do prefácio:

Este é, na superfície, um livro sobre como escrever drivers de dispositivo para o sistema Linux. Esse é um objetivo digno, é claro; é provável que o fluxo de novos produtos de hardware não diminua tão cedo e alguém precisará fazer com que todos esses novos gadgets funcionem com o Linux. Mas este livro também é sobre como o kernel do Linux funciona e como adaptar seu funcionamento às suas necessidades ou interesses. Linux é um sistema aberto; com este livro, esperamos que seja mais aberto e acessível a uma comunidade maior de desenvolvedores.


1

Para entender o porquê e o que o kernel deve suportar, dê uma olhada em The Art of Unix Programming, de Eric Raymond. Leva as coisas a um nível filosófico razoavelmente alto, mas combinaria bem com os detalhes minuciosos de outros livros.


Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.