irgendwie is die CPU-Generation f. die Tonne ... ![]()
Beiträge von mainziman
-
-
Er ist der meinung für ein RZ braucht es keine Fachkräfte und die Leute machen es für eine Bockwurst und einen kasten Bier
wenn man sich ansieht was so an Gehältern in Relation zur angeforderten Ausbildung, welche nicht Ansatzweise f die Tätigkeit notwendig ist, geboten wird,
kann man durchaus zu dem Schluß kommen;

-
bei den Gutscheinen ist es wie mit den Überraschungseiern -> lass Dich überraschen wo das Produkt ist

-
Scheideanstalt
Ehescheidung?

ja das hat in gewisserweise auch was mit Alteisen-Entsorgung zu tun

-
Was macht der Compiler daraus?
return ( v>0 ? 1 : ( v<0 ? -1 : 0 ) );
haarscharf des gleiche

hätte mich auch gewundert wenn er was anderes daraus gemacht hätte;
bis auf die Tatsache, dass das etwas sophisticated und damit f. den weniger geübten Programmierer schwerer lesbar ist,
ergibt es das gleiche in grün

weil CmdrXay auch von Turbo C sprach; hier hatte sich Borland (so hieß der Laden damals) mit Microsoft irgendwie ein Wettrennen geliefert;
der erste C++ compiler von Microsoft war Microsoft C++ 7.0, welches aber erst erschien, da war Borland's Turbo C++ 1.0 bereits eine weile am Markt;
ich wurde aber von Borland's C Compilern was Optimierungen und damit Laufzeit betraf damals bitter enttäuscht;
der Microsoft C 6.0 compiler füllte zwar die Platte nicht unbeträchtlich an, aber der generierte Code konnte sich sehen lassen;
-
in C gibts auch ein goto; wobei sowas wie es das 'Spezial'-GOTO in FORTRAN gibt, hab ich bis jetzt in keiner Programmiersprache gesehen;
die Problemstellung: prüfe die Variable und je nachdem
- ob diese 0
- ob diese positiv
- ob diese negativ
führe entsprechendes aus;
in FORTRAN ist dies in etwas so gelöst;
GOTO ( 100, 200, 300 ) var
die 3 Werte sind Sprungmarken;
und tatsächlich ist dies auch in Assembler direkt so möglich
Code
Alles anzeigenMOV EAX,[VAR] OR EAX,EAX JG positive JL negative zero: ... jmp next negative: ... jmp next positive: ... next:ich kenne keinen C-Compiler welcher folgendes analog durch Optimierungen abbildet
C: func.cint func( int value ) { if ( value > 0 ) return 1; else if ( value < 0 ) return -1; else return 0; }ergibt beim Intel Compiler unter Linux folgendes
Spoiler anzeigen
Code
Alles anzeigen.globl func func: # parameter 1: %edi ..B2.1: # Preds ..B2.0 ..___tag_value_func.21: #28.1 testl %edi, %edi #29.16 jle ..B2.3 # Prob 33% #29.16 # LOE rbx rbp r12 r13 r14 r15 ..B2.2: # Preds ..B2.1 movl $1, %eax #29.27 ret #29.27 # LOE ..B2.3: # Preds ..B2.1 movl $-1, %edx # movl $0, %eax # cmovl %edx, %eax # ret #das cmovl führt intern eine 2te Vergleichsoperation aus, welche aber völlig fürn Hugo is;
man kann nicht alles haben

wer in Hochsprachen bei Tests ein goto verwendete wurde automatisch mit 'Nicht genügend' beurteilt;
-
das läßt Erinnerungen an meinen ultimativen Taschenrechner¹ mit grafischer Oberfläche aufkommen,
den ich damals in der Schule in Assembler programmiert hatte;
mein PC war damals ein i286 / i287
¹ so komisch es klingt, der assemblierte und gelinkte File ist heute noch lauffähig;
bei 64-bit Windows muss man etwas nachhelfen, aber er geht

ein numerischen Co-prozessor ist ja seit den i486 mit dabei, also auch ken Problem

-
wolltest Dir damit de ASCII Code Matrix ausgeben aRaphael

spannend, ich hab den Code mal durch den compiler gejagt, die Ausgabe sieht etwas seltsam aus ...
Programmausgabe
-
Wusste ich es doch.
WRITE (*, *) "Hello World"

-
Zentrum für Chaosforschung?
Ne Jäger und Sammler-Syndrom

-
Ich verwende den Begriff so wie in Wikipedia definiert.
probier es mit der Terminologie des MTAs
ja ASS stimmt, "never discuss with Holger", und wer ist Holger?

Tipp: den gibts in ganz Entenhausen nicht

-
Das kommt mir sehr bekannt vor...
Fiel auch mir nicht leicht sich davon zu trennen.
ich hab im Keller noch mein originales Microsoft FORTRAN 5.1 - natürlich auf Disketten, auch noch mein originales WinNT 3.51
gegen Ende meiner Schulzeit besorgte ich mir ein originales VIsual C++ - ein Kombipaket mit Visual BASIC, waren beides Version 4,
und da war Microsoft noch großzügig; sie schickten mir damals ein paar Monate später ein Visual C++ 5.0 und ein Visual BASIC 5.0 -
weil ich damit nix anzufangen wußte, gab ich die damals dann einem Arbeitskollegen, und heute kräht auch kein Hahn danach;

des waren damals noch Zeiten als Versionsnummern wirklich Releases waren, heute glaubst eh fast die Softi is ranzig bevor sie noch am Markt ist;
oder hat jemand ein Office 2023? Office 2021 ist doch Schnee von gestern, oder nicht?

