Buscar

Como criar uma aplicação que mostre a velocidade da cpu

Código

{Essa aplicação tem por objetivo exibir a velocidade da CPU.
Primeiro crie uma nova aplicação e insira um TButton e um TEdit. Crie a função GetCPUSpeed (ver código abaixo). Declare a constante ID_BIT na área de declarações da Unit.}


const
  ID_BIT=$200000; // EFLAGS ID bit

function GetCPUSpeed: Double;
const
  DelayTime = 500;
var
  TimerHi, TimerLo: DWORD;
  PriorityClass, Priority: Integer;
begin
try
  PriorityClass := GetPriorityClass(GetCurrentProcess);
  Priority := GetThreadPriority(GetCurrentThread);
  SetPriorityClass(GetCurrentProcess, REALTIME_PRIORITY_CLASS);
  SetThreadPriority(GetCurrentThread,THREAD_PRIORITY_TIME_CRITICAL);
  Sleep(10);
  asm
    dw 310Fh // rdtsc
    mov TimerLo, eax
    mov TimerHi, edx
  end;
  Sleep(DelayTime);
  asm
    dw 310Fh // rdtsc
    sub eax, TimerLo
    sbb edx, TimerHi
    mov TimerLo, eax
    mov TimerHi, edx
  end;
  SetThreadPriority(GetCurrentThread, Priority);
  SetPriorityClass(GetCurrentProcess, PriorityClass);
  Result := TimerLo / (1000.0 * DelayTime);
  except end;
end;

//Agora faça a chamada à função no evento OnClick do botão.

procedure TForm1.Button1Click(Sender: TObject);
var
  cpuspeed:string;
begin
  cpuspeed:=Format('%f MHz', [GetCPUSpeed]);
  Edit1.text := cpuspeed;
end;

//Execute a aplicação.



 

Publicidade

Vote na dica




Quantidade de votos: 0 votos
Aceitação: 0%


Detalhes da dica

Categoria: Hardware
Adicionada dia: 12/08/03
Por: Cleber Junior Rodrigues Farias
Visualizada: 2922 vezes

Planeta Delphi - Tudo sobre programação Delphi Planeta Delphi - www.planetadelphi.com.br - Todos os direitos reservados | Copyright 2001-2009