Bir işletim sistemi tasarımı (OS), donanım kaynaklarını yönetmek için temel bir faktördür ve mühendislik verileri satın alma (DAQ) sistemleri ile ölçeklenebilirlik. Bu sistemler - örnek olarak, sayısallaştırma ve işlem analog sinyalleri, OS mimarisindeki seçeneklerden elde edilen seçenekler, bir DAQ sistemi ile ilgili işlemleri doğru şekilde takip etmek için doğrulayıcı ve doğrulayıcı veri entegrasyonunu korumak için doğru bir şekilde yapılır.Bu makaleye göre, çok kanallıklama, kontrol edilebilirliği ve doğrulayıcı analizleri, doğrulayıcıları, doğru bir şekilde analizleri, doğrulayıcıları ve doğru bir şekilde analizleri, doğru bir şekilde analiz etmek için doğru bir şekilde yapılır.

Data Acquisition Systems ve onların OS Taleplerini Anlamak

Bir veri satın alma sistemi sensörleri, sinyal doğrulama donanımı, analog-to-dijital dönüştürücüler (ADC) ve fiziksel fenomenleri sıcaklık, basınç, vibrasyon veya susaj gibi ölçmek için yazılımlar. tipik bir mühendislik kurulumunda, DAQ yazılımı ev sahibi bir bilgisayar (veya gömülü kontrolcü) sorunları zimleyiciye çalışır, bir tampondan veri okur ve gerçek zamanlı analiz veya giriş yapar. OS uygulama ve donanım arasında oturur.

