Ignorância: HD SATA

Março 19, 2007 at 7:11 pm | In problema, tecnologia | 5 Comments

Mais um problema típico de ignorância entre a cadeira e o teclado. Comprei um HD Samsung HD080HJ (80GB/7200rpm/8M) e não sei instalar o desgraçado na minha placa ASUS (P4V8X-X)

Pelo que entendi, no HD vão 2 cabos: um cabinho rosa que o conecta com a saída SATA da placa-mãe; e um cabo de fonte que liga o HD numa fonte do computador.

Com o primeiro cabo, já me achei. É um cabo rosinha de conectores fininhos que vão do HD até uma saída da placa mãe.

Mas tem um outro cabo que sai do HD e termina com um plug macho de 4 pinos. Dentro do computador tem 2 finalizações de plug fêmea de 4 pinos. A dúvida é: posso ligar o HD em qualquer um desses plugs? Um dos plugs sai do gravador de DVD.

pc

….

edit = Consegui plugar o HD SATA, fiz uma inversão mágica com os cabos e um colega me ajudou por aqui. Deu tudo certo. HD funcionando no Linux e Windows.

Para quem procura como instalar HD SATA no Windows XP na placa mãe Asus P4V8X-X, pode usar o CD de instalação que veio junto com a placa mãe quando você comprou seu computador ou então entrar no site da P4V8X-X clicando aqui. Nesse link, baixe o VIA VT6420 (VT8237) SATA RAID Driver Package Version 2.20D WHQL.

Para o Linux, basta compilar os módulos relativos ao HD SATA em Device Drivers. É tudo muito intuitivo. As distribuições Linux mais novas como SuSE, Ubuntu e Red Hat já incluem esses módulos habilitados no kernel por padrão.

Windows à vista…

Janeiro 30, 2007 at 2:54 pm | In nerdices, tecnologia, windows | 7 Comments

Hoje, dia 30 de janeiro,lancamento final da nova versao do sistema operacional da Microsoft, o Windows Vista. No Brasil, a versao mais básica está a a venda por 499 reais. Estou escrevendo pra explicar o porquê que eu jamais compraria o Winblows Vista:

1. O primeiro óbvio motivo é a seguranca. Enquanto sistemas como Linux e BSD não sofrem com ameaças de vírus, os sistemas Windows sao torturados por pragas há mais de 1 década incessantemente. De que adianta a MS tentar fazer um sistema mais seguro, se as empresas que trabalham com segurançaa como a Symantec e a McAffe tem interesse em vender programas anti-vírus? A verdade é que estudos apontam que se voce navegar por sites diversos durante 30 minutos num sistema Windows, as chances de sua particão ser infectada com algum tipo de malware, virus, pragas ou spywares são acima de 90%.

O sistema de permissoes do Windows é literalmente um lixo, desculpem o termo. Enquanto sistemas derivados do Unix (Mac OS X, Linux, etc) investem em sistemas de permissões complexos, a Microsoft passou a dar importância para o quesito e em 2001 anunciaram um “sistema de permissões” para seu novo sistema. Algo realmente complexo e sofisticado (desculpem o sarcasmo): você pode criar uma conta de administrador e uma conta de usuario para restringir o acesso de instalação e desinstalação de programas, por exemplo. Voce conhece alguém que use não use conta de admin no Windows? Nem eu. Em um laptop recém-adquirido, a conta de administrador já estava habilitada por padrão. Imagine agora a esmagadora maioria dos usuarios que nem mesmo sabem desse recurso.

Falando em vulnerabilidades em programas, a nova versão do navegador Internet Explorer (7) apresentou problemas de segurança na sua primeira semana de existencia, ou seja, quando quase ninguém o possuia, ele já estava dando sua aparição em público com falhas críticas. Nao é a toa, que o Mozilla Firefox foi eleito o navegador mais seguro de 2006. Fatos semelhantes ocorreram o Windows XP em 2001 e o Windows 2003, mais recentemente. Para fazer uma comparação simples, podemos pegar o sistema OpenBSD, um sistema operacional aberto, muito usado em servidores e que está sem nenhuma, absolutamente nenhuma vulnerabilidade há mais de 8 anos. Nem vou falar da comparação de servidores Web IIS X Apache…

2. Tocando numa questao de “eyecandy”. Ha algum tempo, quando o Vista ainda era chamado de Longhorn, a Microsoft prometeu a seus usuarios um ambiente grafico 3D realmente revolucionario. A unica coisa que vemos no Vista hoje, e o seu mediocre Alt+ Tab tridimensional. Alguem quer comparar com o Compiz, Beryl e metisse? Veja abaixo um video humilhante: um desktop Linux com efeitos 3D de verdade!

