Skip to content
Back to Articles
Articles

Buyer’s guide for Machine builders: an OS or Application Orchestration decision?

Stefan Wallin 10 minute read
industrial machinery using avassa

The OS Decision Is Not the Only Decision

A working guide to evaluating the operating-system layer and the application fleet-management layer at the edge. As two separate tracks, not one bundled purchase.

Who this is for

Engineers and technical leads at machine-building organizations; industrial equipment, vehicles, appliances, medical and lab devices who are in the decision phase of choosing an edge software platform, and who keep getting stuck on “we need to solve the OS first.” This is discussion material for an internal workshop, not a vendor pitch.


1. Why the OS Question Stalls the Whole Decision

In most edge platform evaluations we see, one question ends up absorbing the entire discussion: “which OS do we run, and who maintains it?” It is a legitimate and hard question — support windows, CVE response, driver availability, and update mechanisms are all real engineering liabilities. But because it feels foundational, teams treat it as a blocking dependency: nothing else gets scoped until the OS is settled.

That ordering has a cost. By the time the OS question is resolved, the team has often defaulted (without a deliberate decision) into whatever application fleet management came bundled with the OS choice, or into building fleet management in-house as an afterthought. Neither is wrong in every case. But neither should be the outcome of running out of runway to evaluate the other layer properly.

  • The bundled trap. A vertically integrated OS + device-management product (Balena and similar platforms are common examples) is genuinely fast to start with. The risk is discovering, once you have real application, security, or scale requirements, that the bundled orchestration layer was built to move containers around — not to run production fleet operations across application teams, environments, and long product lifecycles.
  • The in-house trap. Solving the OS problem in-house (Yocto build, update mechanism, driver maintenance) is a multi-year commitment on its own. Application lifecycle management, secrets, and orchestration are a second multi-year commitment layered on top, usually staffed by the same small platform team, usually starting later, usually under-scoped.

The practical fix is to stop treating application management and OS as one decision. It is two decisions, made by people with different skill sets, evaluated against different vendor markets, on different lifecycles. Section 2 lays out the layers; Sections 3 and 4 give you a requirements checklist for each; Section 5 explains why (with one narrow exception) they belong on parallel tracks.

Keep reading: Evaluating Edge Architectures: Vertical Solutions vs. Best-of-Breed Approaches

2. The Edge Software Stack, Layer by Layer

Every edge deployment is built from the same five layers, whether a team names them explicitly or not. Naming them is what makes it possible to evaluate two of them — OS and fleet management — independently.

ApplicationsYour product’s business logic, the software that makes the machine valuable.
Fleet Management: ApplicationsDeploy, update, observe, and secure applications across every device in the fleet.
Fleet Management: Operating SystemKeep the OS itself current, patched, and healthy across every device in the fleet.
NetworkingConnectivity to the cloud/back office, between sites, and often between devices on a local network.
Operating SystemThe distribution or custom build the device boots — kernel, drivers, base user space.
ComputeThe physical hardware: SoC, memory, storage, and any accelerators.

The layer that causes the most confusion is the fourth: fleet management. It has two distinct halves: keeping the OS itself current and healthy across the fleet, and deploying, updating, and operating the applications that run on top of it. Some products couple these tightly (one agent, one control plane, one vendor). Others keep them loosely coupled by design. That coupling choice is itself a decision worth making consciously, see Section 5.

3. Layer Deep Dive: The Operating System

The OS is infrastructure with a decade-long tail: once it is on a few thousand deployed machines, replacing it is a hardware-truck-roll-adjacent event. Evaluate it against these seven questions.

Build your own, or adopt a distribution?

A Yocto-based custom image gives full control over footprint, package selection, and licensing, at the cost of owning the build system, the BSP integration, and every security patch pipeline yourself. An established distribution (Debian, Ubuntu Core, Fedora IoT, Flatcar Container Linux, BalenaOS, and similar) trades some of that control for a maintained upstream, a known update mechanism, and a support ecosystem. There is no universally right answer. The right question is whether your organization wants to be in the OS-maintenance business at all, indefinitely.

