Urządzenie komputerowe - Computer appliance

Cobalt Qube 3 - komputerowe urządzenie serwerowe (2002, wycofane z produkcji)

Urządzenie komputerowe to komputer z oprogramowaniem lub oprogramowaniem układowym zaprojektowanym specjalnie w celu zapewnienia określonych zasobów obliczeniowych. Takie urządzenia stały się znane jako urządzenia ze względu na podobieństwo roli lub zarządzania do urządzeń gospodarstwa domowego , które są na ogół zamknięte i zaplombowane i nie mogą być serwisowane przez użytkownika lub właściciela. Sprzęt i oprogramowanie są dostarczane jako zintegrowany produkt i mogą być nawet wstępnie skonfigurowane przed dostawą do klienta, aby zapewnić gotowe rozwiązanie dla określonej aplikacji. W przeciwieństwie do komputerów ogólnego przeznaczenia urządzenia generalnie nie są zaprojektowane tak, aby umożliwić klientom zmianę oprogramowania i podstawowego systemu operacyjnego lub elastyczną rekonfigurację sprzętu.

Inną formą urządzenia jest urządzenie wirtualne , które ma podobną funkcjonalność do dedykowanego urządzenia sprzętowego, ale jest dystrybuowane jako obraz wirtualnej maszyny oprogramowania dla urządzenia wyposażonego w hiperwizor .

Przegląd

Tradycyjnie aplikacje działają na systemie operacyjnym ogólnego przeznaczenia , który wykorzystuje zasoby sprzętowe komputera (głównie pamięć, pamięć dyskową, moc obliczeniową i przepustowość sieci) w celu zaspokojenia potrzeb obliczeniowych użytkownika. Główny problem z tradycyjnym modelem wiąże się ze złożonością. Integracja systemu operacyjnego i aplikacji z platformą sprzętową jest złożona, a późniejsza obsługa ich jest złożona.

Dzięki ścisłemu ograniczeniu wariantów sprzętu i oprogramowania urządzenie staje się łatwe do wdrożenia i może być używane bez prawie tak szerokiej (lub głębokiej) wiedzy informatycznej. Dodatkowo, gdy pojawiają się problemy i błędy, personel pomocniczy bardzo rzadko musi je dogłębnie zgłębiać, aby dokładnie zrozumieć sprawę. Personel potrzebuje jedynie przeszkolenia w zakresie oprogramowania do zarządzania urządzeniami, aby móc rozwiązać większość problemów.

We wszystkich formach modelu urządzenia komputerowego klienci korzystają z łatwej obsługi. Urządzenie posiada dokładnie jedną kombinację sprzętu i systemu operacyjnego oraz oprogramowania aplikacyjnego, która została wstępnie zainstalowana w fabryce. Zapobiega to konieczności wykonywania przez klientów złożonych prac integracyjnych i znacznie upraszcza rozwiązywanie problemów. W rzeczywistości ta cecha „pracy pod klucz” jest korzyścią, której klienci poszukują przy zakupie urządzeń.

Aby zostać uznanym za urządzenie, urządzenie (sprzętowe) musi być zintegrowane z oprogramowaniem i oba są dostarczane jako pakiet. To odróżnia urządzenia od rozwiązań „domowych” lub rozwiązań wymagających złożonych implementacji przez integratorów lub sprzedawców z wartością dodaną (VAR).

Podejście sprzętowe pomaga oddzielić różne systemy i aplikacje, na przykład w centrum danych. Gdy zasób zostanie oddzielony, teoretycznie można go również scentralizować, aby udostępnić go wielu systemom, centralnie zarządzanym i optymalizowanym, a wszystko to bez konieczności wprowadzania zmian w jakimkolwiek innym systemie.

Kompromisy w podejściu do sprzętu komputerowego

