News Linux-News der Woche: Lossless Scaling für Linux, GuideOS und viel X11

C ist nach wie vor unerreicht. Dann kommen und gehen halt die Programming Languages of the Week. Selbst COBOL war mal heißer Scheiß.
 
  • Gefällt mir
Reaktionen: Brrr, SirSinclair und flaphoschi
Farrinah schrieb:
Statt mal alles unter einem Dach zu machen
Selbst unter Windows kommt doch hier das Geweine nach einem Gaming-Windows ohne pöse KI.
Ich glaube nicht, dass viele in dieser Spalte hier ihr Linux gern so wie ich haben wollen. Mit einer Distro fängt dann das Gefrickel wie unter Windows an, dass sich jeder erstmal stundenlang seine Ausgangsdistro umbaut und dann bei Updates zittert, wenn das Gebastel zu wild war.
 
  • Gefällt mir
Reaktionen: Gohma und Randnotiz
pseudopseudonym schrieb:
Wo ist der am Abflauen?


C++ ist ein dampfender Haufen Kompost. Das weiß auch jeder, der mal erstnhaft damit gearbeitet hat. Ja, man kann seinen Kram damit machen, aber früher oder später bastelt man sich immer einen Memory-Leak.
Ich schreib bewusst Kompost und nicht Scheiße, weil C++ in seiner Zeit schon top war. Aber alles hat seine Zeit.
Jeder Webbrowser, alle großen Spieleengines und große Teile des Systemprogrammierung nutzen C++. Und die F35. Alle funktionieren.

Wenn man meint Vererbung, manueller Speicherverwaltung und Metaprogrammierung gegen jede Vernunft nutzen zu müssen, klappt das nicht. So Blödsinn bekommt hin, wenn die Programmierer schlecht genug sind.

Mit Java oder Rust kann man sich auch das Leben schwer machen. Es gibt so Leute denen man das synchronized Keyword nicht zeigen darf…
 
sh. schrieb:
Was arbeitet den bei dir schneller?
Das Arbeiten läuft einfach flüssiger. Programme starten schneller usw.
Grimba schrieb:
Also so sehr ich CachyOS mag, und ich grundsätzlich zustimme, dass es per se recht flott ist, aber wir reden hier nicht von Welten Unterschied.
Ich hab ja auch nie von Welten gesprochen. Merklich läuft es aber schneller und das fällt nun mal positiv auf.
 
TheInvisible schrieb:
Ja klar wennst den Luxus bekommst und mit einem RollingRelease Distroy "testen" kannst hast den Jackpot, unsere Firma würde dich jedenfalls davonjagen.
hab ich was davon gesagt, dass man rolling nutzen soll, egal mit oder ohne test?
TheInvisible schrieb:
Ansonsten: Theorie und Praxis, du kannst meist gar nicht alles testen,
faule ausrede
 
  • Gefällt mir
Reaktionen: ETI1120
Siebenschläfer schrieb:
C ist nach wie vor unerreicht. Dann kommen und gehen halt die Programming Languages of the Week. Selbst COBOL war mal heißer Scheiß.
Ich musste leider COBOL Programmieren. Und COBOL fixen.

Man kann goto[1] richtig verwenden. Oder das tun was COBOL Programmierer getan haben.

Modernes Äquivalent ist die religiöse Nutzung vom Interfaces, Vererbung und Patterns. Wenn man nach dem warum fragt, gibt es dann keine Begründung sondern nur den Verweis, dass das damals so in “Clean Code” stand.
https://qntm.org/clean

Selten etwas so bereut wie das Buch. Statt klarem Code bekommt man Gebote.

[1] Logikteil einer Funktion anspringen. Zum Beispiel die “cleanup:”. Gut lesbar, sicher. Linux ist ein Beispiel für die verantwortungsbewusste Nutzung.
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: Flutefox und Brrr
floTTes schrieb:
Die aktuellen Kernel-Level-Anti-Cheat-Systeme, die unter Windows genutzt werden, können nicht auf alles zugreifen. Das wäre ja noch schöner.
Das unterstellt man ihnen gerne. Gerade Nicht-Informatiker sind da ganz, ganz schnell.
Da muss ich mal etwas klar stellen, du bist vielleicht schon mal über den Begriff "Ring0" gestolpert.

Kurz erklärt, das einfache Problem ist:
Wenn ich einfach nur Code habe, woher weiß ich dass der Code "Permission okay, weitermachen!" vom Kernelausgeführt wurde - und nicht vom Nutzer? Wie kann ich verhindern, dass sich ein Nutzer einfach als "Sicherheitsbeamter" ausgibt?

Dafür braucht es zwangsläufig Hardwareunterstützung; kurz gesagt ein Flag - der Ring.
Ring 0 => Kernel
Ring 3 => Nutzer (inkl. root)

