CS/OS

[webOS] webOS란 무엇인가?

이숨인 2024. 6. 23. 16:38

webOS

 

webOS는 안드로이드, iOS같은 운영 체제 중 하나로, 현재 LG전자에서 개발 및 사용하고 있는 리눅스 기반의 모바일 운영체제이다.

다양한 앱 프레임워크를 지원하고, 효율적인 버스시스템(Luna-Bus)을 가지고 있는 등 여러 장점이 있다.

 

시장에서 검증된 플랫폼으로, LG전자의 스마트 TV와 Signage,스마트 워치와 같은 곳에서 많이 사용중이다.

 

webOS 역사

 

 

 

 

  • webOS는 palmOS를 계승하는 소프트웨어로, palm에서 개발하고 이후 HP가 인수하였으며 이를 다시 LG가 인수하였다.
  • 2009년 6월에 webOS를 처음 적용한 palm pre가 공개
  • 2011년에는 스마트폰 HP 프리 3와 HP 비어, 태블릿 터치패드가 공개
  • 2014년에는 스마트 TV
  • 2015년에는 스마트 워치
  • 2017년에는 스마트 냉장고
  • 2018년에는  webOS의 Open-Source Edition이 공개
    • Open-Source Edition에서 개발 툴, 개발자 가이드 등을 제공하고 있어 이를 통해 개발자들이 소스 코드를 무료로 다운로드해 활용할 수 있게 되었다.

자동차, 로봇, 스마트홈 등 다양한 분야에서 webOS를 적용하고, 지속적으로 연구개발을 진행하고 있다.

 

 

webOS 활용 분야

 

webOS는 스마트폰, 태블릿과 같은 모바일 뿐만 아니라 스마트TV나 스마트워치 또, IOT와 같이 우리 생활과 밀접한 분야에서의 플랫폼으로 폭 넓게 적용되고 있다.

 

   1. 스마트 TV

 

 

 

  •   2014년도부터 LG전자에서는 운영체제로 webOS를 탑재했다.
    • 이렇게 webOS 플랫폼을 적용한 LG 스마트TV는 매직리모컨을 활용해 마치 마우스 커서를 움직이는 것처럼 TV를 간편하게 조작할 수 있어 브라우저의 활용도가 특히 높다.

 

    2. LG 디지털 사이니지(Digital Signage)

 

 

  • 디지털 사이니지(Digital Signage)란 우리가 집 밖을 나섰을 때 지하철 역사, 버스정류장, 상가 내부 등 모든 곳에서 마주하는 디지털 형태의 광고을 말한다.
  • webOS 플랫폼을 적용하면 이 디지털 사이니지를 더욱 다양하게 활용할 수 있다
    • ex) 화면을 세로 또는 가로 분할해 2개의 콘텐츠를 동시에 보여주기
    • 기기에 오류가 발생했을 시 실시간 원격진단

  • 인천공항에 설치된 webOS가 탑재된 디지털 사이니지.
    • 비행기 시간, 탑승 수속 데스크 등 탑승자에게 필요한 정보를 실시간으로 제공한다

 

주요 기능 및 이점

 

  • web중심으로, web브라우저를 통해 보는 페이지를 앱처럼 단독으로 실행할 수 있다.
  • 멀티미디어, Display측면에서 장점을 가진다. ex) TV, Sinage 등
  • 효율적인 버스 시스템을 사용한다. (Luna-Bus)
  • 다양한 앱 개발 프레임워크를 지원한다. ex) Enact)
  • 시장에서 검증된 플랫폼이다. ex) LG TV, Signage, 스마트워치 등
  • 다양한 업종에 적용 가능한 오픈 플랫폼을 제공한다 ex) 로봇,스마트홈,자동차
  • 확장 가능한 플러그형 아키텍처이다 (1. 쉬운 서비스 확장 2. 코드 관리의 유연성)

 

web Application이란?

 

  웹 어플리케이션

 

웹 애플리케이션(Web Application)은 클라이언트와 서버 사이에  데이터를 주고 받으면서 동작하는 소프트웨어 프로그램이다. 웹 애플리케이션은 웹 브라우저를 통해 접속하여 사용할 수 있으며, 사용자 인터페이스(UI)는 웹 페이지를 통해 구현된다.

웹 애플리케이션은 HTML, CSS, JavaScript와 같은 웹 기술을 이용하여 구현되며, 서버 측에서는 PHP, Python, Ruby, Java, .NET 등의 프로그래밍 언어를 사용하여 개발된다

 

 

  웹 어플리케이션 유형

webOS 시스템에서 Web Application 의 패키징, 딜리버리 방법에 따라 External Web App(외부 웹 어플리케이션)과 Built-in Web App(내장 웹 어플리케이션)으로 분류할 수 있다.

 

External Web App(외부 웹 어플리케이션) Built-in Web App(내장 웹 어플리케이션)
- webOS 대상 장치에 설치한다.
- webOS 장치에서 실행되는 웹 응용 프로그램을 만들 때 필요하다.
- 플랫폼 없이 개발 가능하다.
- webOS 이미지에 내장되어 있다.
- 플랫폼의 기능을 향상시키는 Web Application을 추가하는 데 사용한다.
- 플랫폼 있어야 개발 가능하다.

 

 

  관리

  webOS 시스템에서 Web Application 관리와 관련된 구성 요소는 아래와 같다.

SAM (System and Application Manager) WAM (Web Application Manager)
Web Application의 동작을 감독하고 앱의 설치, 시작,
종료 및 제거를 포함한 수명주기 동안 각 앱을 관리한다.
Web Application을 시작하고 관리한다.

 

 