“>http://www.youtube.com/watch?v=Yx9FgLr9oTk]

3. Windows trava, é um sistema instável e apesar das melhorias que a Microsoft jura ter feito, o sistema continua instável. Enquanto servidores rodando outras plataformas ficam mais de 1 ano em operação com fluxo pesado de dados sem que alguém precise intervir em algo, o Windows XP travou e sofreu um crash logo após (tentar) fazer uma pesquisa de arquivos com o sistema de busca do Windows. O Windows XP também trava frequentemente ao (tentar) acessar servidores FTP ou compartilhamentos de rede. (Os 2 ultimos casos ocorreram num Turion64 com 2Gb de RAM). Lembro-me muito bem da promessa da Microsoft em 2001 de que o Windows XP seria o sistema mais estável e que so iria travar em casos de software mal-programado. O mais interessante é que eles continuam alegando que o Windows Vista vai ser bem estável. (O boi ja esta dormindo?)

4. Aplicações não funcionam. Muitos usuários dos betas reportaram em diversos sites que há muitas aplicações que não vão funcionar sem um update do desenvolvedor. Isso inclui aplicações de backup, anti-vírus e softwares de segurança como os da Symantec. Suítes como o Nero para gravar CDs não funcionam e ainda estão esperando um upgrade. Até o Firefox apresentou problemas com o Vista.

5. Sistema multimídia. Ouvirfalar em DRM já basta…ter um player como o WMP11 no Windows Vista é ainda mais ridículo. Pense em Amarok, Kaffeine ou então se você gosta de algo mais simples, XMMS e mplayer e suas variantes. Já pensou em quando você tentar copiar seus MP3 para seu pendrive e o Windows não deixar? Absolutamente estúpido.

É verdade que tivemos avanços interessantes no Windows XP Media Centre mas você conseguiu ao menos converter um vídeo ou um arquivo de música com ele? Nem eu… E a reprodução de DVDs de regiões diferentes? Esqueça…

6. Ia colocar alguns parágrafos sobre originalidade aqui. Como é um tópico que algumas pessoas podem ficar nervosas porque não ligam para as cópias mal-feitas de recursos que a Microsoft fez de outros sistemas, coloquei apenas um vídeo bastante interessante sobre originalidade. Ora, devemos todas as inovações no Windows Vista à Microsoft? Não… na verdade, não devemos absolutamente NADA no quesito originalidade à Microsoft. Um detalhe interessante é que o vídeo abaixo é de um jornalista do The New York Times.

FLAGS para “compilação segura” com GCC 3.X

Janeiro 25, 2007 at 2:15 pm | In linux, nerdices, tecnologia | 10 Comments

 

Muita gente ouve falar sobre recompilar algum software otimizado para a sua CPU, mas não faz a mínima idéia do que se trata. Nesse artigo explicarei um pouco sobre como funciona a compilação usando” FLAGS” para otimizar o software.

Primeiro vamos aos pré-requisitos:

 

Ter o kernel otimizado para a arquitetura do seu processador e saber quais são as FLAGs a utilizar.

 

Para saber a versão de GCC, digite:

$ gcc –version

 

Para saber informação sobre o processador:

$ cat /proc/cpuinfo

Algumas informações sobre as FLAGs:

Quando vc usa, por exemplo a FLAG “-march=athlon-xp -O3 -pipe -fomit-frame-pointer”

Você está informando ao compilador que o seu processador é um athlon-XP (-march=athlon-xp), que vc está querendo otimização máxima (-03), e que o uso de frame pointer não é necessário (-fomit-frame-pointer)

-O1 otimização leve

-O2 otimização segura

-O3 otimização extrema

PS: muitos softwares são compilados com a opção -02 pois é uma otimização segura.

Para mais informações sobre as funções de otimização veja o site

http://docs.freebsd.org/info//gcc/gcc.info.Optimize_Options.html

Para maiores informações sobre outras opções recomendo a leitura do manual do GCC:

$ man gcc

Escolha as FLAGs para o seu processador segundo a lista abaixo:

 

i386 (Intel)

CHOST=”i386-pc-linux-gnu”
CFLAGS=”-march=i386 -O3 -pipe -fomit-frame-pointer”
CXXFLAGS=”-march=i386 -O3 -pipe -fomit-frame-pointer”

i486 (Intel)

