depois disto já se pode dizer que é melhor pensar 3 vezes antes de roubar um…
Site criado para transmitir algum do conhecimento que fui ganhando durante a minha vida profissional.
Tenho um sony vaio modelo em cima indicado, e agora que a garantia acabou decidi começar a explorar o hardware melhor.
Queria trocar o disco rígido dele por outro mais rápido ( SSD ) ao tentar descobrir quais os componentes que vem dentro do meu portátil, deparei-me com uma coisa interessante.
Prestei mais atenção à minha placa 3G e reparei que ela é uma placa que aparenta ter GPS integrado. Estudei os manuais da Sony e nada é referido sobre isso.
Fiz uma análise mais profunda em muitos documentos e descobri uma forma de activar o GPS embutido. Ou pelo menos tentar ver se de facto ela tinha um.
O que fiz foi o seguinte:
Descarreguei o putty.
Descarreguei os últimos drivers da sony.
Depois disto tudo activei o botão da placa, e iniciei uma sessão de telnet para a COM do meu MODEM 3G.
O dispositivo GPS pode ser ligado e desligado por comandos AT enviados via telnet.
Para activar a função GPS é necessário um comando, o AT_OIFC.
Este comando activa ou inactiva a nível de hardware o nosso GPS.
Para activar o GPS apenas temos escrever a seguinte sequência de comandos:
Para saber o seu estado.
AT_OIFC?
Este vai devolver uma resposta do tipo:
_OIFC : w,x,y,z” (onde w,x,y,z são números que representam o estado actual do dispositivo.)
Para activar o GPS apenas necessitamos de mudar o estado do último número.
Escrever o seguinte comando:
AT_OIFC=w,x,y,0 desliga o GPS
AT_OIFC=w,x,y,2 Liga o GPS no portátil
Necessitamos de reiniciar o módulo. Para isso basta apenas desligar e ligar o botão que está na frente do portátil.
Assim que ligamos passado algum tempo ficamos com mais um dispositivo no nosso Device Manager :) .
Agora vamos para a segunda fase.
Activar o dispositivo no Windows :)
O GPS está para o dispositivo como se fosse uma porta nova porta de serie. Se nos ligarmos a ela obtemos um quadro negro de telnet...
Isto acontece porque o dispositivo apesar de estar fisicamente presente para o computador ainda não está ligado.
Para o ligar temos de abrir mais uma vez uma sessão de telnet para a COM onde estiver o nosso modem 3G (atenção não é a mesma com onde está o GPS)
O comando que vamos escrever é:
AT_OGPS
Este comando activa o dispositivo.
Aguardamos uns segundos e perguntamos qual o estado do dispositivo:
AT_OGPS?
Ele dá-nos as seguintes possíveis respostas:
| Comando | Respostas possíveis |
| _OGPS=<mode> | OK ERROR |
| _OGPS? | _OGPS: <mode> |
| _OGPS=? | _OGPS: (0-2) |
Este comando munda o estado do GPS.
EX:
Se o GPS der uma resposta _OGPS:0 significa que não está a escutar a informação emitida de satélite.
0: desligada a determinação de posição por satélite.
1: Ligada a determinação de posição por satélite. Desliga-se se ao fim de algum tempo não conseguir.
2: Activa a determinação por satélite. Reinicia automaticamente se perder sincronismo.
Se o nosso sinal for suficientemente forte inicialmente vamos ver várias linhas com muitos pontos. Passado algum tempo essas linhas começam a ficar preenchidas e voila têm a nossa posição na variável $GPGGA.
Ainda há uma serie de opções que ainda não domino e gostava de dominar melhor. Aqui ficam:
AT_OGPSP // Set parameters for a GPSdetermination
AT_OGPSLS //Set parameters for using withSUPL A-GPS
AT_OGPSCONT //
Estes modelos da Sony são dos melhores portáteis do mundo, e esta agradável surpresa é mais uma evidência disso. Pena é a Sony não divulgar ou suportar este dispositivo.
PS – Todas as alterações e comandos aqui descritos são feitos por vossa conta e risco, não consigo assegurar que todos irão ter os mesmos resultados que eu tive.
Com o surgimento dos múltiplos processadores no Windows começamos a ter alguns problemas por vezes com aquelas aplicações que não sabem bem como lidar com a fartura e que se tornam gananciosas roubando todos os ciclos de processamento possíveis em todos os processadores.
Por incrível que pareça esta situação pode ser facilmente controlada reservando os recursos necessários ao nosso sistema.
Imaginemos que queremos correr um notepad apenas a ocupar recursos de um processador em vez de todos...
Para isto apenas necessitamos de abrir uma janela cmd e escrever o seguinte comando:
start /affinity 1 notepad.exe
Este comando dá indicações para inicializar o processo notepad a ocupar o CPU com o ID 0.
Se testares e depois abrirem o taskmanager e observarem qual a afinidade de processadores verificarão que apenas a CPU 0 está a processar o processo.
Sabendo isto podemos usar esta vantagem das mais diversas formas, como por exemplo criar um atalho que arranca a aplicação com estes parâmetros, um ficheiro batch etc. A imaginação é o nosso céu :)
Aqui fica um conjunto de possibilidades do comando start que passa à maioria despercebido mas que é muito importante.
START
Starts a separate window to run a specified program or command.
START ["title"] [/D path] [/I] [/MIN] [/MAX] [/SEPARATE | /SHARED]
[/LOW | /NORMAL | /HIGH | /REALTIME | /ABOVENORMAL | /BELOWNORMAL]
[/AFFINITY <hex affinity>] [/WAIT] [/B] [command/program]
[parameters]
"title" Titulo a colocar na barra de Windows.
path Directoria de inicio.
B Iniciar a aplicação sem criar uma nova janela
I O novo ambiente será o ambiente original passado para o cmd.exe e não o ambiente que está a correr no momento.
MIN Iniciar a janela minimizado.
MAX Iniciar a janela maximizado.
SEPARATE Iniciar o programa de 16-bit numa zona de memória separada.
SHARED Iniciar um programa de 16-bit numa zona de moeria comum.
LOW Iniciar a aplicação numa forma de "IDLE priority class".
NORMAL Iniciar a aplicação com prioridade normal.
HIGH Iniciar a aplicação com prioridade Alta.
REALTIME Iniciar a aplicação com prioridade em tempo real.
ABOVENORMAL Iniciar a aplicação com prioridade acima do normal.
BELOWNORMAL Iniciar a aplicação com prioridade a baixo normal.
AFFINITY A nova aplicação terá a afinidade para o processador especificado deve ser expressa como um numero decimal.
WAIT Iniciar uma aplicação e esperar que ela termine.