KR101907660B1 - Terminal apparatus having operating system based on web and method for providing service using thereof - Google Patents

Terminal apparatus having operating system based on web and method for providing service using thereof Download PDF

Info

Publication number
KR101907660B1
KR101907660B1 KR1020110135837A KR20110135837A KR101907660B1 KR 101907660 B1 KR101907660 B1 KR 101907660B1 KR 1020110135837 A KR1020110135837 A KR 1020110135837A KR 20110135837 A KR20110135837 A KR 20110135837A KR 101907660 B1 KR101907660 B1 KR 101907660B1
Authority
KR
South Korea
Prior art keywords
web
terminal device
abstracted
service
resources
Prior art date
Application number
KR1020110135837A
Other languages
Korean (ko)
Other versions
KR20130068564A (en
Inventor
전종홍
이승윤
김성한
이강찬
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to KR1020110135837A priority Critical patent/KR101907660B1/en
Publication of KR20130068564A publication Critical patent/KR20130068564A/en
Application granted granted Critical
Publication of KR101907660B1 publication Critical patent/KR101907660B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • G06F9/223Execution means for microinstructions irrespective of the microinstruction function, e.g. decoding of microinstructions and nanoinstructions; timing of microinstructions; programmable logic arrays; delays and fan-out problems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Abstract

웹 기반의 운영체제를 탑재한 단말 장치 및 이를 이용한 서비스 제공 방법이 개시된다. 웹 기반의 운영체제를 탑재한 단말 장치에 있어서 웹 기반의 운영체제는 요청된 응용 또는 서비스를 그래픽 인터페이스를 통하여 제공하는 웹 데스크탑과, 단말 장치의 하드웨어에 독립적으로 응용 또는 서비스가 실행되도록 단말 장치의 하드웨어 및 인터넷에 존재하는 자원 중 적어도 하나를 추상화하고, 추상화된 인터넷에 존재하는 자원을 처리하는 웹 커널과, 추상화된 단말 장치의 하드웨어, 웹 기반의 운영체제를 탑재한 타 단말 장치의 추상화된 하드웨어 및 인터넷에 존재하는 자원 중 적어도 하나를 기초로 응용 또는 서비스의 실행 및 저작 중 적어도 하나를 수행하는 웹 응용 프레임워크를 포함하여 구성된다. 따라서, 단말 장치의 하드웨어에 독립적으로 인터넷 상의 다양한 자원과 연동하며 웹 응용 또는 서비스를 실행할 수 있다.A terminal device equipped with a web-based operating system and a service providing method using the same are disclosed. In a terminal equipped with a web-based operating system, a web-based operating system includes a web desktop providing a requested application or a service through a graphical interface, A web kernel for abstracting at least one of resources existing on the Internet and processing resources existing in the abstracted internet, hardware of an abstracted terminal device, abstracted hardware of a terminal device equipped with a web-based operating system, And a web application framework that performs at least one of execution and authoring of an application or service based on at least one of the existing resources. Therefore, the web application or the service can be executed independently of the hardware of the terminal device in conjunction with various resources on the Internet.

Description

웹 기반의 운영체제를 탑재한 단말 장치 및 이를 이용한 서비스 제공 방법{TERMINAL APPARATUS HAVING OPERATING SYSTEM BASED ON WEB AND METHOD FOR PROVIDING SERVICE USING THEREOF}TECHNICAL FIELD [0001] The present invention relates to a terminal device equipped with a web-based operating system and a service providing method using the terminal device. [0002]

본 발명은 운영체제를 탑재한 단말에 관한 것으로, 더욱 상세하게는 웹 기반의 운영체제를 탑재한 단말 장치 및 이를 이용한 서비스 제공 방법에 관한 것이다.The present invention relates to a terminal equipped with an operating system, and more particularly, to a terminal equipped with a web-based operating system and a service providing method using the same.

최근 디바이스의 지능화와 고도화에 따라 고급 기능을 제공하는 개방형 플랫폼의 개발이 경쟁적으로 진행되고 있다. 플랫폼 기술의 확산과 성장은 하드웨어의 종속성을 낮추고, 어플리케이션 개발의 편의성을 높이며, 어플리케이션 사용의 편의성을 중심으로 하는 소프트웨어 생태계로의 헤게모니 이동과 개방형 모바일 소프트웨어 생태계의 확산을 촉진시키고 있다. Recently, development of an open platform that provides advanced functions according to the intelligence and advancement of devices has been competitive. The proliferation and growth of platform technology is driving down the dependence of hardware, enhancing the convenience of application development, hegemony migration to software ecosystem centered on the convenience of application use, and the spread of open mobile software ecosystem.

그리고, 스마트폰과 플랫폼, 및 모바일 어플리케이션의 중요성의 부각은 어플리케이션을 효과적으로 배급할 수 있도록 앱스토어와 같은 모바일 어플리케이션 생태계에 대한 중요성으로 나타나고 있다.And the importance of smartphones, platforms, and mobile applications has become an important part of the mobile application ecosystem, such as the App Store, to enable effective distribution of applications.

이처럼, 모바일 소프트웨어의 경쟁력의 핵심은 플랫폼의 기능성, 인터넷 자원의 효과적 이용, 신속한 개발, 편리한 개발 환경을 통한 보다 많은 개발자의 확보, 어플리케이션 배급 경로, 투명한 소프트웨어 생태계의 보장 등과 같은 모바일 어플리케이션 사용과 개발 환경을 어떻게 효과적으로 제공하는가로 귀결되고 있다.As such, the core competencies of mobile software are mobile application use and development environment, such as platform functionality, effective use of Internet resources, rapid development, securing more developers through convenient development environment, application distribution path, and ensuring transparent software ecosystem And how to effectively provide them.

모바일 어플리케이션은 어플리케이션의 실행 중 웹 서버 또는 웹 사이트와의 접속 여부에 따라 네이티브 어플리케이션과 웹 어플리케이션으로 구분할 수 있다.A mobile application can be divided into a native application and a web application depending on whether the application is connected to a web server or a web site.

네이티브 어플리케이션은 일반적으로 단말에서 이진코드를 사용하여 빠른 속도를 제공하고, 단말의 기능을 효과적으로 활용할 수 있다는 장점을 갖는 반면에 많은 단말을 지원해야 하는 경우에 각각의 단말에 실행될 수 있도록 어플리케이션을 별도로 개발해야 하고, 어플리케이션의 재활용과 업그레이드 등이 어려운 단점이 있다. Native applications generally have the advantage of using a binary code in a terminal to provide a high speed and to utilize the functions of a terminal effectively, while developing an application separately so that it can be executed in each terminal when a large number of terminals need to be supported And it is difficult to recycle and upgrade applications.

웹 어플리케이션은 업그레이드 없이 계속적으로 업그레이드된 기능을 사용할 수 있고, Open API(Application Programming Interface) 등을 통하여 쉽게 매시업이 가능하여 어플리케이션의 재활용이 가능한 장점이 있는 반면에 오프라인 처리와 단말의 특성 정보를 활용할 수 없고, 브라우저의 성능에 좌우되며, 대용량의 처리에 한계가 있는 단점이 있다.Web applications can be upgraded continuously without upgrading, and it is easy to mash up through Open API (Application Programming Interface), etc., and it is possible to recycle applications. On the other hand, offline processing and terminal characteristics information can be utilized There is a disadvantage in that there is a limit to a large-capacity processing, which depends on the performance of the browser.

최근에 네이티브 어플리케이션과 웹 어플리케이션의 장점을 갖고, 쉽고 빠르게 어플리케이션을 개발할 수 있도록 네이티브 어플리케이션과 웹 어플리케이션을 결합한 하이브리드형 어플리케이션 기법도 등장하고 있다.Recently, a hybrid application technique combining native application and web application has emerged so as to develop application easily and quickly with advantages of native application and web application.

또한, 최근에 단말과 플랫폼의 다양화, 하드웨어 기술의 다양화, 빠른 기술의 발전 속도 등으로 하드웨어 및 플랫폼에 독립적인 개방형 모바일 응용 플랫폼 기술에 대한 요구로 나타나고 있으며, 웹 응용 기술의 발전과 웹 서비스의 다양화에 따라 웹 응용을 빠르고 효과적으로 접근하여 사용할 수 있는 웹 운영체제에 대한 관심이 높아지고 있다.Recently, it has become a demand for an open mobile application platform technology independent of hardware and platform due to various diversification of terminals and platforms, diversification of hardware technology, and speed of rapid technology development. There is a growing interest in web operating systems that can quickly and efficiently access and use web applications.

웹 운영체제 기술은 단말의 종류와 이용 환경에 구애 받지 않고 자유롭게 인터넷 서비스를 이용할 수 있는 웹 기반의 운영체제 기술이다.The web operating system technology is a web based operating system technology that can freely use the internet service regardless of the type of terminal and usage environment.

그러나, 최근의 웹 운영체제 기술들은 브라우저 기반의 웹 응용 사용 환경에만 초점을 두고 있어, 상술한 웹 운영체제라고 볼 수 없고, 단말의 하드웨어와 플랫폼에 독립적으로 실행될 수 없고, 인터넷상의 다양한 웹 자원을 활용할 수 없는 문제가 있다.However, since the recent web operating system technologies focus only on the browser-based web application use environment, they can not be regarded as the above-described web operating system, can not be executed independently of the hardware and platform of the terminal, There is no problem.

따라서, 단말의 하드웨어 및 플랫폼에 독립적으로 인터넷상의 다양한 웹 자원들과 효과적으로 연동할 수 있는 새로운 방안이 요구된다.Accordingly, there is a need for a new scheme that can effectively interoperate with various web resources on the Internet independently of hardware and platform of the terminal.

상기와 같은 문제점을 해결하기 위한 본 발명의 목적은, 단말 장치의 하드웨어에 독립적이며, 인터넷에 존재하는 자원을 이용하여 응용 또는 서비스를 실행할 수 있는 웹 기반의 운영체제를 탑재한 단말 장치를 제공하는 데 있다.An object of the present invention to solve the above problems is to provide a terminal device which is independent of the hardware of a terminal device and is equipped with a web-based operating system capable of executing an application or a service using resources existing on the Internet have.

또한, 본 발명의 다른 목적은, 단말 장치의 하드웨어에 독립적이며, 인터넷에 존재하는 자원을 이용하여 응용 또는 서비스를 실행할 수 있는 웹 기반의 운영체제를 탑재한 단말 장치를 이용한 서비스 제공 방법을 제공하는 데 있다.Another object of the present invention is to provide a service providing method using a terminal device equipped with a web-based operating system independent of hardware of a terminal device and capable of executing an application or a service using resources existing on the Internet have.

본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The technical objects of the present invention are not limited to the technical matters mentioned above, and other technical subjects not mentioned can be clearly understood by those skilled in the art from the following description.

상기한 본 발명의 목적을 달성하기 위한 본 발명의 일 실시예에 따른 웹 기반의 운영체제를 탑재한 단말 장치에 있어서 상기 웹 기반의 운영체제는 요청된 응용 또는 서비스를 그래픽 인터페이스를 통하여 제공하는 웹 데스크탑과, 상기 단말 장치의 하드웨어에 독립적으로 상기 응용 또는 서비스가 실행되도록 상기 단말 장치의 하드웨어 및 인터넷에 존재하는 자원 중 적어도 하나를 추상화하고, 추상화된 상기 인터넷에 존재하는 자원을 처리하는 웹 커널과, 추상화된 상기 단말 장치의 하드웨어, 상기 웹 기반의 운영체제를 탑재한 타 단말 장치의 추상화된 하드웨어 및 상기 인터넷에 존재하는 자원 중 적어도 하나를 기초로 상기 응용 또는 서비스의 실행 및 저작 중 적어도 하나를 수행하는 웹 어플리케이션 프레임워크를 포함한다.According to another aspect of the present invention, there is provided a terminal equipped with a web-based operating system, the web-based operating system including a web desktop providing a requested application or service through a graphical interface, A web kernel for abstracting at least one of the hardware of the terminal device and the resources existing on the Internet so that the application or the service is executed independently of the hardware of the terminal device and for processing the resources existing in the abstracted internet, Which performs at least one of execution and authoring of the application or service based on at least one of the hardware of the terminal device, the abstracted hardware of the other terminal device loaded with the web-based operating system, Application framework.

또한, 웹 커널은 상기 단말 장치의 하드웨어를 추상화하는 추상화 계층과, 상기 추상화 계층을 통하여 추상화된 상기 하드웨어를 제어하는 마이크로 커널과, 상기 마이크로 커널을 통하여 상기 추상화된 하드웨어를 이용하여 상기 응용 또는 서비스를 실행하기 위한 시스템 서비스를 제공하는 웹 운영체제 시스템 서비스와, 상기 응용 또는 서비스를 실행하기 위해 상기 웹 운영체제 시스템 서비스를 통하여 상기 인터넷에 존재하는 자원을 처리하는 웹 코어 런타임을 포함할 수 있다.The web kernel includes an abstraction layer for abstracting the hardware of the terminal device, a micro kernel for controlling the abstraction of the hardware through the abstraction layer, and a micro kernel for controlling the application or service using the abstracted hardware through the micro kernel. And a web core runtime for processing resources existing on the Internet through the web operating system system service to execute the application or service.

또한, 웹 운영체제 시스템 서비스는 상기 단말 장치 및 상기 타 단말 장치 중 적어도 하나로부터 요청된 시스템 콜에 기초하여 추상화된 상기 하드웨어를 공유하고, 상기 인터넷에 존재하는 자원을 추상화하는 웹 시스템 콜 관리자와, 상기 응용 또는 서비스를 프로세스 단위로 관리하여, 상기 응용 또는 서비스를 실행하기 위한 상기 프로세스를 스케줄링하는 웹 프로세스 관리자와, 상기 단말 장치의 메모리, 상기 타 단말 장치의 메모리 및 상기 인터넷에 존재하는 저장공간 중 적어도 하나를 이용하여 형성된 가상의 메모리를 관리하는 웹 가상 메모리 관리자와, 상기 단말 장치 및 상기 타 단말 장치 중 적어도 하나로부터의 디렉토리 및 파일에 대한 처리 요청에 상응하는 처리를 수행하고, 상기 가상의 메모리를 하나의 파일 시스템으로 관리하는 웹 파일 시스템 관리자와, HTTP 기반의 통신 방식, 웹 소켓 통신 프로토콜 기반의 통신 방식 및 TCP/IP 이외의 통신 방식 간의 통신 방식의 변환을 통하여 상기 단말 장치와 상기 타 단말 장치간의 네트워크 또는 상기 단말 장치와 상기 인터넷에 존재하는 자원간의 네트워크 연결을 위한 웹 소켓/프로토콜 관리자와, 상기 단말 장치와 상기 타 단말 장치간 또는 상기 단말 장치와 상기 인터넷에 존재하는 자원간의 추상화된 그래픽 인터페이스를 제공하는 웹 그래픽 서브시스템과, 상기 단말 장치와 인터넷에 존재하는 웹 클라우드를 연결하고, 상기 단말 장치가 상기 웹 클라우드를 사용할 수 있도록 인터페이스를 제공하는 웹 클라우드 서브시스템을 포함할 수 있다.The web service system service may include a web system call manager for sharing the abstracted hardware based on a system call requested from at least one of the terminal device and the other terminal device and for abstracting resources existing in the Internet, A web process manager that manages an application or a service on a per-process basis and schedules the process for executing the application or service; and a memory of the terminal device, a memory of the other terminal device, A web virtual memory manager which manages a virtual memory formed by using one of the terminal apparatuses and the terminal apparatuses and a processing unit which performs processing corresponding to a processing request for a directory and a file from at least one of the terminal apparatus and the other terminal apparatus, Web managed by one file system A network between the terminal device and the other terminal device or between the terminal device and the other terminal device through a conversion of a system administrator, a communication method based on an HTTP-based communication method, a web socket communication protocol, and a communication method other than TCP / A web socket / protocol manager for network connection between resources existing on the Internet; a web graphic subsystem for providing an abstracted graphical interface between the terminal device and the other terminal device or between the terminal device and a resource existing on the Internet; And a Web cloud subsystem for connecting the terminal device to a web cloud existing on the Internet and providing an interface for the terminal device to use the web cloud.

또한, 상기 웹 시스템 콜 관리자는 상기 인터넷에 존재하는 개방형 API(Application Programming Interface)를 통하여 상기 추상화된 하드웨어를 공유하고, 개방형 데이터 교환 규격을 이용하여 상기 인터넷에 존재하는 자원을 추상화하고, 상기 추상화된 하드웨어 공유를 위한 권한 및 범위를 규정할 수 있다.In addition, the web system call manager shares the abstracted hardware through an open API (Application Programming Interface) existing on the Internet, abstracts resources existing on the Internet using an open data exchange standard, You can define rights and scope for hardware sharing.

또한, 프로세스 단위는 상기 응용 또는 서비스별로 설정되거나, 미리 설정된 단위로 설정될 수 있다.Also, the process unit may be set for each application or service, or may be set in a predetermined unit.

또한, 웹 프로세스 관리자는 상기 응용 또는 서비스를 미리 설정된 쓰레드(thread) 단위로 병렬적으로 처리할 수 있다.Also, the web process manager can process the application or service in parallel on a predetermined thread basis.

또한, 웹 코어 런타임은 상기 응용 또는 서비스를 실행하기 위해 시맨틱 언어, 자바스크립트 언어, 마크업 언어 및 스타일시트 언어 중 적어도 하나의 언어로 표현된 추상화된 상기 인터넷에 존재하는 자원을 처리하는 언어 처리부와, 상기 인터넷에 존재하는 자원을 렌더링하기 위한 렌더링 엔진을 포함할 수 있다.In addition, the web core runtime may include a language processing unit for processing the abstracted resource on the Internet expressed in at least one of a semantic language, a JavaScript language, a markup language, and a style sheet language for executing the application or service, , And a rendering engine for rendering resources present in the Internet.

또한, 인터넷에 존재하는 자원은 웹 서비스와 웹 사이트의 웹 정보자원, SOAP(Simple Object Access Protocol)와 RESTful 개방형 API(Application Programming Interface)로 제공되는 웹 개방형 API, 웹 콘텐츠, 웹 응용 및 링크된 오픈 데이터(Linked Open Data)의 형태로 제공되는 개방형 데이터 중 적어도 하나를 포함할 수 있다.In addition, the resources existing on the Internet include web information resources of web services and web sites, web open APIs provided by SOAP (Simple Object Access Protocol) and RESTful open API (application programming interface), web contents, And open data provided in the form of data (Linked Open Data).

상기한 본 발명의 다른 목적을 달성하기 위한 본 발명의 일 실시예에 따른 웹 기반의 운영체제를 탑재한 단말 장치를 이용한 서비스 제공 방법은, 상기 웹 기반의 운영체제가 응용 또는 서비스를 요청받는 단계와, 상기 응용 또는 서비스가 상기 단말 장치의 하드웨어에 독립적으로 실행되도록 상기 웹 기반의 운영체제의 웹 커널이 상기 단말 장치의 하드웨어 및 인터넷에 존재하는 자원 중 적어도 하나를 추상화하고, 상기 웹 기반의 운영체제의 웹 코어 런타임이 추상화된 상기 인터넷에 존재하는 자원을 처리하는 단계와, 상기 단말 장치의 추상화된 하드웨어, 상기 웹 기반의 운영체제를 탑재한 타 단말 장치의 추상화된 하드웨어 및 상기 인터넷에 존재하는 자원 중 적어도 하나를 기초로 상기 웹 기반의 운영체제의 웹 어플리케이션 프레임워크가 상기 요청된 응용 또는 서비스를 실행하는 단계를 포함한다.According to another aspect of the present invention, there is provided a method of providing a service using a terminal equipped with a web-based operating system, the method comprising: receiving an application or a service from the web- Wherein the web kernel of the web-based operating system abstracts at least one of hardware of the terminal device and resources existing on the Internet so that the application or service is executed independently of the hardware of the terminal device, Processing at least one of abstracted hardware of the terminal, abstracted hardware of a terminal equipped with the web-based operating system, and resources present on the Internet, the resource being abstracted from the runtime; As a basis, the web application framework of the web- And executing the requested application or service.

또한, 웹 기반의 운영체제를 탑재한 단말 장치를 이용한 서비스 제공 방법은 상기 단말 장치가 상기 단말 장치의 하드웨어에 저장된 미리 설정된 체크 절차에 기초하여 상기 단말 장치의 하드웨어를 체크하는 단계와, 상기 단말 장치가 상기 웹 기반의 운영체제를 구동하고, 상기 응용 또는 서비스의 요청에 대기하는 단계를 더 포함할 수 있다.A method for providing a service using a terminal device equipped with a web-based operating system includes the steps of: checking the hardware of the terminal device based on a preset check procedure stored in the hardware of the terminal device; The method may further include driving the web-based operating system and waiting for a request for the application or service.

또한, 응용 또는 서비스가 상기 단말 장치의 하드웨어에 독립적으로 실행되도록 상기 웹 기반의 운영체제의 웹 커널이 상기 단말 장치의 하드웨어, 및 인터넷에 존재하는 자원을 추상화하고, 상기 웹 기반의 운영체제의 웹 코어 런타임이 추상화된 상기 인터넷에 존재하는 자원을 처리하는 단계는 상기 웹 커널의 추상화 계층이 상기 단말 장치의 하드웨어를 추상화하는 단계와, 상기 웹 커널의 마이크로 커널이 상기 요청된 응용 또는 서비스에 상응하도록 추상화된 상기 단말 장치의 하드웨어를 제어하는 단계와, 상기 웹 기반의 운영체제의 웹 시스템 콜 관리자가 상기 단말 장치 및 상기 타 단말 장치 중 적어도 하나로부터 요청된 시스템 콜에 기초하여 추상화된 하드웨어를 공유하고, 상기 인터넷에 존재하는 자원을 추상화하는 단계와, 상기 웹 기반의 운영체제의 웹 운영체제 시스템 서비스가 제공하는 시스템 서비스를 통하여 상기 웹 커널의 웹 코어 런타임이 추상화된 상기 인터넷에 존재하는 자원을 처리하는 단계를 포함할 수 있다.In addition, the web kernel of the web-based operating system abstracts the hardware of the terminal device and the resources existing on the Internet so that the application or the service can be executed independently of the hardware of the terminal device, The abstracting of the abstracted resource on the Internet may include abstracting the hardware of the terminal device by the abstraction layer of the web kernel, abstracting the microkernel of the web kernel to correspond to the requested application or service The web system call manager of the web-based operating system shares abstracted hardware based on a system call requested from at least one of the terminal device and the other terminal device, Abstracting the resources present in the web-based And processing resources existing on the Internet in which the web core runtime of the web kernel is abstracted through a system service provided by the web operating system system service of the operating system of the operating system of FIG.

또한, 웹 기반의 운영체제의 웹 운영체제 시스템 서비스가 제공하는 시스템 서비스를 통하여 상기 웹 커널의 웹 코어 런타임이 추상화된 상기 인터넷에 존재하는 자원을 처리하는 단계는 상기 웹 코어 런타임이 상기 요청된 응용 또는 서비스를 실행하기 위해 시맨틱 언어, 자바스크립트 언어, 마크업 언어 및 스타일시트 언어 중 적어도 하나의 언어로 표현된 추상화된 상기 인터넷에 존재하는 자원을 언어 처리하는 단계와, 추상화된 상기 인터넷에 존재하는 자원을 렌더링하기 위한 렌더링하는 단계를 포함할 수 있다.In addition, the step of processing resources existing on the Internet, in which the web core runtime of the web kernel is abstracted, through a system service provided by the web service system service of the web based operating system, Language processing of abstracted resources present on the Internet expressed in at least one of a semantic language, a JavaScript language, a markup language, and a style sheet language to execute the abstracted resource; And a rendering step for rendering.

또한, 웹 기반의 운영체제의 웹 시스템 콜 관리자가 상기 단말 장치 및 상기 타 단말 장치 중 적어도 하나로부터 요청된 시스템 콜에 기초하여 추상화된 하드웨어를 공유하고, 상기 인터넷에 존재하는 자원을 추상화하는 단계는 상기 인터넷에 존재하는 개방형 API(Application Programming Interface)를 통하여 상기 추상화된 하드웨어를 공유하고, 개방형 데이터 교환 규격을 이용하여 상기 인터넷에 존재하는 자원을 추상화하고, 상기 추상화된 하드웨어 공유를 위한 권한 및 범위를 규정할 수 있다.In addition, the web system call manager of the web-based operating system may share the abstracted hardware based on the system call requested from at least one of the terminal device and the other terminal device, and the step of abstracting the resources existing in the internet may include Sharing abstracted hardware through an open API (Application Programming Interface) existing on the Internet, abstracting resources existing on the Internet using an open data exchange standard, defining an authority and a scope for the abstracted hardware sharing can do.

또한, 웹 기반의 운영체제의 웹 시스템 콜 관리자가 상기 단말 장치 및 상기 타 단말 장치 중 적어도 하나로부터 요청된 시스템 콜에 기초하여 추상화된 하드웨어를 공유하고, 상기 인터넷에 존재하는 자원을 추상화하는 단계는 상기 인터넷에 존재하는 개방형 API(Application Programming Interface)를 통하여 상기 추상화된 하드웨어를 공유하여, 디바이스 클라우드를 형성할 수 있다.In addition, the web system call manager of the web-based operating system may share the abstracted hardware based on the system call requested from at least one of the terminal device and the other terminal device, and the step of abstracting the resources existing in the internet may include The abstracted hardware can be shared through an open API (Application Programming Interface) existing in the Internet to form a device cloud.

상기와 같은 본 발명에 따른 웹 기반의 운영체제를 탑재한 단말 장치 및 이를 이용한 서비스 제공 방법을 이용할 경우에는 웹 응용 또는 웹 서비스가 실행되는 단말 장치의 하드웨어를 추상화하므로 하드웨어에 독립적으로 웹 응용 또는 웹 서비스를 실행할 수 있고, 인터넷상의 다양한 웹 자원을 추상화므로, 다양한 웹 자원들에 복합적인 제어가 가능하며, 사용자는 인터넷상의 데이터, 개방형 API, 클라우드 등을 활용한 복합적인 서비스를 받을 수 있다.When the terminal device equipped with the web-based operating system and the service providing method using the web-based operating system according to the present invention are used, the hardware of the terminal device on which the web application or the web service is executed is abstracted, And various web resources on the Internet are abstracted. Therefore, it is possible to control various web resources in a complex manner, and users can receive a complex service utilizing data on the Internet, open API, and cloud.

또한, 개발자는 웹 자원들을 연계하는 웹 응용을 쉽게 개발할 수 있고, 사용자는 웹 운영체제가 탑재된 단말 장치라면 어디에서든 동일한 작업 환경과 어플리케이션, 데이터 등 인터넷 자원을 제공받을 수 있다. In addition, a developer can easily develop a web application linking web resources, and a user can receive the same work environment, Internet resources such as applications, data, and the like anywhere on a terminal device equipped with a web operating system.

또한, 본 발명에 따른 웹 기반의 운영체제를 탑재한 단말 장치 및 이를 이용한 서비스 제공 방법은 단말 장치의 하드웨어 특성과 플랫폼의 차이로 인한 어플리케이션 개발의 복잡성 문제를 해결할 수 있다.In addition, the terminal device equipped with the web-based operating system and the service providing method using the web-based operating system according to the present invention can solve the problem of complexity of application development due to differences in hardware characteristics and platforms of the terminal device.

도 1은 본 발명의 일 실시예에 따른 웹 기반의 운영체제를 탑재한 단말 장치의 구성을 나타내는 블록도이다.
도 2는 도 1의 웹 커널의 구성을 나타내는 블록도이다.
도 3은 도 2의 웹 운영체제 시스템 서비스의 구성을 나타내는 블록도이다.
도 4는 도 2의 웹 코어 런타임의 구성을 나타내는 블록도이다.
도 5 내지 도 7은 본 발명의 일 실시예에 따른 웹 기반의 운영체제를 탑재한 단말 장치를 이용한 서비스 제공 방법을 나타내는 흐름도이다.
도 8은 본 발명의 일 실시예에 따른 웹 기반의 운영체제를 탑재한 단말 장치를 이용한 서비스 제공을 설명하는 예시도이다.
도 9는 본 발명의 일 실시예에 따른 웹 기반의 운영체제를 탑재한 단말 장치를 이용한 서비스 제공을 설명하는 예시도이다.
FIG. 1 is a block diagram illustrating a configuration of a terminal equipped with a web-based operating system according to an embodiment of the present invention.
2 is a block diagram showing the configuration of the web kernel of FIG.
3 is a block diagram showing the configuration of the Web operating system system service of FIG.
4 is a block diagram showing the configuration of the web core runtime of FIG.
5 to 7 are flowcharts illustrating a method of providing a service using a terminal equipped with a web-based operating system according to an embodiment of the present invention.
FIG. 8 is a diagram illustrating service provision using a terminal device equipped with a web-based operating system according to an embodiment of the present invention.
9 is a diagram illustrating an example of providing a service using a terminal equipped with a web-based operating system according to an embodiment of the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and will herein be described in detail. It should be understood, however, that the invention is not intended to be limited to the particular embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention. Like reference numerals are used for like elements in describing each drawing.

제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다. The terms first, second, A, B, etc. may be used to describe various elements, but the elements should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component. And / or < / RTI > includes any combination of a plurality of related listed items or any of a plurality of related listed items.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. It is to be understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, . On the other hand, when an element is referred to as being "directly connected" or "directly connected" to another element, it should be understood that there are no other elements in between.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used in this application is used only to describe a specific embodiment and is not intended to limit the invention. The singular expressions include plural expressions unless the context clearly dictates otherwise. In the present application, the terms "comprises" or "having" and the like are used to specify that there is a feature, a number, a step, an operation, an element, a component or a combination thereof described in the specification, But do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or combinations thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in commonly used dictionaries are to be interpreted as having a meaning consistent with the contextual meaning of the related art and are to be interpreted as either ideal or overly formal in the sense of the present application Do not.

이하, 본 발명의 실시예에서, 웹 기반의 운영체제는 인터넷에 존재하는 자원과 연동할 수 있고, 단말 장치의 하드웨어에 독립적으로 응용 또는 서비스를 실행할 수 있고, 클라우드 컴퓨팅과 연동할 수 있는 단말 장치 제어 기술, 웹 엔진 기술 및 웹 응용 기술을 결합한 운영체제 또는 플랫폼을 의미할 수 있다.Hereinafter, in the embodiment of the present invention, a web-based operating system can interoperate with a resource existing on the Internet, execute an application or a service independently of the hardware of the terminal, May refer to an operating system or platform that combines technology, web engine technology, and web application technology.

또한, 본 발명의 실시예에서, 단말 장치는 이동통신망을 사용하는 이동통신 단말, 무선랜 환경을 사용하는 모바일 단말, 유선망을 사용하는 데스크탑과 서버, 셋탑박스, IPTV, 정보가전기기 등의 운영체제가 탑재될 수 있는 다양한 단말 장치들이 될 수 있다.
Also, in the embodiment of the present invention, the terminal device may be an operating system such as a mobile communication terminal using a mobile communication network, a mobile terminal using a wireless LAN environment, a desktop and a server using a wired network, a set top box, an IPTV, It can be various terminal devices that can be mounted.

이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.Hereinafter, preferred embodiments according to the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 웹 기반의 운영체제를 탑재한 단말 장치의 구성을 나타내는 블록도이다.FIG. 1 is a block diagram illustrating a configuration of a terminal equipped with a web-based operating system according to an embodiment of the present invention.

도 1을 참조하면, 웹 기반의 운영체제를 탑재한 단말 장치(1000)는 단말 장치의 하드웨어(1100), 웹 기반의 운영체제 및 웹 어플리케이션(1500)을 포함할 수 있다.Referring to FIG. 1, a terminal device 1000 equipped with a web-based operating system may include a hardware 1100 of a terminal device, a web-based operating system, and a web application 1500.

하드웨어(1100)는 웹 기반의 운영체제가 탑재될 수 있는 다양한 단말 장치의 메모리, 중앙처리장치(CPU), 카메라 등의 자원을 의미할 수 있다.The hardware 1100 may refer to resources of various terminal devices on which a web-based operating system can be loaded, a central processing unit (CPU), a camera, and the like.

웹 기반의 운영체제는 단말 장치의 하드웨어를 추상화하고, 추상화된 하드웨어를 제어하며, 인터넷에 존재하는 자원을 추상화하여 웹 기반의 운영체제가 탑재된 다양한 단말 장치에서 인터넷에 존재하는 다양한 자원과 연계된 응용(Application) 또는 서비스를 제공할 수 있고, 웹 커널(1200), 웹 어플리케이션 프레임워크(1300), 및 웹 데스크탑(1400)을 포함한다.The web-based operating system abstracts the hardware of the terminal device, controls the abstracted hardware, and abstracts the resources existing on the Internet. The web-based operating system abstracts the resources that exist on the Internet, Application, or service, and includes a web kernel 1200, a web application framework 1300, and a web desktop 1400.

웹 커널(1200)은 단말 장치(1000)의 하드웨어(1100) 및 인터넷에 존재하는 자원 중 적어도 하나를 추상화하여 단말 장치의 하드웨어에 독립적으로 응용 또는 서비스가 실행되도록 할 수 있다. 웹 커널(1200)의 구체적인 구성은 후술할 도 2에서 설명하기로 한다.The web kernel 1200 abstracts at least one of the resources existing in the hardware 1100 of the terminal apparatus 1000 and the Internet so that the application or the service can be executed independently of the hardware of the terminal apparatus. The specific configuration of the web kernel 1200 will be described later with reference to FIG.

상기 인터넷에 존재하는 자원은 예를 들어, 웹 서비스와 웹 사이트의 웹 정보자원, SOAP(Simple Object Access Protocol)와 RESTful 개방형 API(Application Programming Interface)로 제공되는 웹 개방형 API, 웹 콘텐츠, 웹 응용 및 링크된 오픈 데이터(Linked Open Data)의 형태로 제공되는 개방형 데이터 등 인터넷에 존재하는 단양한 웹 자원을 포함할 수 있다.The resources existing on the Internet include, for example, web information resources of a web service and a web site, a web open API provided by SOAP (Simple Object Access Protocol) and a RESTful open API (application programming interface) And open data provided in the form of Linked Open Data.

웹 어플리케이션 프레임워크(1300)는 추상화된 단말 장치의 하드웨어, 웹 기반의 운영체제를 탑재한 타 단말 장치의 추상화된 하드웨어 및 인터넷에 존재하는 자원 중 적어도 하나를 기초로 응용 또는 서비스를 실행, 저작 등을 할 수 있는 환경을 제공할 수 있다. The web application framework 1300 executes an application or a service based on at least one of the hardware of the abstracted terminal device, the abstracted hardware of the other terminal device loaded with the web-based operating system, and the resources existing on the Internet. It is possible to provide an environment that can be used.

구체적으로, HTML(HyperText Markup Languaage)과 자바스크립트(Javascript) 등의 언어를 이용하여 응용을 저작할 수 있는 환경을 제공할 수 있고, 이를 위해 위지윅(WYSIWYG) 방식의 응용 저작도구 등을 지원할 수 있다. Specifically, it is possible to provide an environment for authoring an application using a language such as HTML (HyperText Markup Language) and JavaScript (Javascript), and can support an application authoring tool of WYSIWYG method .

또한, 개발자가 개발한 응용을 패키징하고, 등록, 판매할 수 있고, 응용의 구매자가 인터넷을 통하여 구입하고자 하는 응용을 검색, 구입, 설치할 수 있도록 하는 웹 어플리케이션 스토어 기능을 제공할 수도 있다.In addition, a developer can develop a package of applications, register and sell applications, and provide a web application store function that enables a purchaser of an application to search, purchase, and install an application to be purchased through the Internet.

웹 데스크탑(1400)은 사용자로부터 요청된 응용 또는 서비스, 웹 기반의 운영체제를 편리하게 사용할 수 있도록 그래픽 인터페이스(Graphic Interface)를 통하여 사용자에게 사용자 환경을 제공할 수 있다. The web desktop 1400 can provide a user environment to a user through a graphical interface to conveniently use the application or service requested by the user or a web-based operating system.

또한, 웹 데스크탑(1400)은 사용자별로 독립된 사용자 환경 및 운영체제의 시스템 환경을 제공할 수 있고, 이를 위해 사용자별 사용자 환경, 서비스 환경을 저장 및 공유할 수 있고, 웹 클라우드 등을 통하여 사용자 환경, 서비스 환경을 저장, 공유, 활용할 수 있도록 할 수 있다.In addition, the web desktop 1400 can provide an independent user environment and a system environment of an operating system for each user, store and share a user environment and a service environment for each user for the user, You can save, share, and leverage your environment.

웹 어플리케이션(1500)은 웹 기반의 운영체제 상에서 실행되는 프로그램을 의미할 수 있다.
The web application 1500 may refer to a program running on a web-based operating system.

도 2는 도 1의 웹 커널의 구성을 나타내는 블록도이다.2 is a block diagram showing the configuration of the web kernel of FIG.

도 2를 참조하면, 웹 커널(1200)은 단말 장치의 하드웨어 및 인터넷에 존재하는 자원 중 적어도 하나를 추상화하여 단말 장치의 하드웨어에 독립적으로 응용 또는 서비스가 실행되도록 할 수 있고, 추상화 계층(1210), 마이크로 커널(1220), 웹 운영체제 시스템 서비스(1230) 및 웹 코어 런타임(1240)을 포함할 수 있다.2, the web kernel 1200 abstracts at least one of the hardware of the terminal device and the resources existing on the Internet so that the application or the service can be executed independently of the hardware of the terminal device, and the abstraction layer 1210, A microkernel 1220, a web operating system service 1230, and a web core runtime 1240.

추상화 계층(1210)은 단말 장치의 하드웨어를 추상화할 수 있다. 즉, 상기 추상화 계층(1210)은 단말 장치의 하드웨어에 독립적으로 응용 또는 서비스가 일관되게 실행될 수 있도록 하드웨어를 추상화할 수 있다.The abstraction layer 1210 may abstract the hardware of the terminal device. That is, the abstraction layer 1210 may abstract the hardware so that the application or service can be executed consistently independently of the hardware of the terminal device.

마이크로 커널(1220)은 추상화 계층(1210)을 통하여 추상화된 하드웨어를 제어할 수 있다.The microkernel 1220 may control the abstracted hardware through the abstraction layer 1210.

웹 운영체제 시스템 서비스(1230)는 마이크로 커널(1220)을 통하여 추상화된 하드웨어를 이용하여 응용 또는 서비스를 실행하기 위한 시스템 서비스를 제공할 수 있다. 웹 운영체제 시스템 서비스(1230)의 구체적인 구성은 후술할 도 3에서 설명하기로 한다.The web operating system service 1230 can provide a system service for executing an application or a service using the abstracted hardware through the micro kernel 1220. [ The specific configuration of the web operating system service system 1230 will be described later with reference to FIG.

웹 코어 런타임(1240)은 응용 또는 서비스를 실행하기 위해 웹 운영체제 시스템 서비스를 통하여 인터넷에 존재하는 자원을 처리할 수 있다. 웹 코어 런타임의 구체적인 구성은 후술할 도 4에서 설명하기로 한다.
The web core runtime 1240 can process resources present on the Internet through a web operating system service to execute applications or services. The specific configuration of the Web core runtime will be described later with reference to FIG.

도 3은 도 2의 웹 운영체제 시스템 서비스의 구성을 나타내는 블록도이다.3 is a block diagram showing the configuration of the Web operating system system service of FIG.

도 3을 참조하면, 웹 운영체제 시스템 서비스(1230)는 마이크로 커널(1220)을 통하여 추상화된 하드웨어를 이용하여 응용 또는 서비스를 실행하기 위한 시스템 서비스를 제공할 수 있고, 웹 시스템 콜 관리자(1231), 웹 프로세서 관리자(1232), 웹 가상 메모리 관리자(1233), 웹 파일 시스템 관리자(1234), 웹 소켓/프로토콜 관리자(1235), 웹 그래픽 서브시스템(1236) 및 웹 클라우드 서브시스템(1237)을 포함할 수 있다.3, the web operating system service 1230 can provide a system service for executing an application or a service using the abstracted hardware through the micro kernel 1220, and the web service call manager 1231, A web graphics manager 1232, a web virtual memory manager 1233, a web file system manager 1234, a web sockets / protocol manager 1235, a web graphics subsystem 1236 and a web cloud subsystem 1237 .

웹 시스템 콜 관리자(1231)는 웹 기반의 운영체제를 탑제한 단말 장치 및 인터넷을 통하여 연결된 웹 기반의 운영체제를 탑재한 타 단말 장치 중 적어도 하나로부터 요청된 시스템 콜에 기초하여 추상화된 하드웨어를 공유하고, 인터넷에 존재하는 자원을 추상화할 수 있다.The web system call manager 1231 shares abstracted hardware based on a system call requested from at least one of a terminal device including a web-based operating system and a web-based operating system connected via the Internet, The resources existing on the Internet can be abstracted.

구체적으로, HTTP(Hypertext Transfer Protocol) 또는 인터넷에 존재하는 개방형 API(Application Programming Interface)를 통하여 추상화된 하드웨어를 공유하고, 개방형 데이터 교환 규격을 이용하여 인터넷에 존재하는 자원을 추상화하고, 하드웨어 공유를 위한 권한 및 범위를 규정할 수 있다.Specifically, hardware abstracted through an HTTP (Hypertext Transfer Protocol) or an open API (Application Programming Interface) existing on the Internet is shared, an open-data exchange standard is used to abstract resources existing on the Internet, Authority, and scope of the application.

상기 개방형 데이터 교환 규격은 웹 컨텐츠의 신디케이션을 위한 XML(eXtensible Markup Language) 기반의 문서 포맷인 애텀(ATOM), XML 기반의 표준인 RSS(Really Simple Syndication), 인터넷에서 자료를 주고 받을 때 주고 받는 자료를 표현하는 방법인 제이썬(JSON: JavaScript Object Notation), XML 등을 의미할 수 있다.The open data exchange standard includes ATOM as an XML (Extensible Markup Language) based document format for syndication of Web contents, RSS (Really Simple Syndication) as an XML-based standard, data to be exchanged (JSON: JavaScript Object Notation), XML, and the like.

또한, 웹 시스템 콜 관리자(1231)는 단말 장치에 존재하는 API와 인터넷에 존재하는 개방형 API를 시스템 콜로 정의할 수 있고, 후술할 웹 가상 메모리 관리자(1233)로부터 메모리를 할당받아 사용할 수 있다.In addition, the web system call manager 1231 can define an API existing in the terminal device and an open API existing in the Internet in a system call, and can use the memory from the web virtual memory manager 1233 to be described later.

웹 프로세스 관리자(1232)는 응용 또는 서비스를 프로세스 단위 또는 쓰레드(thread) 단위로 관리할 수 있고, 응용 또는 서비스를 실행하기 위한 프로세스를 스케줄링할 수 있다. 또한, 프로세스 단위는 응용 또는 서비스 별로 설정되거나, 미리 설정된 단위로 설정될 수 있다. The Web process manager 1232 can manage an application or a service on a per-process or per-thread basis, and can schedule a process for executing an application or a service. The process unit may be set for each application or service, or may be set in a predetermined unit.

예를 들어, 웹 프로세스 관리자(1232)는 응용 또는 서비스를 처리하기 위한 처리 단위를 결정하고, 결정된 처리 단위를 그룹핑하여 하나의 프로세스로 관리할 수 있고, 응용 또는 서비스의 처리 순서를 결정할 수 있고, 프로세스별로 인터넷에 존재하는 자원 등의 자원의 활용 결과, 처리 결과 등을 관리할 수 있다.For example, the web process manager 1232 may determine a processing unit for processing an application or a service, group the determined processing units into one process, determine a processing order of an application or a service, It is possible to manage the utilization result of resources such as resources existing on the Internet, process results, and the like for each process.

또한, 웹 프로세스 관리자(1232)는 응용 또는 서비스를 미리 설정된 쓰레드 단위로 병렬적으로 처리할 수 있으며, 상기 쓰레드 단위는 Web Worker 등을 이용하여 설정될 수 있다.In addition, the web process manager 1232 can process an application or a service in parallel on a predetermined thread basis, and the thread unit can be set using a Web Worker or the like.

웹 가상 메모리 관리자(1233)는 단말 장치의 메모리, 타 단말 장치의 메모리 및 인터넷에 존재하는 저장공간 중 적어도 하나를 이용하여 가상의 메모리를 형성할 수 있고, 형성된 가상의 메모리를 관리할 수 있고, 웹 프로세스 관리자(1232)와 웹 시스템 콜 관리자(1231)에 메모리를 할당할 수 있다.The web virtual memory manager 1233 can form a virtual memory using at least one of the memory of the terminal device, the memory of the other terminal device, and the storage space existing in the Internet, It is possible to allocate memory to the Web process manager 1232 and the Web system call manager 1231. [

웹 파일 시스템 관리자(1234)는 단말 장치 및 타 단말 장치 중 적어도 하나로부터의 디렉토리 및 파일에 대한 처리 요청에 상응하는 처리를 수행하고, 가상의 메모리를 하나의 파일 시스템으로 관리할 수 있다.The web file system manager 1234 may perform processing corresponding to a processing request for a directory and a file from at least one of the terminal apparatus and the other terminal apparatuses and manage the virtual memory as one file system.

구체적으로, 웹 파일 시스템 관리자(1234)는 디렉토리 및 파일에 대한 생성, 수정, 삭제, 이동 등의 처리 요청을 받은 경우에 디렉토리 및 파일에 대한 생성, 수정, 삭제, 이동 등의 처리를 수행할 수 있고, 디렉토리 및 파일에 대한 처리 요청들에 대한 권한 및 접근 제어를 수행할 수 있다. Specifically, the web file system manager 1234 can perform processing such as creation, modification, deletion, and movement of directories and files when receiving a processing request such as creation, modification, deletion, and movement of directories and files And can perform authorization and access control for processing requests for directories and files.

또한, 웹 파일 시스템 관리자(1234)는 단말 장치에 존재하는 메모리나 HTTP 또는 개방형 API 기반의 처리를 통하여 타 단말 장치의 메모리 또는 웹 클라우드에 존재하는 원격 파일 저장 공간을 활용할 수 있다.In addition, the web file system manager 1234 can utilize the remote file storage space existing in the memory of the terminal device or the web cloud through the memory existing in the terminal device or the processing based on HTTP or open API.

웹 소켓/프로토콜 관리자(1235)는 HTTP 기반의 통신 방식, 웹 소켓 통신 프로토콜 기반의 통신 방식 및 TCP/IP 이외의 통신 방식 간의 통신 방식의 변환을 통하여 단말 장치와 타 단말 장치간의 네트워크 또는 단말 장치와 인터넷에 존재하는 자원간의 네트워크 연결할 수 있다.The web socket / protocol manager 1235 is connected to a network or a terminal device between a terminal device and another terminal device through a conversion of a communication method between an HTTP-based communication method, a Web socket communication protocol-based communication method, and a communication method other than TCP / There is network connectivity between resources that exist on the Internet.

웹 그래픽 서브시스템(1236)은 단말 장치와 타 단말 장치간 또는 단말 장치와 인터넷에 존재하는 자원간의 추상화된 그래픽 인터페이스를 제공할 수 있다. The web graphics subsystem 1236 may provide an abstracted graphical interface between a terminal device and other terminal devices or between resources present on the terminal device and the Internet.

구체적으로, 웹 그래픽 서브시스템(1236)은 2차원 벡터 그래픽을 표현하기 위한 XML 기반의 피일 형식인 SVG(Scalable VEctor Graphics) 등의 벡터 그래픽과 모델 기반 사용자 인터페이스 등을 이용한 그래픽 사용자 인터페이스(Graphic User Interface)와, HTML 등의 마크업 언어와 CSS(Cascading Style Sheets) 등의 스타일시트 언어를 이용한 사용자 인터페이스를 제공할 수 있고, 웹 기반의 그래픽 라이브러리인 WebGL 등을 이용한 3차원 객체 표현과, 그래픽 가속 프로세스를 이용한 그래픽 처리와, 인터넷에 존재하는 웹 클라우드의 컴퓨팅 자원과 연동할 수 있도록 그래픽 인터페이스를 제공할 수 있다.Specifically, the web graphics subsystem 1236 includes a graphical user interface (GUI) that uses vector graphics such as SVG (Scalable Vector Graphics), which is an XML-based uncompressed format for representing two-dimensional vector graphics, ), A user interface using a markup language such as HTML and a style sheet language such as CSS (Cascading Style Sheets), and a 3D object representation using WebGL, which is a web-based graphic library, And a graphical interface for interfacing with the computing resources of the web cloud existing on the Internet.

웹 클라우드 서브시스템(1237)은 단말 장치와 인터넷에 존재하는 웹 클라우드를 연결하고, 단말 장치가 웹 클라우드를 사용할 수 있도록 인터페이스를 제공할 수 있어, 웹 클라우드의 다양한 기능들을 하위 시스템으로 사용할 수 있다.
The Web cloud subsystem 1237 can connect a terminal device and a web cloud existing on the Internet, and provide an interface for the terminal device to use the web cloud, so that various functions of the web cloud can be used as a subsystem.

도 4는 도 2의 웹 코어 런타임의 구성을 나타내는 블록도이다.4 is a block diagram showing the configuration of the web core runtime of FIG.

도 4를 참조하면, 웹 코어 런타임(1240)은 응용 또는 서비스를 실행하기 위해 웹 운영체제 시스템 서비스를 통하여 인터넷에 존재하는 자원을 처리할 수 있고, 언어 처리부(1241), 렌더링 엔진(1242) 및 로컬 메모리(1243)를 포함할 수 있다.4, the web core runtime 1240 can process resources existing on the Internet through a web operating system system service to execute an application or a service, and includes a language processing unit 1241, a rendering engine 1242, A memory 1243, and the like.

언어 처리부(1241)은 응용 또는 서비스를 실행하기 위해 시맨틱 언어, 자바스크립트 언어, 마크업 언어 및 스타일시트 언어 중 적어도 하나의 언어로 표현된 인터넷에 존재하는 자원을 처리할 수 있고, 스크립트 언어 처리부(1241-1), 마크업 언어 처리부(1241-2), 시맨틱 언어 처리부(1241-3) 및 스타일시트 언어 처리부(1241-4)를 포함할 수 있다.The language processing unit 1241 can process resources existing on the Internet expressed in at least one of a semantic language, a JavaScript language, a markup language, and a style sheet language to execute an application or a service, 1241-1, a markup language processing unit 1241-2, a semantic language processing unit 1241-3, and a style sheet language processing unit 1241-4.

스크립트 언어 처리부(1241-1)는 자바스크립트 등의 스크립트 언어로 표현된 인터넷에 존재하는 자원 및 응용으로부터 제공된 이벤트 등을 처리할 수 있다.The script language processing unit 1241-1 can process resources provided on the Internet and events provided from applications expressed in a script language such as JavaScript.

마크업 언어 처리부(1241-2)는 XML 및 HTML 등의 마크업 언어로 표현된 인터넷에 존재하는 자원 및 응용으로부터 제공된 이벤트 등을 처리할 수 있다.The markup language processing unit 1241-2 can process resources and events provided from the Internet and expressed in a markup language such as XML and HTML.

시맨틱 언어 처리부(1241-3)는 링크된 오픈 데이터(Linked Open Data) 등의 개방형 데이터를 처리하기 위해서 다양한 시맨틱 언어를 처리하고, 시맨틱 관계를 해석하여, 자원의 검색, 추출, 해석, 가공 등의 처리를 수행할 수 있다. The semantic language processing unit 1241-3 processes various semantic languages to process open data such as linked open data and analyzes the semantic relations to search for resources, Processing can be performed.

시맨틱(semantic) 언어는 인터넷에 존재하는 자원에 대한 온톨로지(Ontology)를 기술하는 언어로, 예를 들어, RDF(Resource Description Framework), OWL(Ontology Web Language), 토픽맵(TopicMaps), N3, N-TRIPLE, KIF(Knowledge Interchange Format) 등이 될 수 있고, 온톨로지는 지식 표현 기술을 이용하여 데이터의 의미와 관계 정보를 표현한 것을 의미할 수 있고, 시맨틱 관계의 해석은 자원간의 의미를 이해하는 것을 의미할 수 있다.Semantic languages are languages that describe ontologies for resources that exist on the Internet. For example, RDF (Resource Description Framework), OWL (Ontology Web Language), TopicMaps, N3, N -TRIPLE, and KIF (Knowledge Interchange Format). The ontology can represent the meaning of data and relational information by using knowledge expression technology, and the interpretation of semantic relation means understanding meaning between resources can do.

스타일시트 언어 처리부(1241-4)는 CSS(Cascading Style Sheets) 등의 스타일시트 언어로 표현된 인터넷에 존재하는 자원을 처리할 수 있다.The style sheet language processing unit 1241-4 can process resources existing on the Internet expressed in a style sheet language such as CSS (Cascading Style Sheets).

렌더링 엔진(1242)은 인터넷에 존재하는 자원을 렌더링할 수 있고, 자원 및 자원의 형식 정보를 통하여 자원에 대한 영상을 생성할 수 있는 웹 렌더링 엔진(1242-1) 및 XML로 표현된 자원을 처리할 수 있는 DOM 엔진(1242-2)을 포함할 수 있다.
The rendering engine 1242 may include a web rendering engine 1242-1 capable of rendering resources present on the Internet and generating images for resources through resource and resource type information, And a DOM engine 1242-2 that can do that.

도 5 내지 도 7은 본 발명의 일 실시예에 따른 웹 기반의 운영체제를 탑재한 단말 장치를 이용한 서비스 제공 방법을 나타내는 흐름도이다.5 to 7 are flowcharts illustrating a method of providing a service using a terminal equipped with a web-based operating system according to an embodiment of the present invention.

도 5 내지 도 7을 참조하면, 웹 기반의 운영체제를 탑재한 단말 장치를 이용한 서비스 제공 방법은, 단말 장치가 단말 장치의 하드웨어에 저장된 미리 설정된 체크 절차에 기초하여 단말 장치의 하드웨어를 체크하고(S1000), 단말 장치가 웹 기반의 운영체제를 구동하고, 응용 또는 서비스의 요청에 대기할 수 있다(S2000). 단계 1000과 단계 2000은 웹 기반의 운영체제를 탑재한 단말 장치를 이용한 서비스 제공 방법에서 필요에 따라 선택적으로 적용될 수 있다.5 to 7, a method of providing a service using a terminal equipped with a web-based operating system includes the steps of: checking the hardware of the terminal device based on a preset check procedure stored in hardware of the terminal device (S1000 ), The terminal device may operate a web-based operating system and wait for an application or a service request (S2000). Steps 1000 and 2000 may be selectively applied as needed in a service providing method using a terminal device equipped with a web-based operating system.

다음으로, 웹 기반의 운영체제를 탑재한 단말 장치를 이용한 서비스 제공 방법은 웹 기반의 운영체제가 응용 또는 서비스를 요청받고(S3000), 응용 또는 서비스가 단말 장치의 하드웨어에 독립적으로 실행되도록 웹 기반의 운영체제의 웹 커널이 단말 장치의 하드웨어 및 인터넷에 존재하는 자원 중 적어도 하나를 추상화하고, 웹 기반의 운영체제의 웹 코어 런타임이 추상화된 상기 인터넷에 존재하는 자원을 처리할 수 있다(S4000).Next, a method of providing a service using a terminal device equipped with a web-based operating system is a method of providing a service using a web-based operating system so that an application or a service is requested (S3000) The web kernel of the terminal can abstract at least one of the hardware of the terminal device and the resources existing on the Internet and process the resources existing on the Internet in which the web core runtime of the web based operating system is abstracted (S4000).

여기서, 인터넷에 존재하는 자원은 웹 서비스와 웹 사이트의 웹 정보자원, SOAP(Simple Object Access Protocol)와 RESTful 개방형 API(Application Programming Interface)로 제공되는 웹 개방형 API, 웹 콘텐츠, 웹 응용 및 링크된 오픈 데이터(Linked Open Data)의 형태로 제공되는 개방형 데이터 중 적어도 하나를 포함할 수 있다.Here, resources existing on the Internet include web information resources of web services and web sites, web open APIs provided by SOAP (Simple Object Access Protocol) and RESTful open API (application programming interface), web contents, And open data provided in the form of data (Linked Open Data).

구체적으로, 단계 4000은 웹 커널의 추상화 계층이 단말 장치의 하드웨어를 추상화하고(S4100), 웹 커널의 마이크로 커널이 요청된 응용 또는 서비스에 상응하도록 단말 장치의 하드웨어를 제어하고(S4200), 웹 기반의 운영체제의 웹 시스템 콜 관리자가 단말 장치 및 타 단말 장치 중 적어도 하나로부터 요청된 시스템 콜에 기초하여 추상화된 하드웨어를 공유하고, 인터넷에 존재하는 자원을 추상화할 수 있다(S4300).Specifically, in step S4000, the abstraction layer of the web kernel abstracts the hardware of the terminal device (S4100), controls the hardware of the terminal device so that the micro kernel of the web kernel corresponds to the requested application or service (S4200) The web system call manager of the operating system of the operating system can abstract the abstracted hardware based on the system call requested from at least one of the terminal device and the other terminal devices and abstract the resources existing on the Internet in operation S4300.

구체적으로, 단계 4300은 인터넷에 존재하는 개방형 API(Application Programming Interface)를 통하여 추상화된 하드웨어를 공유하고, 개방형 데이터 교환 규격을 이용하여 인터넷에 존재하는 자원을 추상화하고, 추상화된 하드웨어 공유를 위한 권한 및 범위를 규정할 수 있다.In detail, in operation 4300, the abstracted hardware is shared through the open API (Application Programming Interface) existing on the Internet, the abstracted resource is abstracted using the open data exchange standard, The range can be specified.

또한, 인터넷에 존재하는 개방형 API(Application Programming Interface)를 통하여 추상화된 하드웨어를 공유하여, 디바이스 클라우드를 형성할 수 있다.In addition, the device cloud can be formed by sharing hardware abstracted through an open API (Application Programming Interface) existing in the Internet.

또한, 웹 기반의 운영체제의 웹 소켓/프로토콜 관리자가 단말 장치와 타 단말 장치간의 네트워크 또는 단말 장치와 인터넷에 존재하는 자원간의 네트워크를 연결할 수 있고, 상기 단계 4100 이전에 수행될 수 있고, 단계 4300 이후에 수행될 수도 있다.Also, the web socket / protocol manager of the web-based operating system can connect the network between the terminal device and the other terminal device or the network between the terminal device and the resources existing on the Internet, and can be performed before the step 4100, . ≪ / RTI >

다음으로, 웹 기반의 운영체제를 탑재한 단말 장치를 이용한 서비스 제공 방법은 웹 기반의 운영체제의 웹 운영체제 시스템 서비스가 제공하는 시스템 서비스를 통하여 웹 커널의 웹 코어 런타임이 추상화된 인터넷에 존재하는 자원을 처리할 수 있다(S4400).Next, a method of providing a service using a terminal device equipped with a web-based operating system includes processing a resource existing on the Internet in which the web core runtime of the web kernel is abstracted through the system service provided by the web operating system service of the web- (S4400).

구체적으로, 단계 4400은 웹 코어 런타임이 요청된 응용 또는 서비스를 실행하기 위해 시맨틱 언어, 자바스크립트 언어, 마크업 언어 및 스타일시트 언어 중 적어도 하나의 언어로 표현된 추상화된 인터넷에 존재하는 자원을 언어 처리하고(S4410), 추상화된 인터넷에 존재하는 자원을 렌더링하기 위한 렌더링할 수 있다(S4420).Specifically, step 4400 is a step in which the web core runtime accesses resources present in the abstracted Internet represented in at least one of the following: semantic language, JavaScript language, markup language, and style sheet language to execute the requested application or service (S4410), and render the rendered resource in the abstracted Internet (S4420).

다음으로, 웹 기반의 운영체제를 탑재한 단말 장치를 이용한 서비스 제공 방법은 추상화된 하드웨어 및 인터넷에 존재하는 자원 중 적어도 하나를 기초로 웹 기반의 운영체제의 웹 어플리케이션 프레임워크가 요청된 응용 또는 서비스를 실행할 수 있다(S5000).
Next, a method for providing a service using a terminal device equipped with a web-based operating system is a method for providing a service based on at least one of abstracted hardware and resources existing on the Internet. The web application framework of the web- (S5000).

도 8은 본 발명의 일 실시예에 따른 웹 기반의 운영체제를 탑재한 단말 장치를 이용한 서비스 제공을 설명하는 예시도이다.FIG. 8 is a diagram illustrating service provision using a terminal device equipped with a web-based operating system according to an embodiment of the present invention.

도 8을 참조하면, 단말 장치들(1000)에 웹 기반의 운영체제를 탑재함으로써 상기 단말 장치들(1000)은 인터넷(2000)을 통하여 인터넷에 존재하는 자원인 웹 서버들(3000)에 존재하는 RESTful, Open APIs, 웹 콘텐츠, 웹 응용, 웹 서비스, 웹 사이트 등의 자원들과 연계된 다양한 응용 또는 서비스를 제공할 수 있다. 8, by mounting a web-based operating system on the terminal devices 1000, the terminal devices 1000 can access the Internet 2000 through the RESTful , Open APIs, Web content, Web applications, Web services, Web sites, and the like.

즉, 웹 기반의 운영체제를 탑재한 단말 장치(1000)는 상기 운영체제가 제공하는 기능을 통하여 인터넷에 존재하는 다양한 자원 예를 들어, 개방형 API 기반의 서비스, 웹 콘텐츠 및 응용, 웹 서비스 및 웹 사이트를 실행할 수 있고, 상기 인터넷에 존재하는 자원을 통합한 웹 응용을 실행할 수 있다. That is, the terminal device 1000 equipped with a web-based operating system can access various kinds of resources existing on the Internet, for example, an open API-based service, web contents and applications, a web service and a web site through the functions provided by the operating system And execute a web application that integrates resources existing on the Internet.

또한, 상기 인터넷에 존재하는 자원 및 이를 통합한 응용을 웹 클라우드(3100)에 저장하거나, 웹 클라우드(3100)에서 제공되는 다양한 응용 등과 연계할 수 있고, 링크된 오픈 데이터(3200)와 의미적인 통합 및 연계를 실행할 수 있다. In addition, resources existing on the Internet and an application integrating the resources can be stored in the web cloud 3100 or can be linked with various applications provided in the web cloud 3100, And linkage.

상술한 바와 같이, 웹 운영체제를 탑재한 단말 장치(1000)는 인터넷에 존재하는 자원들을 통합 및 연계를 통하여 상기 자원을 추상화하여 사용자와 개발자에게 제공할 수 있다.
As described above, the terminal device 1000 equipped with the web operating system can abstract the resource through integration and linkage of the resources existing on the Internet and provide it to the user and the developer.

도 9는 본 발명의 일 실시예에 따른 웹 기반의 운영체제를 탑재한 단말 장치를 이용한 서비스 제공을 설명하는 예시도이다.9 is a diagram illustrating an example of providing a service using a terminal equipped with a web-based operating system according to an embodiment of the present invention.

도 9를 참조하면, 웹 기반의 운영체제를 탑재한 단말 장치들(1000) 간에는 웹 기반의 운영체제를 통하여 디바이스 클라우드(4000)를 형성할 수 있고, 디바이스 클라우드(4000)에 속한 상기 웹 기반의 운영체제를 탑재한 단말 장치들의 자원을 공유할 수 있다. 따라서, 웹 기반의 운영체제를 탑재한 단말 장치는 웹 기반의 운영체제를 탑재한 타 단말 장치들의 자원 및 타 단말 장치들의 응용 또는 서비스를 상호 활용할 수 있다.
Referring to FIG. 9, a device cloud 4000 can be formed between the terminal devices 1000 equipped with a web-based operating system through a web-based operating system, and the web-based operating system belonging to the device cloud 4000 It is possible to share the resources of the mounted terminal devices. Therefore, a terminal device equipped with a web-based operating system can mutually utilize resources of other terminal devices equipped with a web-based operating system and applications or services of other terminal devices.

상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.It will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without departing from the spirit or scope of the present invention as defined by the following claims It can be understood that

1000: 웹 기반의 운영체제를 탑재한 단말 장치
1100: 하드웨어 1200: 웹 커널
1210: 추상화 계층 1220: 마이크로 커널
1230: 웹 운영체제 시스템 서비스
1231: 웹 시스템 콜 관리자 1232: 웹 프로세스 관리자
1233: 웹 가상 메모리 관리자 1234: 웹 파일 시스템 관리자
1235: 웹 소켓/프로토콜 관리자 1236: 웹 그래픽 서브시스템
1237: 웹 클라우드 서브시스템 1240: 웹 코어 런타임
1241: 언어 처리부 1241-1: 스크립트 언어 처리부
1241-2: 마크업 언어 처리부 1241-3: 시맨틱 언어 처리부
1241-4: 스타일시트 언어 처리부 1242: 렌더링 엔진
1242-1: 웹 렌더링 엔진 1242-2: DOM 엔진
1243: 로컬 메모리 1300: 웹 어플리케이션 프레임워크
1400: 웹 데스크탑 1500: 웹 어플리케이션
2000: 인터넷 3000: 웹 서버
3100: 웹 클라우드 3200: 링크된 오픈 데이터
4000: 디바이스 클라우드
1000: Terminal device equipped with web-based operating system
1100: Hardware 1200: Web kernel
1210: abstraction layer 1220: micro kernel
1230: Web operating system service
1231: Web System Call Manager 1232: Web Process Manager
1233: Web Virtual Memory Manager 1234: Web File System Manager
1235: Web Socket / Protocol Manager 1236: Web Graphics Subsystem
1237: Web Cloud subsystem 1240: Web core runtime
1241: Language processing unit 1241-1: Script language processing unit
1241-2: Markup language processing unit 1241-3: Semantic language processing unit
1241-4: style sheet language processing unit 1242: rendering engine
1242-1: Web rendering engine 1242-2: DOM engine
1243: local memory 1300: web application framework
1400: Web Desktop 1500: Web Application
2000: Internet 3000: Web server
3100: Web Cloud 3200: Linked Open Data
4000: Device Cloud

Claims (15)

웹 기반의 운영체제를 탑재한 단말 장치에 있어서,
상기 웹 기반의 운영체제는
요청된 응용 또는 서비스의 그래픽 인터페이스를 통해 제공하는 웹 데스크탑;
상기 응용 또는 서비스가 상기 단말 장치에 독립적으로 실행되도록, 상기 단말 장치의 하드웨어 자원과 인터넷 상에 존재하고 URI(Uniform Resource Identifier)에 의해 식별되는 적어도 하나의 웹 자원(web resource)을 각각 추상화하며, 추상화된 상기 하드웨어 자원을 타 단말장치와 공유하고, 상기 웹 자원 및 상기 하드웨어 자원을 통합 제어 및 관리하는 웹 커널;
상기 단말 장치의 추상화된 하드웨어 자원, 상기 타 단말 장치의 추상화된 하드웨어 자원 및 상기 추상화된 웹 자원 중 적어도 하나를 이용하여 상기 응용을 저작하기 위한 프로세스 환경을 제공하는 웹 어플리케이션 프레임워크를 포함하는 웹 기반의 운영체제를 탑재한 단말 장치.
In a terminal device equipped with a web-based operating system,
The web-based operating system
A web desktop providing the graphical interface of the requested application or service;
Abstracts each of the hardware resources of the terminal apparatus and at least one web resource identified on the Internet and identified by a URI (Uniform Resource Identifier) so that the application or service is executed independently of the terminal apparatus, A web kernel for sharing the abstracted hardware resources with other terminal devices, and for integrally controlling and managing the web resources and the hardware resources;
A web application framework that provides a process environment for authoring the application using at least one of the abstracted hardware resources of the terminal device, the abstracted hardware resources of the other terminal device, and the abstracted web resources, Of terminal apparatuses.
청구항 1에 있어서,
상기 웹 커널은,
상기 단말 장치의 하드웨어를 추상화하는 추상화 계층;
상기 추상화 계층에 의해 추상화된 상기 단말 장치의 하드웨어를 제어하는 마이크로 커널;
개방형 데이터 교환 규격에 따라 상기 단말 장치 내 추상화된 하드웨어의 자원 및 상기 타 단말 장치 내 추상화된 하드웨어의 자원을 서로 공유하고, 상기 웹 자원을 추상화하는 웹 운영체제 시스템 서비스; 및
상기 추상화된 웹 자원을 해석하기 위한 적어도 하나의 언어 및 상기 웹 자원의 실행을 위한 적어도 하나의 실행 엔진을 제공하는 웹 코어 런타임을 포함하는 웹 기반의 운영체제를 탑재한 단말 장치.
The method according to claim 1,
The web kernel,
An abstraction layer for abstracting the hardware of the terminal device;
A micro kernel for controlling hardware of the terminal device abstracted by the abstraction layer;
A web operating system service which abstracts resources of hardware abstraction in the terminal device and hardware resources abstracted in the other terminal device according to an open data exchange standard and abstracts the web resources; And
A web core runtime that provides at least one language for interpreting the abstracted web resources and at least one execution engine for execution of the web resources.
청구항 2에 있어서,
상기 웹 운영체제 시스템 서비스는,
상기 단말 장치 및 상기 타 단말 장치 중 적어도 하나로부터 요청된 시스템 콜에 의해 상기 단말 장치의 추상화된 하드웨어 자원 및 상기 타 단말 장치의 추상화된 하드웨어 자원을 서로 공유하고, 상기 개방형 데이터 교환 규격에 따라 상기 웹 자원을 추상화하는 웹 시스템 콜 관리자;
상기 응용 또는 서비스를 프로세스 단위로 관리하고, 상기 응용 또는 서비스를 실행하기 위한 상기 프로세스를 스케줄링하는 웹 프로세스 관리자;
상기 단말 장치의 메모리, 상기 타 단말 장치의 메모리 및 웹 저장공간 중 적어도 하나에 의해 형성된 가상의 메모리를 관리하는 웹 가상 메모리 관리자;
상기 단말 장치 및 상기 타 단말 장치 중 적어도 하나로부터 요청된 디렉토리 및 파일에 대한 처리를 수행하고, 상기 가상의 메모리를 하나의 파일 시스템으로 관리하는 웹 파일 시스템 관리자;
HTTP 기반의 통신 방식, 웹 소켓 통신 프로토콜 기반의 통신 방식 및 TCP/IP 이외의 통신 방식 간의 통신 방식의 변환을 통하여 상기 단말 장치와 상기 타 단말 장치간의 네트워크 또는 상기 단말 장치 및 상기 웹 자원 간의 네트워크 연결을 위한 웹 소켓/프로토콜 관리자;
상기 단말 장치와 상기 타 단말 장치간 또는 상기 단말 장치와 상기 추상화된 웹 자원간의 추상화된 그래픽 인터페이스를 제공하는 웹 그래픽 서브시스템; 및
상기 단말 장치와 인터넷 상에 존재하는 웹 클라우드를 연결하고, 상기 단말 장치가 상기 웹 클라우드를 사용할 수 있도록 인터페이스를 제공하는 웹 클라우드 서브시스템을 포함하는 웹 기반의 운영체제를 탑재한 단말 장치.
The method of claim 2,
The web service system service comprises:
The abstracted hardware resources of the terminal device and the abstracted hardware resources of the other terminal device are mutually shared by a system call requested from at least one of the terminal device and the other terminal device, Web system call managers that abstract resources;
A web process manager for managing the application or service on a per-process basis and for scheduling the process for executing the application or service;
A web virtual memory manager for managing a virtual memory formed by at least one of a memory of the terminal device, a memory of the other terminal device, and a web storage space;
A web file system manager for performing processing on a directory and a file requested from at least one of the terminal device and the other terminal device and managing the virtual memory as one file system;
A network between the terminal device and the other terminal device or a network connection between the terminal device and the web resource through a conversion of a communication method between an HTTP-based communication method, a web socket communication protocol-based communication method, and a communication method other than TCP / Web Socket / Protocol Manager for;
A web graphics subsystem for providing an abstracted graphical interface between the terminal device and the other terminal device or between the terminal device and the abstracted web resource; And
And a Web cloud subsystem for connecting the terminal device to a web cloud existing on the Internet and providing an interface for the terminal device to use the web cloud.
청구항 2에 있어서,
상기 웹 코어 런타임은,
상기 추상화된 웹 자원을 해석하기 위해, 시맨틱 언어, 자바스크립트 언어, 마크업 언어 및 스타일시트 언어 중 적어도 하나의 언어를 지원하는 언어 처리부; 및
상기 추상화된 웹 자원을 렌더링하기 위한 렌더링 엔진을 포함하는 웹 기반의 운영체제를 탑재한 단말 장치.
The method of claim 2,
The web core runtime,
A language processing unit for supporting at least one of a semantic language, a JavaScript language, a markup language, and a style sheet language to interpret the abstracted web resource; And
And a rendering engine for rendering the abstracted web resources.
웹 커널, 웹 코어 런타임 및 웹 어플리케이션 프레임워크를 포함하는 웹 기반의 운영체제를 탑재한 단말 장치를 이용한 서비스 제공 방법에 있어서,
상기 웹 기반의 운영체제가 응용 또는 서비스를 요청 받는 단계;
상기 응용 또는 서비스가 상기 단말 장치의 하드웨어에 독립적으로 실행되도록, 상기 웹 커널이 상기 단말 장치의 하드웨어 자원과 인터넷 상에 존재하고 URI(Uniform Resource Identifier)에 의해 식별되는 웹 자원(web resource) 중 적어도 하나를 추상화하며, 상기 웹 코어 런타임이 상기 추상화된 웹 자원을 해석 및 실행하는 단계; 및
상기 웹 어플리케이션 프레임워크가 상기 단말 장치의 추상화된 하드웨어의 자원, 상기 웹 기반의 운영체제를 탑재한 타 단말 장치 내 추상화된 하드웨어의 자원 및 상기 추상화된 웹 자원 중 적어도 하나를 이용하여 상기 요청된 응용 또는 서비스를 실행하는 단계를 포함하는 웹 기반의 운영체제를 탑재한 단말 장치를 이용한 서비스 제공 방법.
A method for providing a service using a terminal equipped with a web-based operating system including a web kernel, a web core runtime, and a web application framework,
Receiving the application or service from the web-based operating system;
Wherein the web kernel includes at least one of a hardware resource of the terminal device and a web resource that is present on the Internet and identified by a URI (Uniform Resource Identifier) so that the application or service is executed independently of the hardware of the terminal device Abstracting one, the web core runtime interpreting and executing the abstracted web resource; And
Wherein the web application framework uses at least one of abstracted hardware resources of the terminal device, resources of the abstracted hardware loaded in the web-based operating system in the other terminal device, and the abstracted web resources, A method of providing a service using a terminal device equipped with a web-based operating system including a step of executing a service.
청구항 5에 있어서,
상기 웹 기반의 운영체제가 상기 응용 또는 서비스를 요청 받는 단계 이전에,
상기 단말 장치 내 사전 설정된 정보에 따라 상기 단말 장치의 하드웨어를 체크하는 단계; 및
상기 단말 장치가 상기 웹 기반의 운영체제를 구동하고, 상기 응용 또는 서비스의 요청에 대기하는 단계를 더 포함하는 웹 기반의 운영체제를 탑재한 단말 장치를 이용한 서비스 제공 방법.
The method of claim 5,
Before the web-based operating system receives the application or the service,
Checking hardware of the terminal device according to preset information in the terminal device; And
Further comprising the step of the terminal device driving the web-based operating system and waiting for the request of the application or the service.
청구항 5에 있어서,
상기 응용 또는 서비스가 상기 단말 장치의 하드웨어에 독립적으로 실행되도록 상기 웹 커널이 상기 단말 장치의 하드웨어 자원과 인터넷 상에 존재하고 URI(Uniform Resource Identifier)에 의해 식별되는 웹 자원(web resource) 중 적어도 하나를 추상화하며, 상기 웹 코어 런타임이 상기 추상화된 웹 자원을 해석 및 실행하는 단계는,
상기 웹 커널의 추상화 계층이 상기 단말 장치의 하드웨어를 추상화하는 단계;
상기 웹 커널의 마이크로 커널이 상기 요청된 응용 또는 서비스에 상응하도록 추상화된 상기 단말 장치의 하드웨어를 제어하는 단계;
상기 웹 기반의 운영체제의 웹 시스템 콜 관리자가 상기 단말 장치 및 상기 타 단말 장치 중 적어도 하나로부터 요청된 시스템 콜에 따라 상기 단말 장치의 추상화된 하드웨어 자원 및 상기 타 단말 장치의 추상화된 하드웨어 자원을 서로 공유하고, 상기 웹 자원을 추상화하는 단계; 및
상기 웹 기반의 운영체제의 웹 운영체제 시스템 서비스를 통해 상기 웹 코어 런타임이 상기 추상화된 웹 자원을 해석 및 실행하는 단계를 포함하는 웹 기반의 운영체제를 탑재한 단말 장치를 이용한 서비스 제공 방법.
The method of claim 5,
Wherein the web kernel includes at least one of hardware resources of the terminal device and web resources identified by a URI (Uniform Resource Identifier) on the Internet such that the application or service is executed independently of the hardware of the terminal device Wherein the step of the web core runtime interpreting and executing the abstracted web resource comprises:
Abstracting the hardware of the terminal device by the abstraction layer of the web kernel;
Controlling the hardware of the terminal device abstracted so that the microkernel of the web kernel corresponds to the requested application or service;
Wherein the web system call manager of the web-based operating system shares abstracted hardware resources of the terminal apparatus and abstracted hardware resources of the other terminal apparatuses according to a system call requested from at least one of the terminal apparatus and the other terminal apparatuses Abstracting the web resources; And
And analyzing and executing the abstracted web resources by the web core runtime through the web operating system service of the web based operating system.
청구항 7에 있어서,
상기 웹 코어 런타임이 상기 추상화된 웹 데이터를 해석 및 실행하는 단계는,
상기 웹 코어 런타임이 시맨틱 언어, 자바스크립트 언어, 마크업 언어 및 스타일시트 언어 중 적어도 하나의 언어로 표현된 상기 추상화된 웹 자원을 해석하는 단계; 및
상기 웹 코어 런타임이 상기 추상화된 웹 자원을 렌더링하여 영상을 생성하는 단계를 포함하는 웹 기반의 운영체제를 탑재한 단말 장치를 이용한 서비스 제공 방법.
The method of claim 7,
Wherein the step of the web core runtime interpreting and executing the abstracted web data comprises:
Interpreting the abstracted web resource represented by the web core runtime in at least one of a semantic language, a JavaScript language, a markup language, and a style sheet language; And
And the web core runtime rendering the abstracted web resource to generate an image. The method for providing a service using a terminal equipped with a web-based operating system.
삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete
KR1020110135837A 2011-12-15 2011-12-15 Terminal apparatus having operating system based on web and method for providing service using thereof KR101907660B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110135837A KR101907660B1 (en) 2011-12-15 2011-12-15 Terminal apparatus having operating system based on web and method for providing service using thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110135837A KR101907660B1 (en) 2011-12-15 2011-12-15 Terminal apparatus having operating system based on web and method for providing service using thereof

Publications (2)

Publication Number Publication Date
KR20130068564A KR20130068564A (en) 2013-06-26
KR101907660B1 true KR101907660B1 (en) 2018-12-06

Family

ID=48864162

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110135837A KR101907660B1 (en) 2011-12-15 2011-12-15 Terminal apparatus having operating system based on web and method for providing service using thereof

Country Status (1)

Country Link
KR (1) KR101907660B1 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015130021A1 (en) * 2014-02-27 2015-09-03 엘지전자 주식회사 Digital device and method for processing application thereon
KR102277258B1 (en) 2014-02-27 2021-07-14 엘지전자 주식회사 Digital device and method of processing application thereof
KR20160000911A (en) * 2014-06-25 2016-01-06 엔트릭스 주식회사 Method for providing of cloud service, computer readable storage medium storing web application for the same, cloud service system and apparatus usint the same
KR101630088B1 (en) * 2014-12-18 2016-06-13 한양대학교 산학협력단 Method and apparatus for monitoring life-cycle of virtual machine
KR102341376B1 (en) * 2019-11-27 2021-12-21 주식회사 가토랩 Apparatus for Layer switching of Deep Learning Private Cloud Service

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100017461A1 (en) 2008-07-16 2010-01-21 Google Inc. Method and system for executing applications using native code modules

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100017461A1 (en) 2008-07-16 2010-01-21 Google Inc. Method and system for executing applications using native code modules

Also Published As

Publication number Publication date
KR20130068564A (en) 2013-06-26

Similar Documents

Publication Publication Date Title
El-Kassas et al. Taxonomy of cross-platform mobile applications development approaches
WO2018228211A1 (en) Application conversion method, apparatus and device
US11816492B2 (en) Third party integration of plugins and widgets
AU2008206688B2 (en) Method and system for creating IT-oriented server-based web applications
US8832181B2 (en) Development and deployment of mobile and desktop applications within a flexible markup-based distributed architecture
US11042387B2 (en) Deploying cross-platform applications on mobile devices with native and web components
US20140082511A1 (en) Method and system for emulating desktop software applications in a mobile communication network
US11341589B2 (en) Method and system for providing a cooperative working environment that facilitates management of property
KR101907660B1 (en) Terminal apparatus having operating system based on web and method for providing service using thereof
US20150317172A1 (en) Generating a replacement binary for emulation of an application
CN103092599A (en) Software develop kit
US20170017380A1 (en) Mobile enabling a web application developed without mobile rendering capabilities
Svaton et al. HPC-as-a-Service via HEAppE Platform
CN113806008A (en) Cluster access method and device, electronic equipment and readable storage medium
Caglar et al. Model-driven performance estimation, deployment, and resource management for cloud-hosted services
JP6055366B2 (en) Virtual Web server program and function substitution method
CN106663007B (en) Method for operating tool in working environment and machine using the method
Mikkonen et al. Creating a mobile web application platform: the lively kernel experiences
KR20110103888A (en) System for accessing and sharing user defined contents and method of the same
TWM511643U (en) A data centralized management system base on AJAX website
CN114647438A (en) Method, device, medium and computing equipment for generating and loading file package
CN117707531A (en) Small program development, compiling and running system based on uni-app
CN112306324A (en) Information processing method, apparatus, device and medium
Nithiyanantham et al. CROSS PLATFORM APPLICATION DEVELOPMENT WITH COMPATIBLE GUI SOLUTIONS
CN115695402A (en) External link generation method, external link generation device, content access system, content access device and storage medium

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right