Główną wadą wdrażania urządzeń komputerowych jest to, że ponieważ są one zaprojektowane do dostarczania określonych zasobów, najczęściej zawierają dostosowany system operacyjny działający na specjalistycznym sprzęcie, z których żaden prawdopodobnie nie będzie kompatybilny z innymi wcześniej wdrożonymi systemami. Klienci tracą elastyczność.

Można sądzić, że zastrzeżony wbudowany system operacyjny lub system operacyjny w aplikacji może znacznie zabezpieczyć urządzenie przed powszechnymi cyberatakami. Jednak jest odwrotnie. Bezpieczeństwo przez ukrywanie to zła decyzja dotycząca bezpieczeństwa, a urządzenia są często nękane problemami bezpieczeństwa, czego dowodem jest rozprzestrzenianie się urządzeń IoT .

Rodzaje urządzeń

Urządzenie zabezpieczające sieć Niksun używane przez armię USA (2016)

Różnorodność urządzeń komputerowych odzwierciedla szeroki zakres zasobów obliczeniowych, jakie zapewniają aplikacjom. Kilka przykładów:

Urządzenia do przechowywania
zapewniają ogromne ilości pamięci masowej i dodatkowe funkcje wyższego poziomu (np. dublowanie dysków i rozdzielanie danych ) dla wielu podłączonych systemów przy użyciu przezroczystego paradygmatu komputerowego sieci lokalnych sieci pamięci masowej .
Urządzenia sieciowe
to routery ogólnego przeznaczenia, które zapewniają ochronę firewall , Transport Layer Security (TLS), przesyłanie wiadomości , dostęp do wyspecjalizowanych protokołów sieciowych (takich jak ebXML Message Service) i multipleksowanie przepustowości dla wielu systemów, z których korzystają.
Urządzenia do tworzenia kopii zapasowych i odzyskiwania po awarii
urządzenia komputerowe, które są zintegrowanym oprogramowaniem do tworzenia kopii zapasowych i celami tworzenia kopii zapasowych, czasami z hipernadzorcami obsługującymi lokalne odzyskiwanie dostępu do chronionych serwerów. Często są bramą do pełnego rozwiązania DRaaS.
Zapory sieciowe i urządzenia zabezpieczające
urządzenia komputerowe zaprojektowane do ochrony sieci komputerowych przed niepożądanym ruchem.
Urządzenia IIoT i MES Gateway
Urządzenia komputerowe zaprojektowane do dwukierunkowego tłumaczenia danych między systemami sterowania a systemami przedsiębiorstwa. Zastrzeżone, wbudowane aplikacje oprogramowania układowego działające na urządzeniu wykorzystują połączenia punkt-punkt do tłumaczenia danych między urządzeniami polowymi w ich natywnych protokołach automatyzacji i systemach MES za pośrednictwem ich interfejsów API , ODBC lub RESTful .
Urządzenia antyspamowe
za spam e-mail
Urządzenia programowe
aplikacja, która może być połączona z systemem operacyjnym (JeOS) w ilości wystarczającej do uruchomienia na standardowym sprzęcie przemysłowym lub na maszynie wirtualnej. Zasadniczo dystrybucja oprogramowania lub oprogramowanie układowe, na którym działa urządzenie komputerowe.
Urządzenia maszyn wirtualnych
składają się z wbudowanego systemu operacyjnego w stylu hiperwizora działającego na sprzęcie urządzenia. Warstwa hiperwizora jest dopasowana do sprzętu urządzenia i nie może być zmieniana przez klienta, ale klient może załadować na urządzenie inne systemy operacyjne i aplikacje w postaci maszyn wirtualnych.

Urządzenia konsumenckie

Bezprzewodowy router Linksys umieszczony na modemie kablowym Comcast w warunkach domowych (2006)

Oprócz wdrożenia w centrach danych, wiele urządzeń komputerowych jest bezpośrednio używanych przez ogół społeczeństwa. Obejmują one:

Zastosowania konsumenckie podkreślają potrzebę łatwej instalacji, konfiguracji i obsługi urządzenia przy niewielkiej lub żadnej wiedzy technicznej.

