Comando Start? Nos vários Windows…

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. Algumas tornam-se gananciosas e roubam 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 se quer correr um notepad apenas a ocupar recursos de um processador especifico…

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.
Pode ser validado abrindo o taskmanager e observando qual a afinidade de processadores,  apenas o CPU 0 está a a ser utilizado pelo programa.

Sabendo isto pode-se usar esta vantagem das mais diversas formas, exemplo: criar um atalho que arranca a aplicação com estes parâmetros, um ficheiro batch etc. A imaginação é o céu 🙂

Aqui fica um conjunto de possibilidades do comando start que passa à maioria das pessoas 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 ] [/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.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.