terça-feira, 8 de maio de 2018

Linux E BSD

O Linux possui uma enorme variedade de drivers de aparelhos para hardware não sustentados no FreeBSD, inclusive dispositivos USB (veja aqui para uma debate relacionada). Não excepcionalmente esses drivers foram transcritos com base em informações provenientes de sniffing de protocolo, engenharia reversa e similares. Isso você verá o código extremamente não documentado e converte o trabalho de portabilidade extremamente sendo alvo a erros.

Também olhando o fato de crente doido ser um termo estranho pra ser dito aqui.
Linux E BSD

Para contribuir nessa atividade decidi começar a trabalhar em uma camada de emulação que nos concedesse recompilar o código-fonte do Linux no FreeBSD, e proporcionar uma emulação bastante completa das APIs do kernel para que os drivers de dispositivo (ou pela menos com certas classes) pudessem ser utilizados sem transformações em seu código-fonte.

Uma comparação interessante seria da uma olhada na  instalação do ghostbsd.
instalação interessante de se dá uma olhada.

A técnica não é nova - o FreeBSD sempre ofereceu emulação de diferentes APIs no pavimento syscall, e também uma emulação da API do Windows está disponível para drivers de dispositivo de multinível,  Então, estou apenas reiterando o conceito para outra departamento que atualmente não possui auxílio  nativo. Meu foco de inicio foi em drivers de webcam usb, e Dessa forma essa camada de emulação engloba o satisfatoria para criar um driver de caractere utilizando os serviços da pilha USB.

Uma coisas que a maioria os drivers Linux devem é de um conjunto correto de cabeçalhos para fornecer todas as definições acessível nos arquivos de cabeçalho originais. Alguns deles são apenas lugares reservados vazios, muitos são réplicas parciais dos cabeçalhos linux correspondentes, e muitos são quase que totalmente reescritos para remapear alicerce e contínuos, do Linux para os tipos FreeBSD.

Para exibir imagens, resumi-se realizar "pwcview -s cif" (ou utilizar outros modelos por exemplo, sif, qcif, vga se a sua câmera suportar)

conecte (ou desconecte e reconecte) sua webcam e Vejamos se ela é detectado - se bem sucedida, você deve ver uma Resposta "ldev0: ... em / var / log / messages" e / dev / video0 deve ser formado

construa e Instalar as portas  supracitados No diretório para linux-kmod-compat também construa o aitividade  pwcview.

execute "kldload gspca.ko" (ou os outros módulos que você quiser) e É necessário compreender em / var / log / messages se há erros ou avisos, por exemplo, simbologias, não resolvidos, e mais

Para experimentá-los você precisa esta fazendo  o seguinte (como root):

buscando os drivers

A Origem para os drivers do Linux Em geral, é distribuída a baixo de a GPL.

analise que o código de emulação no linux-kmod-compat é reescrito do zero e a baixo de uma licença BSD, Em caso de você necessita dele.

posicionamento atual (atualizado em 18 de novembro de 2008) : O esquema atingiu um modelo utilizável com 3 drivers de webcam ('gspca', 'spca', 'ov') reconstruídos a baixo de o FreeBSD e funcionando. O que resta a fazer é uma limpeza do bloqueio e colocar suporte para BULK e outros tipos de Mudança conforme necessário. A versão mais atual do código está agora disponível como 3 portas Freebsd:

Este esquema é formado, de todos componentes, nem todas eles indispensáveis em a maioria os drivers, nem todos implementados para que o situação Estes são:

O linux pentest tem muita á oferecer na area de segurança sugiro que visite também.

devel / linux-kmod-compat , o código de emulação e os cabeçalhos. depois de extraí-lo, no diretório trabalho / linux_compat, você também perceberá uma versão ligeiramente alterada do programa pwcview (consulte o feita a mão do pwcview ) que pode ser compilado e utilizada para exibir o vídeo da sua webcam.

multimedia / linux-gspca-kmod , o driver gspca, cuja origem está no gspca home . (Não existe entrada 'spca' o motivo faz quase o mesmo que 'gspca').

Nenhum comentário:

Postar um comentário

Linux E BSD

O Linux possui uma enorme variedade de drivers de aparelhos para hardware não sustentados no FreeBSD, inclusive dispositivos USB (veja aqui ...