(Ring 1 und 2 gabs mal, sind aber nicht mehr relevant)

Die Logik ist:
Laufe ich im Ring 3, werde ich vom Ring 0 überwacht.
Laufe ich im Ring 0, sind alle Sicherheitschecks deaktiviert.

Jeder Kernel-Treiber läuft zwangsläufig in Ring 0, kann also technisch alles und steht über root.
Einschränkungen machst du einzig über Policy, sprich bevor Microsoft den Treiber signiert, schauen die sich den genau an und prüfen dann Einschränkungen wie: Der Treiber ließt tatsächlich nicht alle Prozesse.

Deshalb sind Treiber aber auch grundsätzlich so gefährlich: Sollte irgendetwas schiefgehen, im Ring 0 gibt es keine Checks und "Sicherheitsnetze" - da ist dann alles zu spät. Und ja, das betrifft auch den Mediamarkt Webcam-Treiber.


floTTes schrieb:
Womit wir wieder bei trustworthy Umgebung wären.
Ich habe so das Gefühl, du setzt trustworthy Umgebung gleich mit "ist signiert".

Schau, wenn ich mein Auto zertifizieren will, mache ich das ja auch nicht selber... Da gehe ich aus Gründen zum Tüv. Es würde 0 Wert darin liegen, wenn ich selber auf mein Auto einen "passt schon" Stickler klebe.

Genau so ist es beim Anticheat. Da hast du 0 Wert, wenn du eigene Keys verwendest.
Deshalb ist das TPM 2.0 da um all die Keys sicher aufzuzeichnen - dass der Anticheat dann verifizieren kann: Da laufen nur die authentifizierte Keys von Microsoft.

Sollte das Missverständniss sein: Einen weitere Key installieren z.B. für Linux Dual-Boot ist selbstverständlich kein Problem, solange dieser beim Boot nicht verwendet wird.

Sobald du irgendetwas anders lädst, sollte der EA-Javelin aber rausspringen. Zugegeben, nur vom Konzept, nicht ausprobiert. Aber sollte es hier eine Lücke geben (scheint so), ist Microsoft gerade dabei auch diese zu schließen, Stichwort Remote Attestation.
https://www.gamestar.de/artikel/microsoft-anti-cheat-secure-boot-tpm-2,3443235.html

Inwieweit Secure Boot mit eigenen Zertifikaten trotzdem Sinn macht, habe ich oben erklärt. Es geht darum das eigene System vor externer Manipulation von Außen zu schützen (vs. Anticheat was das eigene System vor eigener Manipulation schützen soll).
 
  • Gefällt mir
Reaktionen: riloka und floTTes
flaphoschi schrieb:
Ich musste leider COBOL Programmieren. Und Code fixen.
Aber es war mal der heiße Scheiß ... irgendwann anno 1959: Frauen werden Computer in "natürlichem Englisch" programmieren. Wenn die Versprechungen zu LLMs ganz ähnlich klingen, ist das kein Zufall. Da wiederholt sich das gerade.

flaphoschi schrieb:
Man kann goto[1] richtig verwenden.
Genau, nimm ein beliebiges Github-Projekt in C, zehntausende LOC - kein einziges goto. Das sagt was aus über den Autor...

flaphoschi schrieb:
Modernes Äquivalent ist die religiöse Nutzung vom Interfaces, Vererbung und Patterns. Wenn man nach dem warum fragt, gibt es dann keine Begründung sondern nur den Verweis auf “Clean Code”
Haufenweise generierter Boilerplate ohne eigentliche Funktion ist das Gegenteil von "Clean Code".
 
OpticalFiber schrieb:
Linux Mint hat nur eine andere oberfläche. Wobei auch die oberfläche auf Gnome basiert.
Cinnamon, die Desktopumgebung, ist nicht einfach nur eine andere, Gnome-basierte Oberfläche. Es hat zwar als Fork von Gnome 3 begonnen, aber mittlerweile kaum noch Verbindungen zu Gnome. In Cinnamon wurde über die Jahre so viel am Code geändert und Teile sogar durch Eigenentwicklungen ersetzt (bspw. komplett selbst entwickeltes System statt der Gnome Shell), dass man es heutzutage durchaus als komplett eigenständige Desktopumgebung ansehen kann, mit seinen Wurzeln bei Gnome 3.

Die einzige Gemeinsamkeit zwischen Cinnamon und Gnome ist praktisch nur noch, dass beide GTK als UI-Toolkit nutzen. Davon ab spielt die Entwicklung und Codebasis von Gnome 3 effektiv keine Rolle mehr für Cinnamon.
 
  • Gefällt mir
