Español
Foro

XPSE umgewandelte HeaderCalls son más rápido!

 
Geschwindigkeitsvergleich vorkompilierter Code.
KompilierenMarcaSeparación
 $H windows.ph
cls
declare t&
t&=&gettickcount

whileloop 10000

    ~setpixel(%hdc,&loop,0,0)

wend

print &gettickcount-t&
waitkey
KompilierenMarcaSeparación
Nichts desto trotz tener Yo en aktueller V0.1.6c todavía una Bug - aunque no en Bezug en Headerfiles - aber en el Bezug el Reconocer de Unitbefehlen innerhalb de Klassendefinitionen. Aber por lo tanto kümmere Yo mich wohl morgen...
 
10.10.2006  
 



Michael war así nett y ha el Xpse -Test auch una vez durchgeführt.

Hier seine Results:

328ms con xpse
594ms sin xpse

1891ms con xpse interpreter
2297ms sin xpse interpreter

Yo habe soebend auch veces Okrea  en el neuen XPSE adaptado - y el code algo umgeschrieben. Das Ganze Programa se ejecuta IMHO mejor de - wirkt stabiler y macht una saubereren Eindruck.

Yo glaub como Tuve a Abwechslung auch veces ne gute Concepto.
 
29.10.2006  
 




Michael
Wodrich

Yo glaub como Tuve a Abwechslung auch veces ne gute Concepto


Ohne esta ständige Abwechslung wäre dieses Foro auch no el qué lo nun una vez es.

Einfach TOP

Schöne Grüße
Michael Wodrich
 
Programmieren, das spannendste Detektivspiel der Welt.
29.10.2006  
 




Jörg
Sellmeyer
Yo habs auch veces getestet:
Interpreter:
Apifunktion: 1422
Call: 1222

Compiliert
Api: 290 - 300
Call: 200 - 210

Sehr interessante Entdeckung.

IF
Yo glaub como Tuve a Abwechslung auch veces ne gute Concepto.


Wurde en efecto veces Tiempo!
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
29.10.2006  
 




Jac
de
Lad
Heißt el ahora, el Def ... langsamer es como el XPSE-Gedöns (also sin jegliche Deklaration y Verheaderung)?
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
29.10.2006  
 




Jörg
Sellmeyer
Nö, geDeft se en efecto en Davids Variante. Er weist sólo el deklarierten Características igual una feste Einsprungadresse (? oder como heißt lo? Funktionhandle?) a y el se entonces por Call anscheinend más rápido angesprochen.
Saludo
Jörg
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
29.10.2006  
 




Jac
de
Lad
@IF: Defst Si es usted el Call-Dingens cada veces neu, si XPSE qué erkennt? Und qué es, si la Programmierer el Call-Dingens ya incluso en el Ver código fuente definiert ha?
 
Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE)
Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP
29.10.2006  
 



Nein XPSE Deft nix.

Erklärung Yo en el Nachfolgenden con ApiCall mi: Aufruf uno Api welche en un Headerfile deklariert es.

Wenn Roland una ApiCall umwandelt - así tut él dies encima Externo.

Wenn XPSE una ApiCall umwandelt - así tut él dies encima Call. XPSE macht se como muy viel mühe - deklariert bastante para Anfang des Programmes entsprechende Variables a Aufnahme el Funktionsadressen de el DLL, se para Programmanfang el Funktionsadressen y wandelt el ApiCalls en Calls en welche el entsprechenden Funktionsadressen tragen.

Dieses Posting zeigt lo doch bastante deutlich:  [...] 

Und hier veces el Block des neuen Okrea:
KompilierenMarcaSeparación
Und así una umgewandelte Línea sieht entonces z.B. así de:
KompilierenMarcaSeparación
call(__cf5&,_HWND&,-12,call(__cf6&,0,32649))
war veces:
SetClassLongA(_hwnd&,-12,LoadCursorA(0,32649))

Und natürlich deklariert XPSE nix doppelt - y sólo el Apis welche tatsächlich genutzt voluntad.

Como uno el Angabe de Headerfiles nun incluso gänzlich weglassen kann es el Vorgang des Kompilierens auch todavía deutlich más rápido - also no sólo el Programa se ejecuta mejor pero...

Verstanden?
 
29.10.2006  
 



IF
Wenn XPSE una ApiCall umwandelt - así tut él dies encima Call. XPSE macht se como muy viel mühe - deklariert bastante para Anfang des Programmes entsprechende Variables a Aufnahme el Funktionsadressen de el DLL, se para Programmanfang el Funktionsadressen y wandelt el ApiCalls en Calls en welche el entsprechenden Funktionsadressen tragen.


Un Mühe, que auszahlt.
Wer viel con Headern y API, umgeht erhält para Geschwindigkeitsvorteil ni verbesserte Sicherheit hinzu - porque es no mehr posible, APIs encima el Cambio el Exporttables wärend des Laufens des Prozesses a hooken.

Das bedeutet genau:
APIs el mittels DEF y EXTERNAL angesprochen voluntad, ermitteln el anzuspringende Adresse en el DLL sólo, si la Función en el Ver código fuente aufgerufen se. Durch Cambio des Headers el DLL en el el API angesprochen se (ändern en el Speicher mi Yo), es posible el CALL en una propio DLL umzuleiten y el Parámetro abzugreifen. En uno Codierung uno Freischaltungscodes para una Shareware podría el ya algo problematisch ser.
Como XPSE el Adressen beim Starten des Programmes ya festlegt, nützt una solche Attacke nichts mehr - lo voluntad trotzdem el richtigen Adressen angesprungen.
 
29.10.2006  
 



Respuesta


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

3.945 Views

Untitledvor 0 min.
Ernst07.05.2016
funkheld15.12.2013
gerd12.01.2013
iF18.04.2012
Más...

Themeninformationen



Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie