Pokazywanie postów oznaczonych etykietą zapowiedzi. Pokaż wszystkie posty
Pokazywanie postów oznaczonych etykietą zapowiedzi. Pokaż wszystkie posty

26 stycznia 2010

Serwer w drodze...

Od jutra nie będzie tego:


Za kilka dni będzie to:
(przepraszam za łamanie praw autorskich ale nie mogę znaleźć wolnego)


Plany:
  • 1. tydzień lutego - uruchomienie sprzętu, instalacja i konfiguracja Debiana
  • 2. tydzień lutego - testy; shelle dla zaufanych; www z restrykcjami
  • 3. tydzień lutego - zakup zasilacza pasywnego - od tego czasu złom będzie działał 24h/d; znowu testy
  • 4. tydzień lutego - shelle i www dla wszystkich
Redakcja zastrzega sobie prawo do wprowadzenia zmian bez informowania wiernych czytelników.

Oczywiście usługi będę oferował za darmo. Wyjątek: serwery gier. Ale serwery gier będę dawał tylko znanym z reala...

19 lipca 2009

PWM CPU Limiter - coming soon...

Podstawowe funkcje "PWM CPU Limitera" zostały zrobione. Pozostało tylko popracować nad interfejsem.

Do czego to służy



PWM CPU Limiter obniża wykorzystanie procesora przez konkretny program korzystając z PWM - modulacji szerokości impulsu. Osoby siedzące w elektronice wiedzą o co chodzi :)

Program bardzo szybko wstrzymuje i wznawia wybrany proces, przy czym zarówno między wstrzymaniem a wznowieniem, a wznowieniem i wstrzymaniem jest jakaś przerwa. Dobierając odpowiednio te przerwy można sterować "wypełnieniem" tego procesu w ogólnym czasie procesora.

Dla zainteresowanych, fragment kodu źródłowego:


v := Form1.LimitBar.Position;
r := Form1.LimitBar.Max-v;
repeat
for i := 0 to threads.Count-1 do SuspendThread(cardinal(threads[i]));
// linia wyżej odpowiada za wstrzymanie procesu
timeBeginPeriod(1);
Sleep(r);
timeEndPeriod(1);

for i := 0 to threads.Count-1 do ResumeThread(cardinal(threads[i]));
// linia wyżej odpowiada za wznowienie procesu
timeBeginPeriod(1);
Sleep(v);
timeEndPeriod(1);

{ ... } // nieistotne
until timetoend;