Reaktionen: Tanzmusikus und garfield121
flaphoschi schrieb:
Jeder Webbrowser, alle großen Spieleengines und große Teile des Systemprogrammierung nutzen C++. Und die F35. Alle funktionieren.
Die sind auch alle entsprechend alt. Als die gestartet wurden, gab es nicht viel anderes. Aber jetzt geh mal die Changelogs dieser Projekte in den letzten Jahren durch. Massen an Fixes wegen irgendwelcher Speicherverwaltungs-Bugs.

flaphoschi schrieb:
Mit Java oder Rust kann man sich auch das Leben schwer machen. Es gibt so Leute denen man das synchronized Keyword nicht zeigen darf…
Wieso kommst du eigentlich schon wieder mit Java? Das schwimmt doch in einem ganz anderen Teich als
C++ oder Rust.
 
mibbio schrieb:
Cinnamon, die Desktopumgebung, ist nicht einfach nur eine andere, Gnome-basierte Oberfläche.
Sieht aber am Ende doch wieder nur aus wie Windows mit Startmenü, während GNOME lieber bei macOS mit Dock abkupfert.

Es gab mal Zeiten, da hat man sich an etablierten Unix-Desktops orientiert. Statt das aber behutsam weiterzuentwickeln, ist man irgendwann nur noch am Abkupfern gewesen.
 
Siebenschläfer schrieb:
Es gab mal Zeiten, da hat man sich an etablierten Unix-Desktops orientiert. Statt das aber behutsam weiterzuentwickeln, ist man irgendwann nur noch am Abkupfern gewesen.
Welches sind denn diese etablierten Unix-Desktops?
 
  • Gefällt mir
Reaktionen: BOBderBAGGER
pseudopseudonym schrieb:
Ja, man kann seinen Kram damit machen, aber früher oder später bastelt man sich immer einen Memory-Leak.
flaphoschi schrieb:
Wenn man meint Vererbung, manueller Speicherverwaltung und Metaprogrammierung gegen jede Vernunft nutzen zu müssen, klappt das nicht. So Blödsinn bekommt hin, wenn die Programmierer schlecht genug sind.
Das "kann" ich gleich mit mehreren Sprachen! Auch Deadlocks sind eine meiner "Spezialitäten". :evillol:

Je nach Uhrzeit und/oder Kaffeekonsum programmiere ich dir Code zusammen, dessen Wartbarkeit gegen 0 geht. :freak:

flaphoschi schrieb:
Modernes Äquivalent ist die religiöse Nutzung vom Interfaces, Vererbung und Patterns. Wenn man nach dem warum fragt, gibt es dann keine Begründung sondern nur den Verweis auf “Clean Code”:
https://qntm.org/clean
Je nach Uni oder Dekade ist gerade etwas anderes der heiße Shice: Vererbung = pfui, Interfaces = feini.
Ich glaube, dass es viel von der Zeit des Studiums und den Dozenten abhängt. Gerade als Frischlinge werden wir ja stark geprägt. Nach dem Studium kommt dann das große Erwachen.

DerAnnoSiedler schrieb:
Die Logik ist:
Laufe ich im Ring 3, werde ich vom Ring 0 überwacht.
Laufe ich im Ring 0, sind alle Sicherheitschecks deaktiviert.
Diese Logik stört mich schon seit Jahren. Es war sicherlich mal notwendig um Effizienz und Performance zu steigern, aber von modernen CPUs würde ich mir da mehr Granularität wünschen.

DerAnnoSiedler schrieb:
Ich habe so das Gefühl, du setzt trustworthy Umgebung gleich mit "ist signiert".
Ich halte eine Signierung diesbezüglich für unumgänglich, ja.

DerAnnoSiedler schrieb:
Genau so ist es beim Anticheat. Da hast du 0 Wert, wenn du eigene Keys verwendest.
Deshalb ist das TPM 2.0 da um all die Keys sicher aufzuzeichnen - dass der Anticheat dann verifizieren kann: Da laufen nur die authentifizierte Keys von Microsoft.
Hier sind wir leider durcheinander geraten, was Secure Boot und Anti-Cheat angeht.
Ich würde mir natürlich eine höhere CA als mich wünschen. Eine CA neben MS. Dafür bräuchte es eine Organisation oder Foundation, die sich mit Herstellern auseinandersetzt.

Self signing sollte nur Secure Boot dienen, nicht aber Anti-Cheat - das wäre sinnlos. Da stimme ich mit dir überein.

DerAnnoSiedler schrieb:
Sobald du irgendetwas anders lädst, sollte der EA-Javelin aber rausspringen.
Du kannst die Zertifikatskette ja überprüfen. So lange die fragwürdigen Zertifikate nicht genutzt werden, sollte es keine Rolle spielen.