(wir haben schließlich das Jahr 2022, sollt Microsoft mittlerweile auch behirnt haben)
-
aRaphael mit einem Server, analog auch der dazugehörende StorageSpace und andere feinen Sachen

perryflynn nachhaltig im Sinne von 'weg für immer'?

-
bei VMware hat man da ganz was anderes

00:10.0 SCSI storage controller: LSI Logic / Symbios Logic 53c1030 PCI-X Fusion-MPT Dual Ultra320 SCSI (rev 01)
-
Nein, ich mein ein anderer RS/VPS auf dem das Windows läuft und auf dem das Linux
-
Mit Windows kannst die 3 TB schon nutzen, das Windows läuft halt nur auf einem anderen RS/VPS und auf dem ein Linux, und vom Windows gibt es mehrere Mglkt.en auf Linux Filesysteme zuzugreifen;

-
H6G so abwegig ist das nicht; weil genau so gut, kann auch von Seiten des Hosters eine Firewall aktiv sein, welche bestimmte Zugriffe von außen gleich unmöglich macht ...
wobei. wenn ein Provider aus irgendwelchen Gründen z.B. Port 80 eingangsseitig sperrt (ist in dem Bsp. eher relevant f. Zugangs-Provider), dann haftet er, wenn er das mal nicht mehr tut, und es passiert dann etwas; Grund: man darf sich darauf verlassen;
darum wäre ich auch vorsichtig mit einer Port 25 Sperre nach außen von Seiten des Providers, weil auch hier: man darf sich darauf verlassen;
-
Mal ganz was anderes, die VPS/RS die es da so gibt, die haben doch alle auch eine MAC-Adresse;
ich hätte das hier: https://serverfault.com/questions/4071…irtual-machines
gefunden, kann ich wirklich ungeniert, meinem Router mit derartigen zufälligen MAC-Adressen vorgaukeln, er hätte so eine?
-
AutoYaST Du meinst hier das was man z.B. mit cat /proc/cpuinfo in der/den 'vendor_id'-Zeilen bekommt?
ich denke das steigt hier tiefer ins System rein;
in Assembler würde das z.B. das Ergebnis der CPUID Mnemonic heissen;
Spoiler anzeigen
CPU.asm
Code
Alles anzeigen;Assembler code for C 32-bit flat library ;-------------------------------------------------------------------------- ;void __cdecl getcpuid( unsigned long* pEAX, unsigned long* pEBX, unsigned long* pECX, unsigned long* pEDX ); ;-------------------------------------------------------------------------- .586 ;-------------------------------------------------------------------------- .MODEL FLAT, C ;========================================================================== getcpuid PROTO NEAR32 C pEAX : NEAR32 PTR DWORD, pEBX : NEAR32 PTR DWORD, pECX : NEAR32 PTR DWORD, pEDX : NEAR32 PTR DWORD ;-------------------------------------------------------------------------- .CODE ;-------------------------------------------------------------------------- getcpuid PROC NEAR32 C USES EAX EBX ECX EDX EDI, pEAX : NEAR32 PTR DWORD, pEBX : NEAR32 PTR DWORD, pECX : NEAR32 PTR DWORD, pEDX : NEAR32 PTR DWORD MOV EDI,pEAX MOV EAX,[EDI] CPUID MOV [EDI],EAX MOV EDI,pEBX MOV [EDI],EBX MOV EDI,pECX MOV [EDI],ECX MOV EDI,pEDX MOV [EDI],EDX RET getcpuid ENDP ;-------------------------------------------------------------------------- ENDMAIN.cxx
C
Alles anzeigen// MAIN.cxx, model: 32-bit #include <stdio.h> #ifdef __cplusplus extern "C" { #endif void __cdecl getcpuid( unsigned long* pEAX, unsigned long* pEBX, unsigned long* pECX, unsigned long* pEDX ); #ifdef __cplusplus } #endif int main( int argc, char* argv[] ) { unsigned long ulEAX, ulEBX, ulECX, ulEDX; ulEAX = 0UL; getcpuid( &ulEAX, &ulEBX, &ulECX, &ulEDX ); char* pchEBX = (char*) &ulEBX; char* pchECX = (char*) &ulECX; char* pchEDX = (char*) &ulEDX; printf( "%c%c%c%c %c%c%c%c %c%c%c%c", *( pchEBX ), *( pchEBX + 1 ), *( pchEBX + 2 ), *( pchEBX + 3 ), *( pchECX ), *( pchECX + 1 ), *( pchECX + 2 ), *( pchECX + 3 ), *( pchEDX ), *( pchEDX + 1 ), *( pchEDX + 2 ), *( pchEDX + 3 ) ); return 0; }zusammengeflickt würde das in etwa so:
ml /c /coff CPU.asm
und
cl MAIN.cxx CPU.obj
die Ausgabe auf einem VPS der Gen7, bei welchem noch Intel CPUs im Einsatz waren sieht dann so aus:
Genu ntel ineI, lt. Spec. des CPUID Befehls, ist die Reihenfolge EBX, EDX, ECX
und übergibt man im EAX Register den Wert 1, dann erhält man Dinge wie: Family, Model, Stepping;
in dem VPS wo ich des getestet habe, ist es Family 6 Model 13 Stepping 3
in Tabellen kann man nachsehen, welche CPU das ist ..., hab ich jetzt nicht gemacht;
-
KB19 das würde dann dafür sprechen, dass bei den IPs und vLANs bei den Osterangeboten ähnliches wie bei den RS/VPS gilt: Lass Dich überraschen;
im CCP findest dann ja den Standort f. welchen es ist