CHOST=”i486-pc-linux-gnu”
CFLAGS=”-march=i486 -O3 -pipe -fomit-frame-pointer”
CXXFLAGS=”-march=i486 -O3 -pipe -fomit-frame-pointer”

Pentium 1 (Intel)

CHOST=”i586-pc-linux-gnu”
CFLAGS=”-march=pentium -O3 -pipe -fomit-frame-pointer”
CXXFLAGS=”-march=pentium -O3 -pipe -fomit-frame-pointer”

Pentium MMX (Intel)

CHOST=”i586-pc-linux-gnu”
CFLAGS=”-march=pentium-mmx -O3 -pipe -fomit-frame-pointer”
CXXFLAGS=”-march=pentium-mmx -O3 -pipe -fomit-frame-pointer”

Pentium PRO (Intel)

CHOST=”i686-pc-linux-gnu”
CFLAGS=”-march=pentiumpro -O3 -pipe -fomit-frame-pointer”
CXXFLAGS=”-march=pentiumpro -O3 -pipe -fomit-frame-pointer”

Pentium II (Intel)

CHOST=”i686-pc-linux-gnu”
CFLAGS=”-march=pentium2 -O3 -pipe -fomit-frame-pointer”
CXXFLAGS=”-march=pentium2 -O3 -pipe -fomit-frame-pointer”

Celeron (Mendocino), aka Celeron1 (Intel)

CHOST=”i686-pc-linux-gnu”
CFLAGS=”-march=pentium2 -O3 -pipe -fomit-frame-pointer”
CXXFLAGS=”-march=pentium2 -O3 -pipe -fomit-frame-pointer”

Pentium III (Intel)

CHOST=”i686-pc-linux-gnu”
CFLAGS=”-march=pentium3 -O3 -pipe -fomit-frame-pointer”
CXXFLAGS=”-march=pentium3 -O3 -pipe -fomit-frame-pointer”

Celeron (Coppermine) aka Celeron2 (Intel)

CHOST=”i686-pc-linux-gnu”
CFLAGS=”-march=pentium3 -O3 -pipe -fomit-frame-pointer”
CXXFLAGS=”-march=pentium3 -O3 -pipe -fomit-frame-pointer”

Celeron (Willamette?) (Intel)

CHOST=”i686-pc-linux-gnu”
CFLAGS=”-march=pentium4 -O3 -pipe -fomit-frame-pointer”
CXXFLAGS=”-march=pentium4 -O3 -pipe -fomit-frame-pointer”

Pentium 4 (Intel)

CHOST=”i686-pc-linux-gnu”
CFLAGS=”-march=pentium4 -O3 -pipe -fomit-frame-pointer”
CXXFLAGS=”-march=pentium4 -O3 -pipe -fomit-frame-pointer”

Eden C3/Ezra (Via)

CHOST=”i586-pc-linux-gnu”
CFLAGS=”-march=i586 -m3dnow -O3 -pipe -fomit-frame-pointer”
CXXFLAGS=”-march=i586 -m3dnow -O3 -pipe -fomit-frame-pointer”

nota: o ezra não tem instruções especiais, é basicamente parecido com o K6-3… (p2 com 3dnow)

K6 (AMD)

CHOST=”i586-pc-linux-gnu”
CFLAGS=”-march=k6 -O3 -pipe -fomit-frame-pointer”
CXXFLAGS=”-march=k6 -O3 -pipe -fomit-frame-pointer”

K6-2 (AMD)

CHOST=”i586-pc-linux-gnu”
CFLAGS=”-march=k6-2 -O3 -pipe -fomit-frame-pointer”
CXXFLAGS=”-march=k6-2 -O3 -pipe -fomit-frame-pointer”

K6-3 (AMD)

CHOST=”i586-pc-linux-gnu”
CFLAGS=”-march=k6-3 -O3 -pipe -fomit-frame-pointer”
CXXFLAGS=”-march=k6-3 -O3 -pipe -fomit-frame-pointer”

Athlon (AMD)

CHOST=”i686-pc-linux-gnu”
CFLAGS=”-march=athlon -O3 -pipe -fomit-frame-pointer”
CXXFLAGS=”-march=athlon -O3 -pipe -fomit-frame-pointer”

Athlon-tbird, aka K7 (AMD)

CHOST=”i686-pc-linux-gnu”
CFLAGS=”-march=athlon-tbird -O3 -pipe -fomit-frame-pointer”
CXXFLAGS=”-march=athlon-tbird -O3 -pipe -fomit-frame-pointer”

