Beiträge von gandro

    Kurz darüber geflogen scheint die Hardware intern den 1.1.80 als Nullpunkt zu verwenden (steht so bisschen im Widerspruch zu 1984 aus dem Zitat?). Der Code verwendet einen BIAS Offset von 12 Jahren, der wird beim Auslesen dazuaddiert, beim Schreiben wieder davon abgezogen. Beispiel INPUT und OUTPUT:

    Code
    INPUT:
              mov       ah,-2               ; Use INT 1A.FE
              int       1ah                 ;   to read from hardware clock
              add       bx,cs:BIAS
              mov       [di],bx             ; bx: # days since 80.01.01

    Du kannst versuchen das selber anzupassen, siehe Zeile 143:

    Code
    BIAS      dw        (366+3*365)*3       ; # days between 1980.01.01
                                            ;            and 1992.01.01

    = 3 * 366 + 9 * 365 = 3 Schaltjahre und 9 normale Jahre. Für 2016 als Nullpunkt musst du also 9 Schaltjahre und 27 normale Jahre nehmen, also lustigerweise genau 3x länger.

    Code
    BIAS      dw        (366+3*365)*9

    Da ist jetzt eine 9 anstatt eine 3, weil 3*3 = 9. Ansonsten 9*366+27*365. Das liegt immer noch im 16-Bit Range und sollte daher keine Probleme machen, wobei ich mir den Rest vom Source-Code noch nicht angeschaut habe..

    Wie du den Source-Code kompilierst kann ich dir aber spontan nicht gerade sagen, da der Offset aber fix ist könnte man evtl. auch das Binary patchen..

    Nachtrag: Der ursprüngliche BIAS war offenbar 4 Jahre, darum die Multiplikation mit 3..

    Alternativ xf86-input-libinput. Sind beides Treiber für TouchPads, Synaptics ist älter und hat mehr Konfigurationsmöglichkeiten, libinput ist moderner und versucht die Dinge sinnvoll vorzukonfigurieren. Je nach Benutzergewohnheiten und Modell funktioniert der eine oder der andere besser.

    Es scheint, als ob der X-Server selber nicht als Abhängigkeit installiert wurde, keine Ahnung warum. pacman -Qo /usr/bin/X: /usr/bin/X is owned by xorg-server 1.18.3-2. Du möchtest also mindestens noch das Paket xorg-server installlieren.

    Für die Anleitung würde ich mir die Wiki-Seite deines bevorzugten Window Managers bzw. Desktops anschauen.

    Moderations-Hinweis

    Weil in den Threads von Michael_ in letzter Zeit des öfteren in Off-Topic-Beiträge oder Flames ausartet will ich hier nochmal klar machen, dass wir das nicht dulden. Alle Beiträge die nicht konstruktiv zur Problemlösung beitragen werden gelöscht, das trifft auch auf Beiträge vom Threadersteller (Michael_) zu.

    Es kann doch nicht angehen, dass Leute hier komplett ausflippen weil sich leicht genervt sind und dann im öffentlich sichtbaren Bereich irgendwelche sinnlosen Diskussionen anzetteln. Der Zweck von dem Forum hier ist die Diskussion über Retro-Windows-Systeme. Wenn euch solche Themen nicht interessieren, dann lest sie auch nicht und zettelt nicht aus Langeweile (oder weil ihr bestimmte Personen nicht mögt) irgendwelche Streitereien an. Danke.


    Das Programm erfüllt sehr wahrscheinlich seinen namentlichen Zweck nicht, da dieser sich nur irgendwo 1 GiB virtuellen Speicher her besorgt und mit einem fixen 8-Bit-Muster (0100 0001) vollschreibt. Man müsste schon mit Inline-Assembler (z. B. CLFLUSH-/MFENCE-Instruktionen auf x86) dafür sorgen, dass die Muster tatsächlich im RAM landen. Ein "intelligenter" C-Compiler könnte vielleicht sogar die memset-Aufrufe völlig aushebeln, da der von der einen Funktion beschriebene Speicher ausschließlich von der anderen ausgelesen und sonst nicht benutzt wird - mit clang unter FreeBSD scheint laut dem Thread z. B. das gesamte Gigabyte einfach auf eine einzige Speicherseite gemappt zu werden, die mit diesem Muster gefüllt ist.


    Ja, gute Punkte. Die Compileroptimierungen kriegt man mit volatile und Compiler-Barriers raus, wenn sie überhaupt greifen. Die Prozessoptimierungen sind schwieriger, Cache einerseits, insbesondere Prefetcher andererseits. Was wir damals für die Messung von Speicherlatenz in NUMA-Systemen gemacht haben, ist den Speicherbereich mit Pointern auf sich selber füllen und dann zufällig shuffeln. Und dann ein paar Millionen Iteration einfach den Pointern folgen. Den Cache kriegt man in der Regel durch genügend grosse Blöcke vergiftet, und der Prefetcher kann die zufälligen Muster nicht unendlich vorhersagen.


    Leute, ein letztes Mal: Gusch wer nix beizutragen hat. Lest EURE alten Beiträge und seid in genierter Form noch mehr Gusch..jeder fängt als DAU an. Besser so als gar nicht.


    Was freaked sagt. Wir sind hier nicht im Off-Topic, Derailment könnt ihr woanders machen.


    Btw, wie muss man die Stromsparmodi mit powertop unter Skylake deuten?

    Bei Package ist maximal PC2 angesagt.
    Core 0+1 geht aber bis CC7 runter
    Einzelne Kerne 0-3 bis runter C10-SKL
    GPU ebenfalls nach RC6

    Soweit sieht das gut aus. Ist es aber normal, dass Package nur bis PC2 geht? Klingt grad nicht so positiv?


    https://mjg59.dreamwidth.org/41713.html

    Gut ist das sowieso alles nicht, aber PC3 müsste schon gehen.

    Nachtrag: Die Kommentare diskutieren auch PC2.

    Windows Subsystem for Linux Overview

    Sehr schöner, kurzer Überblick von Microsoft wie das WSL intern funktioniert. Wie schon klar war, handelt es sich um Kernel-Treiber die Linux System-Calls übersetzen oder implementieren (also nichts, was die OpenSource-Community hätte machen können). Interessantes Detail: Die Linux-Prozesse sind als Pico-Prozesse implementiert. Wer das nicht weiss, Pico-Prozesse sind eine Art Container (von bevor Container cool waren) aus Zeiten wo Microsoft mal Windows als Library-OS implementiert hat ("DrawBridge"), was auch unter Barrelfish lief. Kurzum: Das Windows Subsystem for Linux basiert in Teilen auf Technologie, die von damals stammt als Microsoft mal sein eigenes WINE geschrieben hat (das ist Verschwörungstheorie von mir, aber ich vermute dass die Drawbridge auch mal mit Linux haben laufen lassen, dass es mal auf Barrelfish lief ist öffentlich).

    Achso, habe ich etwas missverständlich formuliert, Skylake und UEFI sind zwei komplett separate Problematiken; ich wollte nur darauf hinweisen dass man mit Skylake sowieso einen möglichst neuen Kernel haben will, und die als Nebeneffekt weil sie so neu sind den UEFI-rw-Schutz bereits implementiert.