Urządzenia w automatyce przemysłowej

Tył programowalnego sterownika logicznego Siemens (2013)

Świat automatyki przemysłowej był bogaty w urządzenia. Urządzenia te zostały utwardzone, aby wytrzymać ekstremalne temperatury i wibracje. Urządzenia te są również wysoce konfigurowalne, co umożliwia dostosowanie do szerokiej gamy zastosowań. Kluczowe zalety urządzenia w automatyce to:

  1. Krótszy czas przestoju — niesprawne urządzenie jest zwykle zastępowane komercyjnym, gotowym zamiennikiem COTS, a jego zadanie można szybko i łatwo ponownie załadować z kopii zapasowej.
  2. Wysoka skalowalność — urządzenia są typowo ukierunkowanymi rozwiązaniami dla obszaru zakładu lub procesu. W miarę zmieniających się wymagań skalowalność jest osiągana poprzez instalację kolejnego urządzenia. Koncepcje automatyzacji są łatwo powielane w całym przedsiębiorstwie poprzez standaryzację urządzeń do wykonywania potrzebnych zadań, w przeciwieństwie do opracowywania niestandardowych schematów automatyzacji dla każdego zadania.
  3. Niski TCO ( całkowity koszt posiadania ) — urządzenia są opracowywane, testowane i wspierane przez dostawców produktów automatyki i przechodzą znacznie szerszy poziom testów jakości niż rozwiązania projektowane na zamówienie. Zastosowanie urządzeń w automatyce zmniejsza poziom testów potrzebnych w każdej indywidualnej aplikacji.
  4. Skrócony czas projektowania — urządzenia pełnią określone funkcje i chociaż są wysoce konfigurowalne, zazwyczaj są samodokumentowane. Umożliwia to przeniesienie rozwiązań opartych na urządzeniach od inżyniera do inżyniera przy minimalnej potrzebie szkolenia i dokumentacji.

Rodzaje urządzeń automatyki:

  1. PLC (programmable Logic Controller) - Programowalne sterowniki logiczne to urządzenia, które są zwykle używane do sterowania dyskretnego i oferują szeroki zakres opcji wejścia i wyjścia. Są konfigurowane za pomocą standardowych języków programowania, takich jak IEC-1131.
  2. SLC (sterownik z pojedynczą pętlą) - Regulatory z pojedynczą pętlą to urządzenia, które monitorują zmienną wejściową i wpływają na zmianę wyjścia sterującego (zmienna manipulowana), aby utrzymać zmienną wejściową na wartości zadanej.
  3. PAC (Programmable Automation Controller) - Programowalne sterowniki automatyki to urządzenia, które zawierają właściwości zarówno sterowników PLC, jak i SLC, umożliwiając integrację zarówno sterowania analogowego, jak i dyskretnego.
  4. Brama uniwersalna — urządzenie z bramą uniwersalną może komunikować się z różnymi urządzeniami za pośrednictwem odpowiednich protokołów komunikacyjnych i wpływa na transakcje danych między nimi. Ma to coraz większe znaczenie, ponieważ produkcja dąży do poprawy sprawności, jakości, szybkości produkcji, kosztów produkcji i skrócenia przestojów dzięki ulepszonej komunikacji M2M ( maszyna do maszyny ).
  5. EATMs (Enterprise Appliance Transaction Modules) — moduły transakcyjne urządzeń korporacyjnych to urządzenia, które wpływają na transakcje danych z systemów automatyki hali produkcyjnej do systemów biznesowych przedsiębiorstwa. Komunikują się ze sprzętem na hali produkcyjnej za pomocą różnych protokołów automatyzacji dostawców i komunikują się z systemami biznesowymi za pomocą protokołów komunikacyjnych baz danych, takich jak JMS ( Java Message Service ) i SQL ( Structured Query Language ).

Struktura wewnętrzna

Istnieje kilka wzorców projektowych przyjętych przez dostawców urządzeń komputerowych, z których kilka pokazano poniżej. Ponieważ cała koncepcja urządzenia opiera się na utrzymywaniu takich szczegółów implementacji z dala od końcowego użytkownika, trudno jest dopasować te wzorce do konkretnych urządzeń, zwłaszcza, że ​​mogą i zmieniają się bez wpływu na zewnętrzne możliwości lub wydajność.

  1. Specjalny układ - sprzedawca buduje ASIC , bez żadnego oddzielnego "oprogramowania" czy systemu operacyjnego. Urządzenie ma ograniczony interfejs, zwykle konsolę terminalową lub internetowy, aby umożliwić personelowi IT podstawową konfigurację. Producent często udostępnia jakiś sposób na dostęp do głębszych mechanizmów konfiguracyjnych. Przykładem jest Vega 3 Java Compute Appliance firmy Azul Systems ; specjalne modyfikacje sprzętowe chipa umożliwiają skalowanie aplikacji Java.
  2. Specjalne jądro oprogramowania — dostawca używa lub tworzy komputer ogólnego przeznaczenia i projektuje nowy system operacyjny, który integruje aplikację z systemem operacyjnym. Przykładem jest IOS firmy Cisco ; system operacyjny podobny do Uniksa ma wbudowane funkcje zapory i polecenia konfiguracji sieci/zapory. Czasami urządzenie jest również zapieczętowane, więc konsument nie ma dostępu do ponownej instalacji systemu operacyjnego lub zastąpienia go innym systemem operacyjnym. Konsument może być również ograniczony do niewielkiej grupy poleceń konfiguracyjnych, podczas gdy bardziej szczegółowe i niższe funkcje systemu operacyjnego są dostępne tylko dla dostawcy. Im bardziej realizowane jest to „zamknięte” podejście, tym bardziej tego typu urządzenie zbliża się do wyglądu urządzenia ASIC.
  3. Wyspecjalizowana aplikacja — używane są komputery i systemy operacyjne z półki, ale interfejs użytkownika i „pudełko” są zaprojektowane tak, aby użytkownik nie mógł uzyskać dostępu do niczego na komputerze, z wyjątkiem interfejsu aplikacji utworzonego przez dostawcę. Ponieważ podstawowa architektura obliczeniowa jest zablokowana i zasadniczo niewidoczna, trudno jest stwierdzić, czy urządzenie naprawdę działa na sprzęcie ogólnego przeznaczenia i systemach operacyjnych. Linux, aw mniejszym stopniu BSD , stał się preferowanym systemem operacyjnym dla tego typu urządzeń. Ostatnio termin „ urządzenie programowe” był również używany do opisania takiej wstępnie zapakowanej, czarnej skrzynki.
  4. Urządzenie wirtualne — tutaj sam sprzęt całkowicie zniknął i stał się tak zwanym urządzeniem wirtualnym (znanym również jako wirtualne urządzenie programowe) wykorzystującym dowolną z wielu technologii maszyn wirtualnych . W tej maszynie wirtualnej znajduje się zasadniczo ten sam stos oprogramowania plus system operacyjny, co w alternatywie „aplikacji specjalistycznej”.

Czasami te techniki są mieszane. Na przykład urządzenie VPN może zawierać zaporę programową o ograniczonym dostępie działającą w systemie Linux, z szyfrowaniem ASIC w celu przyspieszenia dostępu VPN.

Niektóre urządzenia komputerowe wykorzystują pamięć masową półprzewodnikową , podczas gdy inne używają dysku twardego do ładowania systemu operacyjnego. Znowu te dwie metody mogą być mieszane — serwer druku ASIC może zezwalać na opcjonalny dysk twardy do kolejkowania zadań lub urządzenie oparte na systemie Linux może kodować system Linux w oprogramowaniu układowym , dzięki czemu dysk twardy nie jest potrzebny do załadowania systemu operacyjnego.

Zobacz też

Bibliografia

Zewnętrzne linki