Secure Boot hat noch viele Schwachstellen - nicht nur korrupte Zertifikate. Ich kann z.B. munter an meinem UEFI rumbasteln ohne den Secure-Boot-Status zu verlieren. :freak:
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: flaphoschi
pseudopseudonym schrieb:
Viel wichtiger ist, dass die diesen Snap-Scheiß rausgeworfen haben und DEBs für Chromium, Firefox und co anbieten.
Wieso scheiss? App Container die alles mitbringen was benötigt wird macht es einfacher für Entwickler ihre Software in einem sauberen Zustand für Linux auszuliefern der geprüft ist und funktioniert.
Bei Anwendungen wie Browsern die häufiger als ein LTS und stabiles System aktualisiert werden müssen, ist das Gold wert.
 
  • Gefällt mir
Reaktionen: Tanzmusikus
  • Gefällt mir
Reaktionen: ETI1120, BOBderBAGGER und Zhenwu
flaphoschi schrieb:
Modernes Äquivalent ist die religiöse Nutzung vom Interfaces, Vererbung und Patterns. Wenn man nach dem warum fragt, gibt es dann keine Begründung sondern nur den Verweis, dass das damals so in “Clean Code” stand.
https://qntm.org/clean
Ich bin mir ziemlich sicher, dass Clean Code - oder eher Clean Architecture - nicht die "religiöse" Nutzung von Vererbeung empfiehlt.
Im Gegenteil: Vererbung ist eine Form von Abhängigkeiten und sollte nur durchdacht verwendet werden (wird gerne viel zu häufig verwendet!).
Das Buch beginnt übrigens zu erklären, der eigentliche Wert von OO liegt ganz wo anders, Vererbung ist maximal ein "halber Punkt" für OO.

flaphoschi schrieb:
[1] Logikteil einer Funktion anspringen. Zum Beispiel die “cleanup:”. Gut lesbar, sicher. Linux ist ein Beispiel für die verantwortungsbewusste Nutzung.
Weil C eine alte Programmiersprache ist, bei der man sich nicht anders helfen kann.
In jeder modernen Programmiersprache gibt es genau dafür ein Keyword "finally" (oder ähnlich).
Bestrebungen sind nicht ohne Grund in Richtung Rust - bei Linux und bei Windows.
 
  • Gefällt mir
Reaktionen: flaphoschi und floTTes
Nerdpatrol schrieb:
Deplatziert. Das hat rein gar nichts mit Linux zu tun, sondern mit Vorgaben der Publisher und ihrem "anti-cheat", also invasiver spyware, die eben unter Linux nicht funktioniert, weil es ein besseres, sichereres System ist als Windows.
Hat also doch mit (sicherem) Linux zu tun.
 
Nerdpatrol schrieb:
Deplatziert. Das hat rein gar nichts mit Linux zu tun, sondern mit Vorgaben der Publisher und ihrem "anti-cheat", also invasiver spyware, die eben unter Linux nicht funktioniert, weil es ein besseres, sichereres System ist als Windows.
Ich hab Battlefield seit BF2 gespielt, das ist nun vorbei. Firmen die Rootkits verteilen sind bei mir raus.
 
  • Gefällt mir
Reaktionen: Gohma
floTTes schrieb:
Ich würde mir natürlich eine höhere CA als mich wünschen. Eine CA neben MS. Dafür bräuchte es eine Organisation oder Foundation, die sich mit Herstellern auseinandersetzt.
Aber wofür? Eine CA dann letztendlich um ein Linux-Anticheat-Kernelmodul zu schützen - das aber derzeit gar nicht existiert und auch sehr sicher nie existieren wird...

Glaub mir, wenn für den Spielemarkt eine CA etwas bringen würde, hätte Valve längst diese Rolle spätestens mit Release des Steamdecks übernommen.

Ich kann z.B. munter an meinem UEFI rumbasteln ohne den Secure-Boot-Status zu verlieren. :freak:
Das ist völlig klar. Deshalb verlangt ja kein Anticheat nur Secure-Boot, sondern immer in Kombination mit TPM.
 
DerAnnoSiedler schrieb:
Aber wofür? Eine CA dann letztendlich um ein Linux-Anticheat-Kernelmodul zu schützen - das aber derzeit gar nicht existiert und auch sehr sicher nie existieren wird...
Du musst ja nicht nur für Anti-Cheat trustworthy sein. Wie willst du das DRM-Problem für Linux angehen?

Mir fällt neben trustworthy nur noch immutable ein.
Die Content-Mafia will die d-box 2 sicher nicht wieder auferstehen lassen.

Ich fühle mich zu alt für Piraterie. (Außerdem habe ich meine externen Festplatten mit den "BluRay-Backups" verlegt.) Zahlen und genießen wäre mir da lieber.

DerAnnoSiedler schrieb:
Glaub mir, wenn für den Spielemarkt eine CA etwas bringen würde, hätte Valve längst diese Rolle spätestens mit Release des Steamdecks übernommen.
Ich hoffe ja, da kommt noch was.
 
Zuletzt bearbeitet:
Zurück
Oben