Support and CVE management

What is the actual patch cadence for kernel and user space CVEs, and who is contractually or organizationally on the hook for it? Ask for the vendor’s or community’s mean time from CVE disclosure to a shippable patch, how far back patches are backported, and what happens when the distribution’s LTS window ends before your product’s field life does, a very common mismatch for machine builders with 7–15 year product lifecycles.

Drivers and hardware enablement

Confirm whether the drivers you need are upstream in mainline Linux or living in a vendor-maintained fork tied to one BSP release. Vendor forks are often the only way to get a given SoC or radio working on day one, but they can freeze you on an old kernel and complicate future CVE backports. Ask explicitly how driver support is maintained as new kernel versions ship.

Update mechanism and rollback

This is where “immutable” and “mutable” OS designs diverge sharply. Image-based, atomic-update operating systems (Flatcar Container Linux, Fedora CoreOS/IoT and other OSTree-based systems) apply updates as a whole new root filesystem and boot into it, with automatic rollback to the previous slot if boot health checks fail. Traditional package-based distributions (stock Debian/Ubuntu with apt) do not give you that atomicity or rollback out of the box. You get it, if at all, by bolting on a separate updater such as RAUC, SWUpdate, or Mender, and by deliberately partitioning the disk for A/B updates. Ask which model you are getting, and if it is the latter, ask who is integrating and testing the updater.

Footprint

Image size, RAM and storage headroom, and how much of the device’s compute budget the OS itself consumes before your application gets a share. This matters more on cost-optimized machine-builder hardware than on general-purpose edge servers, and it interacts directly with the real-time question below.

Real-time requirements

If any control loop needs deterministic latency, confirm whether a PREEMPT_RT (or equivalent) kernel is available and officially supported for your chosen distribution and hardware — not just theoretically patchable. Mixing best-effort container workloads with hard real-time control on the same OS instance is a design decision that needs to be made early, not discovered late.

Ownership over the product’s lifetime

Who maintains this OS choice in year six, when the original engineers have moved on and the SoC vendor has released three newer chips? Score every option against your actual product lifetime, not against the length of the current engineering team’s attention span.

4. Layer Deep Dive: Application & Fleet Orchestration

This layer is the day-two-and-beyond discipline: once devices are in the field, how do you deploy, update, observe, and secure the applications running on them, across a fleet that may span thousands of sites with unreliable connectivity. Evaluate it against these eight questions — in parallel with, not after, the OS questions above.

Deployment scale and cadence

How many devices, how many independent application teams, and how often does each team want to ship? A platform that assumes one application per device and infrequent releases looks very different from one that needs to support several independently versioned apps per device with weekly releases from different teams.

OTA delivery model

Container-image based delivery, delta/binary-diff updates to control bandwidth on constrained links, and staged or canary rollout so a bad release reaches ten sites before it reaches ten thousand. Ask specifically how rollout is throttled and how a bad rollout is halted mid-fleet.

Connectivity assumptions

Design for intermittent and low-bandwidth connectivity as the default, not the exception — machine builders’ devices are frequently behind cellular links, on factory floors with restrictive firewalls, or offline for extended periods. Confirm the platform tolerates long disconnects without losing fleet state and does not require inbound connectivity to the device (outbound-only, NAT/firewall-friendly).

OS-update orchestration, coordinated with app updates

Even when the OS layer and application layer are technically decoupled, their rollouts need to be orchestrated together operationally: staged fleet-wide OS upgrades, maintenance windows, and a coordinated rollback story so an OS update and an application update in flight at the same time don’t leave a device in an inconsistent, unrecoverable state.

Application lifecycle management

Placement and scheduling across heterogeneous devices, versioning and rollback per application, restart and health-check policies, configuration and dependency management, and centralized logs and metrics for a fleet you cannot physically walk up to.

