Conceitos Básicos sobre o S.O. Qual sistema operacional você usa? Sistema operacional o que é isto?
Organização do Sistema Aplicativos Rotinas do Sistema Hardware Kernel
Sistema Multiusuário Linux é um sistema multiusuário Diversos usuários podem estar usando o mesmo computador ao mesmo tempo Claro que só um no teclado... (console) Onde mais de um pode mexer... (segurança) Usuários Senhas Arquivos protegidos Métodos de acesso ao computador
Kernel Núcleo do sistema operacional Responsável pela interface entre o hardware e as aplicações Implementa o sistema de arquivos Trata as operações de I/O Diretórios e arquivos Gerencia os drives de acesso aos periféricos
Kernel Controla a execução de processos Gerencia os daemons aloca memória implementa mecanismo de time slicing Gerencia os daemons Cria mecanismos de memória virtual Gerencia os serviços de rede Gerencia os processos de comunicação, tais como sockets, sinais e semáforos
Kernel
Kernel - Versões Versões novas do Kernel são liberadas após testes exaustivos Linus ainda envolvido com o processo Versão atual é 2.2.n 2: Número principal 2: Versão atual para uso (sempre ímpar) n: é o Número da atualização, ex. 2.2.17 Versão 2.3 em desenvolvimento Versão beta atual 2.4.0-test7
Kernel - Atualização É possível atualizar o seu kernel sem ter que trocar tudo. O kernel é um programa que pode ser recompilado kernel escrito em C Pode ser obtido em http://www.kernel.org
Kernel - Modular O kernel do linux é modular Módulos podem ser carregados a medida que o usuário necessita Sistema com módulos e mais compacto
Shells Programas que aceitam e interpretam comandos dos usuários “Linguagem de Programação” Existem diversos shells a disposição bash, csh, ksh, tcsh Um arquivo de comandos de um dos shells é chamado de script O processo de inicialização dos unixes é baseado na execução de scripts
Shells - comandos Usuário digita o comando ls em um terminal Shell procura onde está o programa ls Shell executa o programa e informa ao usuário a resposta Espera novo comando ls textos programas dados.txt programa.c
Shells - scripts if [ -f /etc/redhat-release ]; then R=$(cat /etc/redhat-release) arch=$(uname -m) a="a" case "_$arch" in _a*) a="an";; _i*) a="an";; esac fi echo "Kernel $(uname -r) on $a $(uname -m)"
Partições C:, D:, E: são convenções Windows /dev/hda1, /dev/hda2, /dev/hdb1 é a maneira Linux
Partições em um HD: exemplo swap /dev/hda2 [/home] /dev/hda1[/] D:\ [Dados] C:\ [Windows]
Sistema de arquivos O Linux organiza seu sistema de arquivos em uma árvore de diretórios A raiz desta árvore é o diretório / Observe a barra ao contrário do outro sistema. Filesystem A maneira como os arquivos são gravados no disco / partição Linux “conhece” a maioria dos filesystems entre eles: MS-DOS, minix, ext2, iso9660, nfs, hpfs, sysv, vfat, etc.
Sistema de arquivos Tudo em Unix é considerado arquivo Periféricos são arquivos especiais Associa um diretório a um filesystem Transparente ao usuário do sistema Diversos sistemas de arquivos podem conviver sob Linux O mesmo não ocorre com o outro sistema.
Sistema de arquivos / FileSystem /dev/hda1 /dev/hda2 /dev/fd0 /dev/cdrom usuários bin etc mnt/ home/ floppy cdrom pedro ana
Sistema de Arquivos D:\ C:\ /dev/hda /dev/hdb /bin /home /etc /mnt /mnt/cdrom /mnt/floppy /dev/cdrom /dev/fd0
Diretórios do sistema /bin /etc /root /tmp Comandos fundamentais ls, rm, cp, grep /etc Arquivos de configuração passwd, inetd.conf, fstab /root Diretório de trabalho do super usuário /tmp Diretório de arquivos temporários
Diretórios do sistema /boot /sbin /var Onde se encontra o kernel e arquivos usados durante a inicialização vmlinuz, System.map, map, boot /sbin Programas de uso do super usuário route, swapon, mkfs, init /var Arquivos de log, filas de mail e de impressão /var/log/messages /var/spool/mqueue /var/spool/lpd
Diretórios do sistema /usr/bin /usr/sbin /usr/local Aplicações de uso geral gzip,who,gs,telnet /usr/sbin Aplicações de uso do super usuário traceroute, daemons (sendmail, inetd) /usr/local Diretório onde são instalados (por default) diversos aplicativos. Netscape, WordPerfect, StarOffice
Diretórios do sistema /mnt /lib , /usr/lib /usr/include Diretório padrão para “montagem”de devices diversos tais como: cdrom floppy partição DOS máquina remota (rede) /lib , /usr/lib Bibliotecas de programas /usr/include Arquivos de cabeçalho (includes usados em programas em C / C++) stdio.h, string.h