Software Engineer & DevOps Architect. Mbin contributor (and creator of the fork).

He/him 🇳🇱🏳️‍🌈

Mastodon - Matrix - Telegram - Homepage - Donate me

  • 0 Posts
  • 64 Comments
Joined 1 year ago
cake
Cake day: June 20th, 2023

help-circle


  • I got this back from ChatGPT (most likely false info!):

    ChatGPT response (you have been warned)

    The compromise for integrating PREEMPT_RT into the Linux mainline kernel, including the handling of printk, required several changes and concessions over time. These compromises made it possible to finally integrate real-time (RT) capabilities while maintaining the overall philosophy and structure of the Linux kernel. Key Compromises Made:

    1. Soft-Real-Time Focus:

      One of the biggest compromises was accepting that Linux would focus on soft real-time capabilities instead of hard real-time guarantees. This was crucial for widespread acceptance in the mainline kernel, as hard real-time guarantees were too difficult to meet without significant changes that would have disrupted the kernel’s general-purpose use cases. PREEMPT_RT was designed to offer deterministic behavior with reduced latencies, but it doesn’t provide the strict guarantees of traditional hard real-time systems like VxWorks or QNX.

    2. printk Latency Handling:

      Non-blocking printk: One compromise involved updating printk to avoid long blocking during logging operations. It was changed to be more asynchronous, reducing the impact on real-time scheduling. Deferred printing: Another approach was to defer the actual printing of log messages to avoid introducing large latencies in time-critical paths. The goal was to prevent printk from stalling critical tasks, especially those with real-time priority.

    3. Voluntary Preemption Points:

      Voluntary preemption was introduced, allowing kernel code paths to insert preemption points that allow the scheduler to preempt running tasks, improving latency. However, this does not guarantee immediate preemption, which is another compromise compared to true hard real-time systems. These preemption points had to be carefully placed to balance performance and responsiveness without destabilizing the general-purpose kernel.

    4. Threaded Interrupts:

      Another significant compromise was the conversion of hard IRQs (interrupts) into threaded interrupts. While this allows real-time tasks to take precedence over hardware interrupts (which would traditionally have a higher priority), it involves some overhead and performance trade-offs. Not all interrupts could be threaded easily, and this change required reworking many drivers to ensure that they were compatible with threaded interrupts.

    5. Preemptible Spinlocks:

      Spinlocks in the kernel traditionally prevent preemption. To enable real-time preemption, spinlocks were made preemptible, allowing real-time tasks to preempt even code holding spinlocks. This change wasn’t trivial, as it involved significant reworking of kernel locking mechanisms to ensure the system remained stable and avoided deadlocks, without degrading performance in non-real-time scenarios.











  • I myself have much success with Linux Mint (eg. Cinnamon edition). I love Mint… It just works… It’s stable and I can focus on doing my work under Linux, which is software development mostly. But I just don’t have the time to debug my distro, fixing things and compile stuff myself. I already need to manage multiple PCs & servers running Linux. Hence I went with Linux Mint on both my desktop PCs as well as my laptop I’m currently typing on.

    I tested things like: bluetooth, wifi, speedtest, webcam, shortcuts (eg. sound buttons or brightness buttons at the top), trackpad, multiple finger gestures. The only thing I didn’t yet test is the finger print reader, if it has one?..

    Framework laptops can also come with many expansion cards, like HDMI, DisplayPort, network (LAN) port, USB a, USB c, and so much more. I also tested those in-/outputs. Thus far everything seem to work nicely. I did switch the wifi card, I replaced the stock wifi card with a Intel AX210, which seems to work much better under Linux in terms of not only speed, but also signal strength. Let me know if you want to know more…







  • I agree. But to be very honest, de-googling is very important but not always very easy. So I did personally move away already from Gmail. I also now host my own Nextcloud instance, which I use for my agenda as well as contacts. Meaning I also don’t sync or store contacts or anything in Google. I don’t use any cloud services for storage either, again Nextcloud (self hosted) solved that for me.

    Then I was never using ChromeOS, so that helps, I’m only using Linux. However, I do have an Android device. It’s really hard to get rid of that, maybe a custom ROM, is that valid? Anyhow, and last but not least Google search, Google images, Google maps, etc. I don’t want to go from Google Search to another big Microsoft corp, so moving to Bing is a no go. That also means all those meta search engines is also not a good alternative, which includes: DuckDuckGo, ecosia and alike… Qitchain, presearch or Yacy isn’t working for me either. It’s just not good enough.

    Thus finding a good search alternative is hard! I’m actually considering as a software engineer to build my own.