Security and workload isolation

Container or VM-level isolation between applications sharing a device, signed and verified images, and a documented chain of custody from build pipeline to running workload.

Secrets and PKI

How secrets are injected and rotated without ever landing in a container image or a config file in plaintext; how device identity is established and verified (device attestation, zero-trust bootstrapping); and how workloads authenticate to your back office and to each other without long-lived static credentials.

Certificate management at fleet scale

Machine builders ship devices that outlive most certificate validity windows, so ask who owns the certificate lifecycle — issuance, renewal, rotation, and revocation — across thousands of devices, not just the pilot batch. Confirm how the platform enrolls a device’s identity certificate at manufacturing time, how it rotates certificates before expiry on devices that may be offline for weeks, what happens to a device whose certificate lapses in the field, and how a compromised device is revoked fleet-wide without a truck roll. Ask whether it integrates with your existing PKI or forces a second, parallel trust hierarchy you also have to operate.

5. Evaluate Both Layers in Parallel (With One Exception)

The OS layer and the application/fleet-management layer are answered by different engineering disciplines (BSP/kernel engineers versus platform/DevOps engineers), sourced from largely different vendor markets, and replaced on different timelines; an OS migration and an orchestration-platform migration rarely happen on the same schedule. Treating them as one bundled RFP forces a single vendor conversation to answer two very different sets of questions, and it is exactly what produces the stall described in Section 1.

  • Run both requirements exercises at the same time. Section 3 and Section 4 above are designed to be worked through side by side, ideally by the two people or teams who will actually own each layer long-term.
  • Prefer loose coupling between the layers. An OS that can be managed by more than one orchestration product, and an orchestration product that can run on more than one OS, gives you the option to change either layer later without a full platform replacement.
  • The exception: genuinely minimal application requirements. If the device runs a single fixed-function application, ships rarely, has no independent-release-cadence needs, has a certificate and identity story you are confident the OS vendor’s tooling covers, and your connectivity is reliable, the application layer may be simple enough that an OS vendor’s built-in tooling is sufficient on its own. Use Section 4 as a checklist to confirm that is actually true for your product — not as a shortcut to avoid the exercise.

Outside that narrow case, plan on the application/fleet-management layer outliving, and likely outlasting, more than one OS choice over your product’s life. That is the strongest practical argument for evaluating it on its own merits, in parallel, starting now.

6. Quick-Reference Checklist

A one-page summary of Sections 3 and 4, useful as a leave-behind for an internal workshop or as the skeleton of an RFP that keeps the two layers explicitly separate.

OS LayerApplication / Fleet Layer
☐ Build (Yocto) vs. adopt a distribution☐ Device count, app teams, release cadence
☐ CVE response time & backport policy☐ OTA model: images, deltas, staged rollout
☐ Driver support: upstream vs. vendor fork☐ Offline-tolerant, outbound-only connectivity
☐ Atomic updates with rollback, or bolt-on?☐ Coordinated OS + app update orchestration
☐ Image footprint & resource headroom☐ Lifecycle mgmt: placement, health, logs
☐ Real-time (PREEMPT_RT) support if needed☐ Workload isolation & signed images
☐ Who owns this for the product’s full life☐ Secrets rotation, device identity, PKI
☐ Cert enrollment, rotation, revocation at scale

A Closing Note From Avassa

We work on the application and OS fleet-management layer described in Section 4, built to stay loosely coupled to whichever OS a machine builder chooses, including Yocto-built custom images and mainstream distributions alike, rather than bundling one. If it’s useful, we’re glad to work through the checklist above against your specific fleet as a technical discussion, not a sales call. Reach us at avassa.io.

Stefan Wallin
Product Lead | Avassa
As a Product Lead at Avassa, Stefan forms the roadmap and evolution of the product together with the engineering team.
Keep exploring

See how the Avassa Edge Platform puts this into practice.