web Service란?

 

  웹서비스

  • 웹 서비스 또는 JS 서비스는 애플리케이션이 활성화되어 있지 않은 상태에서도 작동할 수 있는 기능을 제공한다.
    • 이는 일반적인 웹 애플리케이션에서는 접근할 수 없는 플랫폼 기능들(low-level 네트워킹, 파일 시스템 접근, 이진 데이터 처리 등)에 대한 접근성을 확장한다.
  • 전통적인 웹 애플리케이션과 달리 웹 서비스는 하나 이상의 애플리케이션에 대해 동시에 작업을 수행할 수 있다.
    • 이는 개발자들이 복잡한 작업을 애플리케이션에 원활하게 통합할 수 있도록 도와준.
 
 

  웹서비스 유형

External JS Service(외부 웹 서비스) Built-in JS Service(내장 웹 서비스)
JS service는 webOS 대상 장치에 설치합니다
webOS 장치에서 실행되는 JS service를 만들 때 필요합니다
플랫폼 없이 개발 가능합니다
webOS 이미지에 내장되어 있습니다.
플랫폼의 기능을 향상시키는 JS Service를 추가하는 데 사용합니다.
플랫폼 있어야 개발 가능합니다.
 

  예시

  • 이메일 리더를 위해 백그라운드에서 첨부 파일 다운로드
  • 앱에서 사진 공유 웹 사이트로 이미지 업로드
  • long-running 계산 또는 파일 작업 수행

 

web OS에서 개발할 수 있는 것

 

 

  • 패키지 타입에 따라  Installable(설치형)과 Built-in(내장형)으로 구분한다.
  •  Installable 패키지로 Web기술을 이용한 앱/서비스를 개발할 수 있다.
  • Built-in 패키지로 Web기술을 이용한 앱/서비스, Native기술을 이용한 앱/서비스로 구분하여 개발할 수 있다.

 

Web과 Native앱의 차이점

  web app native app
특징 웹사이트를 앱으로 감싸는 형태로, 안드로이드와 iOS를 한 번에 개발 안드로이드와 iOS, 웹에 사용되는 앱을 각각 만들어야 함
장점 -웹페이지 수정만으로 업데이트 즉각 반영
-저렴한 가격과 짧은 소요시간으로 개발 가능
-빠른 속도
-화려한 퍼포먼스 
-디바이스의 카메라, GPS 등 기능을 사용하여 필요한 정보 활용하여 개발 가능
단점 -인터넷, 디바이스 상태에 따라 속도 영향
-온라인 상태 유지, 서비스 제공에 한계
-속도 느림
-기능 구현을 위해 많은 양의 코딩작업 필요
-개발자의 높은 기술력 요구
-업데이트마다 플랫폼 별로 작업해야함(안드로이드/IOS/ ..)

 

 

web OS가 지원하는 것

  다양한 앱 개발 프레임워크 지원

 

Enact와 SDK를 이용하면 HTML, CSS, JavaScript로만 개발할 때보다 향상된 옵션과 환경에서 앱을 개발할 수 있다.

 

1. 웹 앱 프레임워크 : Enact

  • React기반의 앱 개발 프레임워크
  • React는 UI프레임워크(UI Component)를 제공하지 않지만, Enact는 smart TV에서 사용하는 UI라이브러리를 제공

2. 소프트웨어 개발 키트 : SDK

  • 웹과 앱 서비스를 위한 개발 환경 제공
  • Command-Line Interface, Emulator, Beanviser, Workflow Designer과 같은 도구를 제공

 

  개발 도구

1. Real device: Raspberry Pi (RPi)

2. Virtual environment: Emulator

 

기타

  Luna-Bus

LG 전자의 웹OS(웹 기반 운영 체제)에서 사용되는 통신 프레임워크이다. 이 프레임워크는 웹OS 내의 다양한 애플리케이션 간에 통신을 용이하게 하며, 웹OS의 서로 다른 부분들 간에 데이터를 교환하고 작업을 조정할 수 있도록 한다.

 

webOS는 운영 체제로, 프로세스 간 통신을 위해 Luna-Bus라는 통신 프레임워크를 사용한다. 이는 Linux의 D-Bus와 비슷하지만, 개선된 구조를 가지고 있다.

D-Bus의 경우 항상 데몬을 통해 통신해야 하기 때문에 성능 저하가 발생할 수 있지만(병목 현상 등), Luna-Bus는 프로세스 간 최초의 통신 후에는 데몬을 거치지 않고 직접 통신할 수 있어 효율적이다.

 

  Luna-Service API

Luna-Service란 webOS가 제공하는 서비스이다. Alarm, bluetooth, camera, location, wi-fi관리, application 관리 등 다양한 기능들을 제공한다.

 

 

 

Reference

https://webos-supporters.tistory.com/8

 

webOS란 무엇인가?

webOS란 무엇인가 webOS의 역사 webOS의 활용 분야와 적용 디바이스들 webOS의 블로그 및 커뮤니티 webOS란 무엇인가 webOS는 안드로이드, iOS 같은 운영 체제 중 하나로, 현재 LG 전자에서 개발 및 사용하

webos-supporters.tistory.com

 

https://webos-supporters.tistory.com/9

 

webOS란 무엇인가? For developers!

webOS의 장점 Web Application이란? Web Service란? webOS에서 무엇을 개발할 수 있는가? webOS에서 어떤 것을 이용하여 개발할 수 있는가? webOS는 어떤 것을 지원하는가? 루나 서비스란? 들어가기 전에 본 포

webos-supporters.tistory.com

https://velog.io/@hihajeong/webOS%EB%9E%80-%EB%AC%B4%EC%97%87%EC%9D%BC%EA%B9%8C

 

webOS란 무엇일까?

webOS란 무엇인지 알아볼까요?

velog.io