I've been using QEMU for s390x work for years, and honestly, for most development tasks it's impressively dependable. For bringing up kernels, testing initramfs changes, and iterating on system services, QEMU will save you endless time: fast cycles with snapshots, easy serial logs, and straightforward debugging with gdb. The system emulation supports the common channel-attached (CCW) devices and block/network backends well enough to boot mainstream distributions, run systemd, and validate functionality without needing iron in the room.
That said, reliability depends on what you mean by "reliable." If you need functional correctness—does the kernel boot, do filesystems mount, do userspace services run—QEMU is solid. If you need hardware-accurate behavior, cycle-exact timing, or access to specialized on-chip accelerators (cryptographic units, proprietary telemetry, or mainframe-specific features), QEMU's TCG emulation will fall short. KVM on real IBM Z hardware is the path for performance parity and hardware feature exposure, but of course that requires access to real machines.
My usual workflow is to iterate fast in QEMU, use lightweight reproducible images, write tests that run in that environment, then smoke-test on actual hardware before merging big changes. For everyday development it's a huge productivity boost, but I always treat the emulator as the first step, not the final authority.
I usually spin up s390x VMs in QEMU when I want reproducible CI runs or to debug a weird kernel oops from a cross-compiled build. From a practical standpoint, QEMU is great: you can script VM creation with qemu-img, attach a rootfs, forward a serial console, and capture logs reliably. Using serial consoles and kernel command-line logging makes flaky boot issues much easier to track without needing physical console access.
There are a few caveats I always keep in mind. Performance with TCG can be sluggish for heavy workloads, so I prefer virtio backends where possible since they massively improve I/O throughput. Also, device coverage is pretty good for everyday servers, but some mainframe-specific quirks—like channel program edge cases or device-specific ioctl behaviors—may not be exactly the same as on real hardware. For CI, that usually means QEMU catches regressions early, but I gate releases with at least one test run on real hardware when possible.
Bottom line: use QEMU for fast, reproducible development and CI, but don't rely on it for microarchitectural benchmarking or testing obscure mainframe-only devices. It keeps the development loop tight and predictable, which to me is worth the trade-offs.
I love tinkering with s390x on my laptop, and QEMU is my go-to because it lets me boot a whole mainframe-like environment without leaving the couch. It's very reliable for learning, debugging kernel parameters, and trying distro images: I can download a prebuilt s390 image, tweak grub or 'zipl' boot options, and watch the serial console for immediate feedback. For hobby projects—packaging, service behavior, or tracing a syscall path—QEMU gives all the visibility I need.
That said, I once chased a perf bug that only showed up on actual IBM hardware; QEMU reproduced the functional bug but not the timing-related behavior. So I treat the emulator as perfect for correctness checks and development convenience, but I keep the reality check in mind for performance-sensitive features or hardware crypto acceleration. If you're just getting started, grab a distro image, enable the serial console, and enjoy how quick the iteration feels—then try to validate critical things on real iron when you can.
2025-09-07 04:22:02
7
Lihat Semua Jawaban
Pindai kode untuk mengunduh Aplikasi
Buku Terkait
From Glitch to Glory
Perfect Timing
8.3
12.0K
After I dropped out of school, my parents didn't pressure me to do anything.
But Nicole Hicks kept calling nonstop. She was my boyfriend's childhood friend who had established a reputation as a genius.
I was too busy helping out in the fields, growing vegetables, and splashing around in the creek, living my best carefree life. Writing code wasn't even on my mind.
In my past life, she had turned in a project just one day before I did. Her codes were exactly the same as mine.
Everyone called me a fraud and said I had stolen it.
I tried to explain, but no one believed me.
Later, she even did a livestream, accusing me online of being a school bully.
People went wild. They didn't just come for me—they went after my whole family. Some obsessed troll chased my parents in a car, and they died in a crash.
I couldn't take it anymore. I jumped off a high-rise, my eyes still wide open, refusing to accept the way it all ended.
Even in my last moment, I couldn't figure it out.
That code was mine. My hard work. So how did she manage to post it before me?
When I opened my eyes again, I was back, right before everything fell apart.
When Aiden Gomez, the heir of Gomez Robotics Company, is shoot to death by their family's mysterious traitor and falls into a coma, his scientist grandfather creates an artificial intelligence humanoid robot to take his place. His name is Aiden 2.3 who looks exactly like the human Aiden.
In the middle of their mission, Enzo Romeo, a good-humored programmer, find himself falling in love with Aiden 2.3 whose robotic and programmed heart starts to beat like a real human.
"What kills people are their personal ambitions."
A hacker has stolen the encryption keys and hacked through the data firewall at the bank my fiancee, Nancy Cost, and I work at.
Chester Gardner, the intern Nancy has hired, insists on using a program he made to track down the hacker. But in doing so, the bank's clients lost 200 billion dollars' worth of assets.
I do everything in my power to put the system on emergency maintenance so that I can retrieve the lost assets.
Chester ends up getting punished by the bank. He also gets blacklisted by the entire industry.
Nancy tries to plead for him, only to be stopped by me.
"Pleading for Chester is equivalent to committing career suicide! You won't be able to stay in the finance industry if you do that!"
Unable to withstand the torment any longer, Chester chooses to jump off the building.
Before he dies, he sends Nancy an accusatory text for not defending him.
But Nancy doesn't care about the text at all. Instead, she showers me with more care and love. We end up getting married.
I do everything I can to elevate Nancy to the position of a finance powerhouse as her core technical support.
But the day she attains her status is the day she frames me for hacking into the bank's system and stealing hundreds of millions' worth of assets. As a result, I get thrown behind bars and tortured till I die.
When I open my eyes again, I've returned to the day Chester presents the self-made program to track down the lost assets.
This time, I choose to sit by and watch.
What they don't know is that the richest man in Cantfield, Felix Watch, is the one who has lost his assets. Those who made him lose money in the past are all rotting in hell now.
My husband, Malcolm Thorpe, has low sperm motility. After 33 rounds of IVF, I finally got pregnant.
On delivery day, I start hemorrhaging, and the medical team calls for an emergency C-section. Malcolm signs the consent form, then rushes straight back to his childhood sweetheart's birthday party.
But instead of starting the C-section, the surgeon says, "Ms. Jacobson, the electronic medical record lists you as single. This consent form isn't valid."
I stop breathing for a beat. The happy marriage I believe in turns out to be a sham.
Later, Mom and Dad rush in and sign the consent for me. But by then, the baby is gone. The asphyxia lasted too long.
After surgery, I scrawl my name on the cremation consent with shaking hands, then dial a number without thinking.
"Samuel, are you free now? Meet me in front of City Hall."
Lately, my lunch buddy at work, Kaia Watson, always sits there grinning at her phone.
Whenever I ask what she's watching, she snaps impatiently, "It's just my lunchtime entertainment. Mind your own business."
But before long, I notice everyone in the office staring at their phones during lunch as well. They're completely engrossed, and they break into mocking laughter every few moments.
Finally, during one lunch break when no one is around, I take a peek at the video on her phone.
It's an AI-generated pornographic video. To my horror, the woman seductively posing in it has my face.
Before I can react, Kaia returns to her desk and snatches the phone out of my hands.
Seeing my face turn pale with anger, she lets out a dismissive laugh and says, "What? Don't tell me you're about to accuse us of spreading fake rumors about you? If you didn't do it, you wouldn't be so afraid of people talking.
"You sneak into the boss' office every day to take your lunch break. I don't think I need to spell out what kind of woman that makes you."
Only then do I realize that my colleagues have known all along that I go into that office surreptitiously every day to take a nap.
What they don't know is that my father is the owner of the company.
My fiance, Victor Blackwood, is a mafia boss who rules the country's underworld with an iron fist.
To the rest of the world, he is the epitome of power.
Yet to me, he is the embodiment of love.
But I do not realize the cost of loving a man like him.
On Valentine's Day, I cook his favorite dishes and wait for him to come home. However, time passes, and his chair stays empty.
Uneasy, I go to Queenie Stone's social media page. She is Victor's foster sister.
She posts, "All I said was that I felt lonely, and he came right away.
"Even when I accidentally spilled wine on him, he didn't mind. Victor is still someone who puts family first, even if it means neglecting his lover.
"He never lets me down. I hope things stay that way."
In the photo, Victor's shirt is soaked at the waist.
Queenie's handkerchief lingers near his most private parts, but he doesn't pull away. He merely looks at her affectionately.
I do not make a fuss and give Queenie's post a like.
Then, I send Victor a message that reads, "Let's break up."
Victor ignores it as always.
Later, I discover that when my breakup message popped up, he had said offhandedly, "Vivienne can't live without me. She's just acting out.
"If I ignore her for a few days, she'll come crawling back by herself. She's easy to please."
What he doesn't know is that I was easy to handle only because I once loved him.
But now that I have decided to leave, he cannot make me turn back, no matter how he tries to win me over.
When I dive into s390x support, I tend to look at two things: how mature a feature is in upstream mainline, and what enterprise distributions have backported. Historically, s390x has been part of the kernel for a long time (the s390/s390x tree matured through the 2.6 and 3.x eras), but the real message is that modern LTS kernels are where you'll find the best, most polished support for contemporary mainframe features.
If you want concrete guidance: pick a modern long-term-stable kernel — think 5.10, 5.15, or 6.1 — or newer 6.x kernels if you need bleeding-edge fixes. Those LTS lines collect important fixes for KVM on s390x, DASD/CCW improvements, zfcp (Fibre Channel) robustness, zcrypt and CPACF crypto support, and paravirtual I/O enhancements. Enterprise distros (RHEL, SLES, Ubuntu LTS) often backport features into their kernel trees, so a distribution-provided LTS kernel can be the safest route for production while still giving you modern hardware support.
Practically, if I’m deploying to a z15/z16 or running heavy KVM workloads, I’ll test on the latest upstream stable or a 6.x kernel to catch recently merged performance and crypto improvements, then switch to the distribution LTS that includes those backports for production. Also check kernel config options (look for s390, CCW, DASD, zcrypt-related flags) and read the s390-specific changelogs in the kernel git to verify feature flags you rely on.