Athlon-tbird XP (AMD)

CHOST=”i686-pc-linux-gnu”
CFLAGS=”-march=athlon-xp -O3 -pipe -fomit-frame-pointer”
CXXFLAGS=”-march=athlon-xp -O3 -pipe -fomit-frame-pointer”

Athlon 4 (AMD)

CHOST=”i686-pc-linux-gnu”
CFLAGS=”-march=athlon-4 -O3 -pipe -fomit-frame-pointer”
CXXFLAGS=”-march=athlon-4 -O3 -pipe -fomit-frame-pointer”

Athlon XP (AMD)

CHOST=”i686-pc-linux-gnu”
CFLAGS=”-march=athlon-xp -O3 -pipe -fomit-frame-pointer”
CXXFLAGS=”-march=athlon-xp -O3 -pipe -fomit-frame-pointer”

Athlon MP (AMD)

CHOST=”i686-pc-linux-gnu”
CFLAGS=”-march=athlon-mp -O3 -pipe -fomit-frame-pointer”
CXXFLAGS=”-march=athlon-mp -O3 -pipe -fomit-frame-pointer”

603 (PowerPC)

CHOST=”powerpc-unknown-linux-gnu”
CFLAGS=”-O3 -pipe
CXXFLAGS=”-O3 -pipe

603e (PowerPC)

CHOST=”powerpc-unknown-linux-gnu”
CFLAGS=”-O3 -pipe
CXXFLAGS=”-O3 -pipe

604 (PowerPC)

CHOST=”powerpc-unknown-linux-gnu”
CFLAGS=”-O3 -pipe
CXXFLAGS=”-O3 -pipe

604e (PowerPC)

CHOST=”powerpc-unknown-linux-gnu”
CFLAGS=”-O3 -pipe
CXXFLAGS=”-O3 -pipe

750 conhecidos por G3 (PowerPC)

CHOST=”powerpc-unknown-linux-gnu”
CFLAGS=”-mcpu=750 -O3 -pipe -mpowerpc-gfxopt”
CXXFLAGS=”-mcpu=750 -O3 -pipe -mpowerpc-gfxopt”

Nota: não usar -march=

7400, conhecidos por G4 (PowerPC)

CHOST=”powerpc-unknown-linux-gnu”
CFLAGS=”-mcpu=7400 -O2 -pipe -maltivec -mabi=altivec -mpowerpc-gfxopt”
CXXFLAGS=”-mcpu=7400 -O2 -pipe -maltivec -mabi=altivec -mpowerpc-gfxopt -maltivec -mabi=altivec -mpowerpc-gfxopt”

Nota: do not use -march= ; -O3 is unstable on G4

7450, conhecidos por G4 na segunda geração (PowerPC)

CHOST=”powerpc-unknown-linux-gnu”
CFLAGS=”-mcpu=7450 -O2 -pipe -maltivec -mabi=altivec -mpowerpc-gfxopt”
CXXFLAGS=”-mcpu=7450 -O2 -pipe -maltivec -mabi=altivec -mpowerpc-gfxopt”

Nota: não usar -march= ; -O3 é instável nos G4

PowerPC (Se desconheces a arquitectura)
CHOST=”powerpc-unknown-linux-gnu”
CFLAGS=”-O3 -pipe -mpowerpc-gfxopt”
CXXFLAGS=”-O3 -pipe -mpowerpc-gfxopt”

Sparc

CHOST=”sparc-unknown-linux-gnu”
CFLAGS=”-O3 -pipe -fomit-frame-pointer”
CXXFLAGS=”-O3 -pipe -fomit-frame-pointer”

Sparc 64

CHOST=”sparc-unknown-linux-gnu”
CFLAGS=”-O3 -pipe -fomit-frame-pointer”
CXXFLAGS=”-O3 -pipe -fomit-frame-pointer”

FLAGS para “compilação optimizada” com GCC 3.X

Pentium III (Intel)

CFLAGS=”-march=pentium3 -O3 -pipe -fomit-frame-pointer -fforce-addr -falign-functions=4 -fprefetch-loop-arrays”
CXXFLAGS=”${CFLAGS}”

nota: optimizações -mmmx e -msse estão implícitas a -march=pentium3

Athlon (AMD)

CFLAGS=”-march=athlon -O3 -pipe -fomit-frame-pointer -ffast-math -funroll-loops -fforce-addr -falign-functions=4″
CXXFLAGS=”${CFLAGS}”

nota: optimizações -m3dnow e -mmmx estão implícitas a -march=athlon

Athlon-tbird, aka K7 (AMD)

CFLAGS=”-march=athlon-tbird -O3 -pipe -fforce-addr -fomit-frame-pointer -funroll-loops -falign-functions=4 -maccumulate-outgoing-args”
CXXFLAGS=”${CFLAGS}”

nota: optimizações -m3dnow e -mmmx estão implicitas a -march=athlon-tbird

Athlon XP 2000+

Há quem tenha reportado que tem um sistema estável num Athlon XP 2000+ com:
CFLAGS=”-march=athlon-xp -m3dnow -msse -mfpmath=sse -mmmx -O3 -pipe -fforce-addr -fomit-frame-pointer -funroll-loops -frerun-cse-after-loop -frerun-loop-opt -falign-functions=4 -maccumulate-outgoing-args -ffast-math -fprefetch-loop-arrays”
CXXFLAGS=”${CFLAGS}”

 

 

Compilar um Software usando FLAGs é muito simples, basta escolher a FLAG e usá-la na compilação.

 

Baixe o source do software e descompacte-o:

 

Para source em tar.gz:

tar -xzvf source.tar.gz

 

Para source em tar.bz2:

tar -xjvf source.tar.bz2

 

Entre no diretório descompactado, leia os READMEs e rode o ./configure com a FLAG:

 

PS: eu tenho um processador AthlonXP 2600+

 

CHOST=”i686-pc-linux-gnu” \

CFLAGS=”-march=athlon-xp -O3 -pipe -fomit-frame-pointer” \

CXXFLAGS=”-march=athlon-xp -O3 -pipe -fomit-frame-pointer” \

./configure

 

 

depois rode o $ make && make install

 

Pronto! você tem o software compilado e instalado para o seu pc.

 

Caso utilize a distribuição Slackware Linux siga as instruções abaixo para compilar o software otimizado e empacotar o software em um TGZ.

Crie um arquivo config.list, contendo todas as opções de configuração do software:
$ ./configure –help > config.list
$ vi config.list

Escreva o seu arquivo de configuração seguindo o exemplo:

CHOST=”i686-pc-linux-gnu” \
CFLAGS=”-march=athlon-xp -O3 -pipe -fomit-frame-pointer” \
CXXFLAGS=”-march=athlon-xp -O3 -pipe -fomit-frame-pointer” \
./configure \
–prefix=/usr \
–exec-prefix=/usr \

Agora, execute a configuração do código-fonte:
$ sh config.list

Agora, é hora de compilar. Para isso execute o comando:
$ make


Crie um diretório temporário para armazenar os arquivos que serão usados para a criação do pacote do Slackware:

$ mkdir /tmp/chemonz-slackware

Agora, execute a instalação para o diretório temporário:
$ su root
# DESTDIR=/tmp/chemonz-slackware make install
# cd /tmp/chemonz-slackware

Criando o script de instalação

Feito isso, crie o diretório install, onde serão colocados os arquivos de instalação
do pacote:

# mkdir install

Agora, crie e edite o arquivo doinst.sh, dentro do diretório install, que conterá os procedimentos a serem executados após a instalação do pacote:
# vi install/doinst.sh (substitua “vi” pelo editor de sua preferência)

Insira o seguinte conteúdo:
/sbin/ldconfig

Salve o arquivo e feche-o. Esse script será executado após a instalação do pacote.

Agora, crie e edite o arquivo slack-desc, que conterá as informações sobre o pacote, exibidas no momento da instalação:
# vi install/slack-desc

Insira o seguinte conteúdo:

chemonz: [nome do software]
chemonz:
chemonz: [descrição do software]
chemonz:
chemonz: [site, email ou qualquer informação sobre o desenvolvedor do software]
chemonz:

Salve o arquivo e feche-o, e está feito.

Agora, basta criar o pacote com o comando makepkg. Cuidado com o nome do pacote. Ele deve ser formado da seguinte forma:

# makepkg -c n -l n [nome]-[versão]-[arquitetura]-[revisão].tgz

Pronto!!! Você acaba de criar um pacote para o Slackware de um software otimizado para o seu processador.

Agora basta instalar o pacote ou atualizá-lo:

#installpkg pacote.tgz

#upgradepkg –install-new pacote.tgz

Qualquer dúvida mande um email para chemonz@bestlinux.com.br

Abraços

« Página anteriorPróxima Página »

Blog no WordPress.com. | Theme: Pool by Borja Fernandez.
Entries and comments feeds.