Modern DAQ sistemleri, kanal başına 1 MS /s'i aşan örnek oranlarında birden çok eş zamanlı kanalla başa çıkmalı, ikinci başına yüzlerce megabayt aralığındaki toplam toplam toplu taşıma ile ilgili olarak, DAQ'nun sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sistem istikrarsızlığı veya güvenlik tehlikelerine neden olabilir – bu gereklilikleri zorunludur.

  • [FONT:0)Hardware soyutlama ve sürücü yönetimi) – çeşitli ADC ve sensör arayüzleri için birleşik bir arayüz sağlamak (PCIe, USB, Ethernet, PXI)
  • [FONT:0] Yönelme ve zamanları - işleme donanımı düşük ve geç kalmış geç kalmış cihazlarla DAQ cihazlardan kesintiye uğrar.
  • [FONT:0)Memory tahsis ve tamponlama[Dönetici:0)[Dönetici:0))))[CFONTT:0)Memory tahsis ve tamponing[[Dönetici: 1 ) – yüksek hızlı akış sırasında veri kaybı önlemek için büyük dairesel tamponları yönetmek.
  • [FONT:0]I/O scheduling[[[Dönetici:0)[[Dönetici:0)I/O scheduling[[[Dönetici: 3)) - DAQ görevlerine gerçek zamanlı iş yükleri üzerinde öncelik vermek.
  • [FONT:0) Güvenlik ve erişim kontrolü[[[Dönetici: 1)) - yetkisiz süreçlerden hassas ölçüm verileri korumak.

Bir OS'nin bu talepleri ile buluştuğu diploma, özellikle Windows veya Linux gibi genel amaçlı bir OS (GPOS) olup olmadığını, VxWorks veya FreeRTOS gibi gerçek zamanlı bir işletim sistemi (RTOS) veya OKEMPT RT yama ile bir Linux çekirdeği gibi bir karma yaklaşıma bağlıdır.

Core OS Design Attributes DAQ Performansını Etkiliyor

Gerçek Zamanlı Capifler ve Deterministic Scheduling

Veri satın alma sistemleri genellikle gerçek zamanlı kısıtlamalar altında çalışır, yani bir GPOS'da, birçok işlem arasında sadece mantıksal sonuç için optimize edilmez, aynı zamanda, DAQ uygulama threadinin dış bir olaydan sonra çalıştığını belirler.In a GPOS, zamanlamalayıcının çoğu süreç arasında ortalama olarak optimize edilir, zaman gecikmiş ölçümlere yol açabilir.

Gerçek zamanlı bir OS (RTOS), bir determinist, öncelikli olarak önbellekli ön ödeme programı kullanır.Bu tahmin edilebilirlik, olaydan sonra bilinen, bağlantılı bir süre içinde çalışır. Örneğin, VxWorks veya QNX, en yüksek kesintiye uğratılmış gecikme ve görev geçiş noktaları mikrosaniyeler içinde ölçülmelidir, en kötü zaman (WCET) ile, statik analizler yoluyla doğrulanabilir.Bu tahmin edilebilirlik, dijital sinyal işleme gibi uygulamalar için gereklidir.

Büyüyen bir orta zemin, milisans'tan on iki mikrosaniye kadar gerçek zamanlı bir Linux çekirdeğinin kullanımıdır.Bu, çekirdek'in kilitlenmesi ve kesintiye uğraması için tüm yürütme yollarının ön boşluğuna izin vermek, milisaniyelerden on ikisine kadar mikrosaniyeye kadar kesmesi gerekir. Birçok modern otomasyon kontrolörü (PACS) ve veri satın alma kartlarının gerçek zamanlı farkındalıkla yazılmamış olması durumunda.

Interrupt Use and Low-Level Buffering

Yüksek hızlı DAQ'da ADC her seferinde bir dönüşüm tamamlandı - veya daha verimli bir şekilde, örneklerden bir bloktan sonra bir donanım FIFO'yu doldurur. OS'nin kesinti servisi rutini (ISR) verileri almak, aşağıdaki blok gelmeden önce örnekleri bir çekirdek tampona transfer etmek gerekir.If the ISR takes too long, the Hardware FIFO overflows and data is lost.

RTOS tasarımları genellikle donanım önceliği ve bir demevden görev (bir görev veya alt yarısı eller) gerçek veri işlemesi için küçük, hızlı ISR kullanır.GPOS mimarisi genellikle geniş soyutlama katmanları nedeniyle ISR yolları vardır (örneğin, Linux çekirdeğinin genel kesinti eller) DAQ için, bu doğrudan bellek erişim (DMA) ve kömürleri azaltmak için yüksek performanslı sürücüleri kullanarak azaltılabilir. DMA, veri transferi sırasında sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık sık imarkatır.

Önemli bir örnek, Linux çekirdek hizmetlerinin altındaki küçük gerçek zamanlı bir çekirdekin hemen ve paylaşılan hafıza ile veri geçtiği, OS tasarımcılarının DAQ için deterministik kesinti yanıtını gösterdiği için, bu mimariye sahip olan bu mimariye sahip.

Memory Management ve Data Throughput

DAQ uygulamaları genellikle analizden önce verileri depolamak için büyük, tutarlı hafıza tamponları gerektirir. OS'nin bellek yönetimi ünitesi (MMU) ve sayfa tahsis stratejisi, bu tamponların nasıl etkin bir şekilde ele alınacağının belirlenmesi gerekir. Sanal hafıza sistemleri, bellek sayfalara bölünmüştür (tipik olarak 4 KB), ve rastgele bir erişim, düzgün bir şekilde pinlenmiş değilse sayfa hatalarına neden olabilir.

Linux gibi GPOS çekirdeği, yüksek çözünürlükte (2 MB veya 1 GB sayfa) TLB'yi kaçırmak ve DMA performansını artırmak için büyük sayfa tahsisine izin verir. Ancak, yüksek çözünürlükte VxWorks veya QNX çalıştırılabilir. FreeRTOS gibi bir RTOS, küçük mikro kontrolcülere MMU'yu kullanarak tek bir adres alanı kullanır ve toplam hafıza boyutunu sınırlandırır.

Ayrıca, önbellek tutarlılığı, veri ADC ve CPU arasında transfer edildiğinde kritiktir. Birçok gömülü DAQ sisteminde, OS bu operasyonların yazılım yükünü en aza indirmek için kullanılamaz DMA sistemi. Linux çekirdeği, DMA API aramalarını doğru bir şekilde önbellekleme ve doğrulamayı sağlar; bir RTOS donanıma özel mekanizmalara güvenebilir.

Multitasking ve Scheduling for Multi-Channel DAQ

Modern mühendislik DAQ sistemleri genellikle onlarca veya yüzlerce kanalı aynı anda izleyebilir. Her kanal bağımsız filtreleme, veri azaltımı veya giriş gerektirebilir. OS programı herhangi bir kanaldan açmaksızın tüm yükleme zamanına izin vermeli.

  • [Dönetici:0) Zamanlı (siklik) zamanlama)[T)[tr|kömürücü bir döngü içinde sabit bir zaman slotu atanır.Bu, belirsiz ama kanal talepleri değişirse daha verimlidir.
  • [FONT:0]Priority-based preemptive scheduling[Dönetici:0)[Dönetici:0))) Daha yüksek öncelikli olarak çalışan bir güvenlik-könemli döngüde olanlar daha düşük öncelikli olarak alırlar ve önceden boş olabilirler.

Windows gibi bir GPOS, 32 öncelikli seviye ile öncelikli bir programlayıcı kullanır, ancak görevler çekirdek işlemleri (örneğin, sayfa hataları) tarafından engellenebilir. Aksine, VxWorks gibi bir RTOS, iç içe geçmiş iletişim seviyelerini sıkı bir şekilde etkiler. DAQ için, bu yüksek öncelikli bir veri toplama threadinin hemen hemen hemen doğru bir şekilde kesintiye uğramasına izin verir, örneklemez.

Bazı DAQ çerçeveleri, örneğin:0)Gelin[Dönetici:0) Linux'ta, veri satın alma için özel bir çekirdek parçası kullanın, bu, gerçek zamanlı zamanlama politikası ile (SCHED FIFO veya SCHED R) arasındaki ayrımı sağlar.

Sistem Yenidenlenebilirliği ve Yanlış Toklama Etkisi

Endüstriyel veya uzay ortamındaki veri satın alma sistemleri, donanım hataları ile karşı karşıya kaldığı zaman bile güvenilir bir şekilde çalışmaya devam etmelidir, OS çekirdeğindeki güç aksaklıkları veya yazılım aslıları tespit edebilir ve hata toleransını önlemede önemli bir rol oynar. Örneğin, sağlam bir saatdog zamanı olan bir OS, insan müdahalesi olmadan sıkı bir sürücüyü veya uygulama sıfırlayabilir.

Linux gibi bir GPOS'da, çekirdek kapsamlı bir giriş ve kendi kendine özgü mekanizmalarla yapılandırılabilir, ancak kullanıcı ile ilgili bir DAQ uygulamasında bir kaza genellikle yeniden başlatılabilir. RTOS genellikle daha genel bir başarısızlık modeli sunar: eğer kritik bir görev süresine sahipse, OS güvenli bir duruma yol açabilir.

Bir başka güvenilirlik yönü yüksek veri girişi sırasında dosya sistemi bütünlüğüdür. Birçok DAQ sistemi, bir kaza dosya tahsis masasını bozabilir ve tüm bir testin tamamını da çalıştırmalıdır.

Data Acquisition için OS Design'da Zorluklar

DAQ uygulamaları için özellikle bir OS tasarlamak çelişkili talepleri dengelemeyi içerir. Anahtar zorluklar şunlardır:

  • [FONT:0) Gerçek zamanlı determinizm zengin özelliklerle yeniden formüle ediliyor[Dönetici:0) – Birçok DAQ sistemleri tam bir ağ yığınından, USB desteğinden ve grafik kullanıcı arayüzünden faydalanıyor, ancak bu özellikler doğrusal olmayan kod yollarını tanıtıyor.
  • [FONT=0)Hardware çeşitlilik[[[Dönetici:0)[FONT=0)))- DAQ sistemleri, büyük bir çeşitli sensörler, ADC modülleri ve iletişim otobüsleri (GPIB, VXI, PXI, LXI) ile, PXI, LXI, üçüncü taraf donanım satıcılara sahip bir sürücü modeli sağlamak için.
  • [FONT:0] Güvenlik ve veri bütünlüğü[[Dönetici: 1)) - DAQ sistemleri işletme ağlarına ve buluta bağlı olarak, yazılımlardan ve izinden tehditlerle karşı karşıya kalır.Geçmiş izin kontrolleri olmayan bir sistem ölçüm parametreleri veya exfiltrate özel test verileriyle tam olarak test etmek için bir yol açabilir. Modern RTOS satıcılar güvenlik özelliklerini zorunlu erişim (MAC), güvenli bir boot ve şifreli depolama gibi bir araya getirirler.
  • [FONT=0)Power yönetim ve termal kısıtlamalar[[Dönetici: 1) Hareketli veya gömülü DAQ, OS, güç durumlarını (sleep, idle) bozmadan aktif olarak kalmaya devam edebilir. Düşük enerjili bir yerden geçiş yapmak için on milisaniye alabilir.

En kalıcı zorluklarından biri, çok zamanlı grafikler için “hard” gerçek zamanlı davranışlar elde etmektir (çok fazla sayıda gecikmiş durumda) çok sayıda CPU uygulaması ile birlikte (FONT) her bir temelin paylaşılan önbellek ve bellek otobüsleri ile ilgili olarak belirli bir süre boyunca içerikleme ve kesintiye uğraması gerekir.

Sonuç Sonuç Sonuç Sonuç Sonuç Sonuç Sonuç Sonuç

İşletim sistemi tasarımının mühendislik verileri satın alma sistemleri üzerindeki etkisi derin ve çok yönlüdür. OS sadece DAQ yazılımının çalıştığı bir platform değildir; tam zamanlı olarak, her kesinti hizmeti ve her planlama kararı için gerekli olan, genel amaçlı bir OS, birçok gelişmiş ve zengin sistemler için uygun iken, yüksek hızlı veya güvenlikli ölçümler için kabul edilemez bir şekilde, tamamen bir RTOS, zamanlama determinizme ihtiyaç duyar.

Bir veri satın alma sistemi seçmek veya inşa etmek için, OS tasarım ticaretlerini anlamak önemlidir.Seçim, sistem performans gereksinimlerine (sample oranı, kanal sayısı, gecikme sınırları), güvenilirlik gereksinimleri (kesinlikle modları, veri bütünlüğü), ve mevcut donanım ve yazılım ekosistemi. DAQ daha yüksek örnekleme oranlarına doğru hareket eder, kenar işleme ve AI tabanlı analizlere doğru hareket eder, AG, bir sistemin sinyalini doğru bir şekilde yakalayacağından emin olmaya devam edecektir.

AG'nin veri satın alınması için daha fazla okuma için, [[Dönetici:0)Ulusal Aletler'in beyaz kağıdı gerçek zamanlı DAQ) ile Hermann Kopetz tarafından kullanılmaktadır.