Article View: pl.comp.lang.asm
Article #2208Re: Nie zagadka, tylko pytanie
From: Bernard
Date: Fri, 16 Apr 2010 06:09
Date: Fri, 16 Apr 2010 06:09
22 lines
2270 bytes
2270 bytes
On 2010-04-16 00:23, Andrzej Grażyński wrote: > > Jaki proponujecie sposób sprawdzenia, czy progam chodzi na Pentium czy > na starszym badziewiu? > > Konkretnie problem jest taki: jest program DOSowy, ma już ze 25 lat, > jest trochę rozwijany. Niektórzy ludzie mają jeszcze 486, są nawet dwa > 386DX40. Ja chciałbym użyć instrukcji RDTSC, oczywiście pod warunkiem, > że procesor takową posiada (konkretnie chodzi o reimplementację funkcji > Delay() w Turbo Pascalu - gdy nie będzie RDTSC, wykonany zostanie > klasyczny wariant z pętlą programową przerobioną na 32 bity, żeby > uniknąć błędu 200, znana sprawa). Jeśli będie można użyć RDTSC, to > będzie lepiej, bo Delay() bęzie lizone w czasie rzeczywistym, a nie w > czasie, który procesor poświęci zadaniu. Najpierw sprawdzamy, czy procesor ma CPUID (bit w EFLAGS). Jeśli ma - dalej jest prosto. Jeśli nie ma - może to być najwyżej 486 i TSC nie ma na pewno. Istnieje cała masa testów umożliwających stwierdzenie typu <= 486 na podstawie zachowań procesora przy wykonaniu instrukcji. Niezależnie od TSC istnieje jeszcze timer systemowy i zmienna timera (zlicza interwały ok. 55 ms) w pamięci, dostępna dla apikacji DOSowych.
Technical Details
Message-ID:
<hq8uv7$vas$1@newsread1.aster.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!news.nask.pl!news.nask.org.pl!plix.pl!newsfeed1.plix.pl!nntp.aster.pl!newsread1.aster.pl!not-for-mailReferences:
<hq83lv$5in$1@news.onet.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!news.nask.pl!news.nask.org.pl!plix.pl!newsfeed1.plix.pl!nntp.aster.pl!newsread1.aster.pl!not-for-mail From: Bernard <bernard@earth.net> Newsgroups: pl.comp.lang.asm Subject: Re: Nie zagadka, tylko pytanie Date: Fri, 16 Apr 2010 08:09:26 +0200 Organization: Aster Sp. z o.o. Lines: 22 Message-ID: <hq8uv7$vas$1@newsread1.aster.pl> References: <hq83lv$5in$1@news.onet.pl> NNTP-Posting-Host: 187-mo6-2.acn.waw.pl Mime-Version: 1.0 X-Trace: newsread1.aster.pl 1271398183 32092 82.210.165.187 (16 Apr 2010 06:09:43 GMT) X-Complaints-To: abuse@aster.pl NNTP-Posting-Date: Fri, 16 Apr 2010 06:09:43 +0000 (UTC) User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.9) Gecko/20100317 Thunderbird/3.0.4 In-Reply-To: <hq83lv$5in$1@news.onet.pl> X-Antivirus: avast! (VPS 100415-1, 2010-04-15), Outbound message X-Antivirus-Status: Clean Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit