KR102287522B1 - User computer device and method to share resources with external device - Google Patents
User computer device and method to share resources with external device Download PDFInfo
- Publication number
- KR102287522B1 KR102287522B1 KR1020190112284A KR20190112284A KR102287522B1 KR 102287522 B1 KR102287522 B1 KR 102287522B1 KR 1020190112284 A KR1020190112284 A KR 1020190112284A KR 20190112284 A KR20190112284 A KR 20190112284A KR 102287522 B1 KR102287522 B1 KR 102287522B1
- Authority
- KR
- South Korea
- Prior art keywords
- virtual machine
- memory
- space
- resource sharing
- computer device
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
- G07C1/00—Registering, indicating or recording the time of events or elapsed time, e.g. time-recorders for work people
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer And Data Communications (AREA)
Abstract
본 발명의 실시 예에 따른 네트워크를 통해 자원 공유 네트워크 서버와 통신하는 사용자 컴퓨터 장치는 메모리, 불휘발성 저장 매체, 네트워크를 통해 근태 관리 서버와 통신하되, 근태 관리 서버로부터의 퇴근 알람 신호에 기반하여 커맨드를 생성하는 스크립터, 그리고 스크립터로부터의 커맨드에 응답하여 메모리의 일부 메모리 공간 및 불휘발성 저장 매체의 일부 저장 공간을 점유하는 가상 머신을 생성하는 하이퍼바이저를 포함한다. 스크립터는 자원 공유 네트워크 서버에 가상 머신의 생성을 알린 후, 자원 공유 네트워크 서버로부터 자원 요청 신호를 수신할 때 메모리의 일부 메모리 공간 및 불휘발성 저장 매체의 일부 저장 공간을 적어도 부분적으로 자원 공유 네트워크 서버와 공유하도록 가상 머신을 제어한다.A user computer device communicating with a resource sharing network server through a network according to an embodiment of the present invention communicates with the time and attendance management server through a memory, a nonvolatile storage medium, and a network, but based on a command based on an leave alarm signal from the time and attendance management server and a hypervisor that creates a virtual machine that occupies some memory space in the memory and some storage space in the nonvolatile storage medium in response to a command from the scripter. After notifying the resource sharing network server of the creation of the virtual machine, the scripter, when receiving a resource request signal from the resource sharing network server, at least partially allocates some memory space in the memory and some storage space in the nonvolatile storage medium with the resource sharing network server Control the virtual machine to share.
Description
본 발명은 네트워크 시스템에 관한 것으로, 좀 더 구체적으로는 외부 장치와 자원들을 공유하는 사용자 컴퓨터 장치 및 방법에 관한 것이다.The present invention relates to a network system, and more particularly, to a user computer device and method for sharing resources with an external device.
공용 네트워크(public network), 사설 네트워크(private network) 등과 같은 네트워크는 복수의 컴퓨터 장치들을 연결하며, 그러한 컴퓨터 장치들은 네트워크를 통해 상호 간 통신할 수 있다. 또한, 컴퓨터 장치들은 네트워크를 통해 일종의 컴퓨터 장치인 서버에 연결되며, 특정 작업들을 요청할 수 있다.A network, such as a public network, a private network, and the like, connects a plurality of computer devices, and such computer devices may communicate with each other through the network. In addition, computer devices are connected to a server, which is a kind of computer device, through a network, and can request specific tasks.
서버는 이렇듯 컴퓨터 장치들로부터 수신되는 요청뿐만 아니라, 필요에 따라 다양한 신호들 및/또는 데이터를 처리한다. 이에 따라 서버는 집약적인 처리 기능을 가지며, 이를 위해 상대적으로 많은 자원들을 포함할 수 있다. 그러나 처리하는 데에 더 방대한 자원들이 소요되는 작업을 위해 좀 더 높은 사양을 갖는 서버가 요구될 수 있으며, 이에 계속적으로 대응하여 더 많은 자원들을 갖는 서버를 제공하는 것은 서버 제공자에게 상당한 부담이 된다.The server processes various signals and/or data as needed, as well as requests received from these computer devices. Accordingly, the server has an intensive processing function and may include a relatively large number of resources for this purpose. However, a server having a higher specification may be required for a task that requires more extensive resources to process, and providing a server having more resources in response to this may be a significant burden on the server provider.
한편, 처리할 작업량이 방대할 때 때 작업량을 다수의 컴퓨타 장치들에 분산시켜 공동으로 처리함으로써 효율을 높일 수 있게 하는 분산 처리 시스템이 주목받고 있다.On the other hand, when the amount of work to be processed is huge, a distributed processing system capable of increasing efficiency by distributing the amount of work to a plurality of computer devices and processing it jointly is attracting attention.
위 기재된 내용은 오직 본 발명의 기술적 사상들에 대한 배경 기술의 이해를 돕기 위한 것이며, 따라서 그것은 본 발명의 기술 분야의 당업자에게 알려진 선행 기술에 해당하는 내용으로 이해될 수 없다.The above description is only for helping the understanding of the background of the technical spirit of the present invention, and therefore it cannot be understood as the content corresponding to the prior art known to those skilled in the art.
본 발명의 실시 예들은 네트워크를 통해 효율적으로 자원들을 공유할 수 있는 사용자 컴퓨터 장치 및 방법을 제공하기 위한 것이다. 예를 들면, 사용자 컴퓨터 장치는 그 사용자에 의해 이용되지 않을 것으로 예상되는 시간에 그 자원들을 공유할 수 있다.SUMMARY Embodiments of the present invention provide a user computer apparatus and method that can efficiently share resources through a network. For example, a user's computer device may share its resources at times it is not expected to be used by that user.
본 발명의 실시 예에 따른 네트워크를 통해 자원 공유 네트워크 서버와 통신하는 사용자 컴퓨터 장치는, 메모리; 불휘발성 저장 매체; 상기 네트워크를 통해 근태 관리 서버와 통신하되, 상기 근태 관리 서버로부터의 퇴근 알람 신호에 기반하여 커맨드를 생성하는 스크립터; 및 상기 스크립터로부터의 상기 커맨드에 응답하여 상기 메모리의 일부 메모리 공간 및 상기 불휘발성 저장 매체의 일부 저장 공간을 점유하는 가상 머신을 생성하는 하이퍼바이저를 포함하되, 상기 스크립터는 상기 자원 공유 네트워크 서버에 상기 가상 머신의 생성을 알린 후, 상기 자원 공유 네트워크 서버로부터 자원 요청 신호를 수신할 때 상기 메모리의 상기 일부 메모리 공간 및 상기 불휘발성 저장 매체의 상기 일부 저장 공간을 적어도 부분적으로 상기 자원 공유 네트워크 서버와 공유하도록 상기 가상 머신을 제어한다.A user computer device communicating with a resource sharing network server through a network according to an embodiment of the present invention includes: a memory; non-volatile storage media; a scripter communicating with a time and attendance management server through the network and generating a command based on an leave alarm signal from the time and attendance management server; and a hypervisor responsive to the command from the scripter to generate a virtual machine occupying a portion of the memory space of the memory and a portion of the storage space of the nonvolatile storage medium, wherein the scripter is configured to send the resource sharing network server to the server. After notifying the creation of the virtual machine, when receiving a resource request signal from the resource sharing network server, at least partially sharing the partial memory space of the memory and the partial storage space of the nonvolatile storage medium with the resource sharing network server control the virtual machine to do so.
상기 스크립터는 상기 가상 머신에 대한 인터페이스를 상기 자원 공유 네트워크 서버에 제공할 수 있다.The scripter may provide an interface for the virtual machine to the resource sharing network server.
상기 사용자 컴퓨터 장치는 복수의 처리 유닛들을 포함하는 프로세서를 더 포함할 수 있다. 상기 가상 머신은 상기 복수의 처리 유닛들의 일부를 더 점유하고, 상기 스크립터는 상기 자원 요청 신호를 수신할 때 상기 복수의 처리 유닛들의 상기 일부를 적어도 부분적으로 상기 자원 공유 네트워크 서버와 더 공유하도록 상기 가상 머신을 제어할 수 있다.The user computer device may further include a processor including a plurality of processing units. the virtual machine further occupies a portion of the plurality of processing units, and the scripter is configured to further share the portion of the plurality of processing units at least partially with the resource sharing network server when receiving the resource request signal. You can control the machine.
상기 메모리는 상기 일부 메모리 공간 외 다른 메모리 공간을 더 포함하고, 상기 일부 메모리 공간과 상기 다른 메모리 공간은 물리적 또는 논리적으로 서로 구분되고, 상기 불휘발성 저장 매체는 상기 일부 저장 공간 외 다른 저장 공간을 더 포함하고, 상기 일부 저장 공간과 상기 다른 저장 공간은 물리적 또는 논리적으로 서로 구분될 수 있다.The memory further includes a memory space other than the partial memory space, the partial memory space and the other memory space are physically or logically separated from each other, and the nonvolatile storage medium further includes a storage space other than the partial storage space. and the partial storage space and the other storage space may be physically or logically separated from each other.
상기 사용자 컴퓨터 장치는 상기 하이퍼바이저와 연관된 운영 체제 하에서 동작하는 응용 프로그램을 더 포함하고, 상기 응용 프로그램은 상기 메모리의 상기 다른 메모리 공간을 적어도 부분적으로 점유할 수 있다.The user computer device may further include an application program running under an operating system associated with the hypervisor, wherein the application program may at least partially occupy the other memory space of the memory.
상기 응용 프로그램의 상기 메모리의 상기 일부 메모리 공간 및 상기 불휘발성 저장 매체의 상기 일부 저장 공간으로의 액세스는 차단될 수 있다.Access of the application program to the partial memory space of the memory and the partial storage space of the nonvolatile storage medium may be blocked.
상기 사용자 컴퓨터 장치는 사용자 인터페이스를 더 포함하고, 상기 스크립터는 상기 사용자 인터페이스를 통해 상기 가상 머신의 생성에 대한 동의를 나타내는 사용자 입력이 수신되는 경우 상기 퇴근 알람 신호에 기반하여 상기 커맨드를 생성할 수 있다.The user computer device may further include a user interface, and the scripter may generate the command based on the leave alarm signal when a user input indicating consent to the creation of the virtual machine is received through the user interface. .
본 발명의 다른 일면은 네트워크를 통해 자원 공유 네트워크 서버와 통신하는 사용자 컴퓨터 장치의 동작 방법에 관한 것이다. 상기 사용자 컴퓨터 장치는 메모리 및 불휘발성 저장 매체를 포함하고, 상기 방법은 상기 네트워크를 통해 근태 관리 서버와 통신하여 상기 근태 관리 서버로부터 퇴근 알람 신호를 수신하는 단계; 상기 퇴근 알람 신호에 기반하여 상기 메모리의 일부 메모리 공간 및 상기 불휘발성 저장 매체의 일부 저장 공간을 점유하는 가상 머신을 생성하는 단계; 상기 자원 공유 네트워크 서버에 상기 가상 머신의 생성을 알리는 단계; 및 상기 자원 공유 네트워크 서버로부터 자원 요청 신호가 수신될 때 상기 가상 머신에 의해 점유된 상기 메모리의 상기 일부 메모리 공간 및 상기 불휘발성 저장 매체의 상기 일부 저장 공간을 적어도 부분적으로 상기 자원 공유 네트워크 서버와 공유하는 단계를 포함한다.Another aspect of the present invention relates to a method of operating a user computer device that communicates with a resource sharing network server through a network. The user computer device includes a memory and a nonvolatile storage medium, and the method includes: receiving a leave-off alarm signal from the time and attendance management server by communicating with the time and attendance management server through the network; generating a virtual machine occupying a partial memory space of the memory and a partial storage space of the nonvolatile storage medium based on the leave alarm signal; informing the resource sharing network server of the creation of the virtual machine; and at least partially sharing the partial memory space of the memory occupied by the virtual machine and the partial storage space of the nonvolatile storage medium with the resource sharing network server when a resource request signal is received from the resource sharing network server including the steps of
상기 사용자 컴퓨터 장치는 복수의 처리 유닛들을 포함하는 프로세서를 더 포함하되, 상기 가상 머신은 상기 복수의 처리 유닛들의 일부를 더 점유하고, 상기 자원 공유 네트워크 서버와 공유하는 단계는 상기 자원 요청 신호가 수신될 때 상기 복수의 처리 유닛들의 상기 일부를 적어도 부분적으로 상기 자원 공유 네트워크 서버와 더 공유하는 단계를 포함할 수 있다.The user computer device further includes a processor including a plurality of processing units, wherein the virtual machine further occupies a part of the plurality of processing units, and the step of sharing with the resource sharing network server is that the resource request signal is received further sharing, at least in part, the portion of the plurality of processing units with the resource sharing network server.
상기 메모리는 상기 일부 메모리 공간 외 다른 메모리 공간을 더 포함하고, 상기 일부 메모리 공간과 상기 다른 메모리 공간은 물리적 또는 논리적으로 서로 구분되고, 상기 불휘발성 저장 매체는 상기 일부 저장 공간 외 다른 저장 공간을 더 포함하고, 상기 일부 저장 공간과 상기 다른 저장 공간은 물리적 또는 논리적으로 서로 구분될 수 있다.The memory further includes a memory space other than the partial memory space, the partial memory space and the other memory space are physically or logically separated from each other, and the nonvolatile storage medium further includes a storage space other than the partial storage space. and the partial storage space and the other storage space may be physically or logically separated from each other.
상기 가상 머신은 하이퍼바이저에 의해 생성되며, 상기 하이퍼바이저와 연관된 운영 체제 하에서 동작하는 응용 프로그램은 상기 메모리의 상기 다른 메모리 공간을 적어도 부분적으로 점유할 수 있다.The virtual machine is created by a hypervisor, and an application program running under an operating system associated with the hypervisor may at least partially occupy the other memory space of the memory.
상기 응용 프로그램의 상기 메모리의 상기 일부 메모리 공간 및 상기 불휘발성 저장 매체의 상기 일부 저장 공간으로의 액세스는 차단될 수 있다.Access of the application program to the partial memory space of the memory and the partial storage space of the nonvolatile storage medium may be blocked.
상기 사용자 컴퓨터 장치는 사용자 인터페이스를 더 포함하고, 상기 가상 머신을 생성하는 단계는 상기 사용자 인터페이스를 통해 상기 가상 머신의 생성에 대한 동의를 나타내는 사용자 입력이 수신되는 경우 상기 퇴근 알람 신호에 기반하여 상기 가상 머신을 생성하는 단계를 포함할 수 있다.The user computer device may further include a user interface, and the step of creating the virtual machine may include: when a user input indicating consent to the creation of the virtual machine is received through the user interface, the virtual machine is based on the leave alarm signal. It may include creating a machine.
본 발명의 다른 실시 예에 따른 네트워크를 통해 자원 공유 네트워크 서버와 통신하는 사용자 컴퓨터 장치는 상기 네트워크와 연결된 통신기; 메모리; 불휘발성 저장 매체; 및 상기 통신기, 메모리, 및 불휘발성 저장 매체를 제어하도록 구성되는 적어도 하나의 프로세서를 포함하되, 상기 적어도 하나의 프로세서는, 상기 네트워크를 통해 근태 관리 서버와 통신하되, 상기 근태 관리 서버로부터의 퇴근 알람 신호에 기반하여 커맨드를 생성하고; 상기 커맨들에 응답하여 상기 메모리의 일부 메모리 공간 및 상기 불휘발성 저장 매체의 일부 저장 공간을 점유하는 가상 머신을 생성하고; 상기 자원 공유 네트워크 서버에 상기 가상 머신의 생성을 알리고; 상기 자원 공유 네트워크 서버로부터 자원 요청 신호를 수신할 때 상기 메모리의 상기 일부 메모리 공간 및 상기 불휘발성 저장 매체의 상기 일부 저장 공간을 상기 자원 공유 네트워크 서버와 공유하도록 상기 가상 머신을 제어하도록 구성될 수 있다.A user computer device communicating with a resource sharing network server through a network according to another embodiment of the present invention includes: a communicator connected to the network; Memory; non-volatile storage media; and at least one processor configured to control the communicator, the memory, and a non-volatile storage medium, wherein the at least one processor communicates with the time and attendance server through the network, and an leave alarm from the time and attendance management server generate a command based on the signal; create a virtual machine occupying a portion of the memory space of the memory and a portion of the storage space of the nonvolatile storage medium in response to the commands; informing the resource sharing network server of the creation of the virtual machine; and when receiving a resource request signal from the resource sharing network server, control the virtual machine to share the partial memory space of the memory and the partial storage space of the nonvolatile storage medium with the resource sharing network server. .
본 발명의 실시 예들에 따르면, 네트워크를 통해 효율적으로 자원들을 공유할 수 있는 사용자 컴퓨터 장치 및 방법이 제공된다.According to embodiments of the present invention, a user computer apparatus and method for efficiently sharing resources over a network are provided.
도 1은 본 발명의 실시 예에 따른 네트워크 시스템을 보여주는 블록도이다.
도 2는 도 1의 제 1 내지 제 k 사용자 컴퓨터 장치들 중 어느 하나의 실시 예를 보여주는 블록도이다.
도 3은 도 2의 사용자 컴퓨터 장치의 하드웨어 계층과 소프트웨어 계층의 구성 요소들을 보여주는 블록도이다.
도 4는 도 3의 응용 애플리케이션과 가상 머신이 점유하는 하드웨어 자원들을 설명하기 위한 도면이다.
도 5는 본 발명의 실시 예에 따른 네트워크 시스템의 동작 방법의 실시 예를 보여주는 순서도이다.
도 6은 사용자 컴퓨터 장치의 자원을 클라우드 서버와 공유하는 방법의 실시 예를 보여주는 순서도이다.
도 7은 사용자 컴퓨터 장치의 자원을 클라우드 서버와 공유하는 방법의 다른 실시 예를 보여주는 순서도이다.
도 8은 도 6의 S220단계 및 도 7의 S330단계에서 가상 머신을 생성하는 방법의 실시 예를 보여주는 순서도이다.1 is a block diagram showing a network system according to an embodiment of the present invention.
FIG. 2 is a block diagram illustrating an embodiment of any one of the first to kth user computer devices of FIG. 1 .
3 is a block diagram showing components of a hardware layer and a software layer of the user computer device of FIG. 2 .
FIG. 4 is a diagram for explaining hardware resources occupied by an application application and a virtual machine of FIG. 3 .
5 is a flowchart illustrating an embodiment of a method of operating a network system according to an embodiment of the present invention.
6 is a flowchart illustrating an embodiment of a method of sharing a resource of a user computer device with a cloud server.
7 is a flowchart illustrating another embodiment of a method of sharing a resource of a user computer device with a cloud server.
8 is a flowchart illustrating an embodiment of a method of creating a virtual machine in step S220 of FIG. 6 and step S330 of FIG. 7 .
이하, 본 발명에 따른 바람직한 실시 예를 첨부한 도면을 참조하여 상세히 설명한다. 하기의 설명에서는 본 발명에 따른 동작을 이해하는데 필요한 부분만이 설명되며 그 이외 부분의 설명은 본 발명의 요지를 모호하지 않도록 하기 위해 생략될 것이라는 것을 유의하여야 한다. 또한 본 발명은 여기에서 설명되는 실시 예에 한정되지 않고 다른 형태로 구체화될 수도 있다. 단지, 여기에서 설명되는 실시 예는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 본 발명의 기술적 사상을 용이하게 실시할 수 있을 정도로 상세히 설명하기 위하여 제공되는 것이다.Hereinafter, preferred embodiments according to the present invention will be described in detail with reference to the accompanying drawings. It should be noted that in the following description, only parts necessary for understanding the operation according to the present invention are described, and descriptions of other parts will be omitted so as not to obscure the gist of the present invention. Also, the present invention is not limited to the embodiments described herein and may be embodied in other forms. However, the embodiments described herein are provided to explain in detail enough to easily implement the technical spirit of the present invention to those of ordinary skill in the art to which the present invention pertains.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "간접적으로 연결"되어 있는 경우도 포함한다. 여기에서 사용된 용어는 특정한 실시예들을 설명하기 위한 것이며 본 발명을 한정하기 위한 것이 아니다. 명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. "X, Y, 및 Z 중 적어도 어느 하나", 그리고 "X, Y, 및 Z로 구성된 그룹으로부터 선택된 적어도 어느 하나"는 X 하나, Y 하나, Z 하나, 또는 X, Y, 및 Z 중 둘 또는 그 이상의 어떤 조합 (예를 들면, XYZ, XYY, YZ, ZZ) 으로 해석될 수 있다. 여기에서, "및/또는"은 해당 구성들 중 하나 또는 그 이상의 모든 조합을 포함한다.Throughout the specification, when a part is "connected" with another part, this includes not only the case of being "directly connected" but also the case of being "indirectly connected" with another element interposed therebetween. . The terminology used herein is for the purpose of describing particular embodiments and not for limiting the present invention. Throughout the specification, when a part "includes" a certain element, it means that other elements may be further included, rather than excluding other elements, unless otherwise stated. “At least any one of X, Y, and Z” and “at least any one selected from the group consisting of X, Y, and Z” means one X, one Y, one Z, or two of X, Y, and Z or It can be interpreted as any combination of more (eg, XYZ, XYY, YZ, ZZ). Herein, "and/or" includes any combination of one or more of the elements.
도 1은 본 발명의 실시 예에 따른 네트워크 시스템을 보여주는 블록도이다.1 is a block diagram showing a network system according to an embodiment of the present invention.
도 1을 참조하면, 네트워크 시스템(100)은 네트워크(105), 제 1 내지 제 k 사용자 컴퓨터 장치들(111~11k), 클라우드 서버(120), 근태 관리 서버(130), 및 출입 도어 시스템(140)를 포함할 수 있다.Referring to FIG. 1 , the network system 100 includes a
네트워크 시스템(100)은 여기에 설명된 본 발명의 실시 예들에 따른 다양한 방법들을 수행하도록 동작하는 복수의 장치들, 서버들, 및/또는 소프트웨어 구성들을 포함할 수 있다. 도 1에 도시된 장치들 및/또는 서버들은 다른 방식들로 구성될 수 있으며, 장치들 및/또는 서버들에 의해 제공되는 동작들 및 서비스들은 여기에 설명된 실시 예들을 위해 결합되거나 분리될 수 있으며, 더 많은 수 혹은 더 적은 수의 장치들 및/또는 서버들에 의해 수행될 수 있다. 하나 또는 그 이상의 장치들 및/또는 서버들은 동일 혹은 상이한 기업체들에 의해 구동 및/또는 유지될 수 있다.Network system 100 may include a plurality of devices, servers, and/or software components that operate to perform various methods according to embodiments of the present invention described herein. The devices and/or servers shown in FIG. 1 may be configured in different ways, and the operations and services provided by the devices and/or servers may be combined or separated for the embodiments described herein. and may be performed by more or fewer devices and/or servers. One or more devices and/or servers may be run and/or maintained by the same or different entities.
네트워크(105)는 제 1 내지 제 k 사용자 컴퓨터 장치들(111~11k), 클라우드 서버(120), 및 근태 관리 서버(130)와 같은 네트워크 시스템(100) 내 구성 요소들을 연결한다. 네트워크(105)는 공용 네트워크, 적어도 하나의 사설 네트워크, 유선 네트워크, 무선 네트워크, 다른 적절한 타입의 네트워크, 및 그것들의 조합들 중 적어도 하나를 포함할 수 있다. 실시 예들에서, 네트워크(105)는 상대적으로 높은 보안 레벨을 갖는 사설 네트워크일 수 있으며, 이를 위해 방화벽과 같은 구성 요소들을 포함할 수 있다. 네트워크 시스템(100) 내 구성 요소들 각각은 유선 통신 기능 및 무선 통신 기능 중 적어도 하나를 포함할 수 있으며, 그에 따라 네트워크(105)를 통해 상호 간 통신할 수 있다.The
제 1 내지 제 k 사용자 컴퓨터 장치들(111~11k)은 예를 들면 사내의 사용자들에게 각각 할당된 컴퓨터 장치들이고, 사용자들은 제 1 내지 제 k 사용자 컴퓨터 장치들(111~11k)을 이용하여 다양한 업무들을 수행할 수 있다. 제 1 내지 제 k 사용자 컴퓨터 장치들(111~11k)은 노멀 모드에서 사용자들이 다양한 업무들을 수행하도록 다양한 기능들을 지원할 수 있다.The first to k-th
제 1 내지 제 k 사용자 컴퓨터 장치들(111~11k) 각각은 네트워크(105)를 통해 클라우드 서버(120) 및 근태 관리 서버(130)와 통신할 수 있다. 제 1 내지 제 k 사용자 컴퓨터 장치들(111~11k) 각각은 클라우드 모드에서 그것의 자원들을 클라우드 서버(120)와 공유할 수 있다. 클라우드 서버(120)로부터의 요청에 응답하여, 제 1 내지 제 k 사용자 컴퓨터 장치들(111~11k) 각각은 그것의 메모리 공간, 저장 공간 등과 같은 자원들을 클라우드 서버(120)와 공유할 것이다. 예를 들면, 제 1 내지 제 k 사용자 컴퓨터 장치들(111~11k) 각각은 클라우드 서버(120)로부터 요청된 작업들을 공유된 자원들을 이용하여 처리하고 처리 결과를 클라우드 서버(120)에 전송할 수 있다. 실시 예들에서, 제 1 내지 제 k 사용자 컴퓨터 장치들(111~11k)은 클라우드 서버(120)와 함께 자원 공유 네트워크(resource-sharing network) 및/또는 분산 처리 시스템(distributed processing system)를 구성할 수 있다. 이때, 클라우드 모드는 근태 관리 서버(130)로부터의 제어 신호에 응답하여 트리거될 수 있다.Each of the first to kth
클라우드 서버(120)와 같은 자원 공유 네트워크 서버, 즉 제 1 내지 제 k 사용자 컴퓨터 장치들(111~11k)로부터 자원 공유를 제공받는 서버는 네트워크(105)를 통해 제 1 내지 제 k 사용자 컴퓨터 장치들(111~11k)과 통신할 수 있다. 클라우드 서버(120)는 처리가 필요한 작업들이 존재할 때, 처리될 작업들에 따라 제 1 내지 제 k 사용자 컴퓨터 장치들(111~11k)에 액세스하여 해당 자원들을 제공받을 수 있다. 각 사용자 컴퓨터 장치는 자원 공유를 위한 준비를 완료할 때 완료 신호를 클라우드 서버(120)에 전송할 수 있으며, 클라우드 서버(120)는 완료 신호를 전송한 사용자 컴퓨터 장치에 액세스하여 해당 자원들을 제공받을 수 있다.A resource sharing network server such as the
근태 관리 서버(130)는 네트워크(105)에 연결되며, 또한 출입 도어 시스템(140)과 통신할 수 있다. 근태 관리 서버(130)는 출입 도어 시스템(140)이 사용자의 퇴근을 감지할 때, 해당 사용자 컴퓨터 장치에 제어 신호를 전송하여 클라우드 모드를 트리거할 수 있다. 이에 따라, 사용자가 해당 사용자 컴퓨터 장치를 이용하지 않을 것으로 예상되는 시간에 그 자원들은 클라우드 서버(120)와 공유될 수 있으며, 따라서 사용자 컴퓨터 장치의 자원들을 효율적으로 활용할 수 있다.The time and
실시 예들에서, 근태 관리 서버(130)는 출입 도어 시스템(140)으로부터 퇴근이 감지된 사용자의 식별자를 수신할 수 있다. 이러한 경우, 근태 관리 서버(130)는 수신된 사용자 식별자에 대응하는 사용자 컴퓨터 장치를 판별하고, 판별된 사용자 컴퓨터 장치에 제어 신호를 전송하여 그것의 클라우드 모드를 트리거할 수 있다. 이를 위해, 근태 관리 서버(130)는 각 사용자 컴퓨터 장치와 그것의 사용자 식별자 사이의 매핑 관계를 저장할 수 있다. In embodiments, the time and
실시 예들에서, 근태 관리 서버(130)는 유/무선으로 출입 도어 시스템(140)과 통신할 수 있다. 실시 예들에서, 근태 관리 서버(130)는 네트워크(105)를 통해 출입 도어 시스템(140)과 연결될 수 있다.In embodiments, the time and
출입 도어 시스템(140)은 예를 들면 특정 지역 혹은 건물의 입구에 설치되어 사용자의 퇴근을 감지할 수 있다. 예를 들면, 출입 도어 시스템(140)은 스마트폰(smart phone), 웹 타블렛(web tablet), 및 다양한 방식들의 통신 기능을 지원하는 카드들과 같은 사용자들이 소지하는 오브젝트들과의 유/무선 인터렉션, 생체 인식 등의 방식들을 통해 사용자들의 퇴근을 감지할 수 있다. 실시 예들에서, 출입 도어 시스템(140)은 감지 결과에 따라 해당 사용자 식별자를 근태 관리 서버(130)에 전송할 수 있다.The
도 2는 도 1의 제 1 내지 제 k 사용자 컴퓨터 장치들 중 어느 하나의 실시 예를 보여주는 블록도이다.FIG. 2 is a block diagram illustrating an embodiment of any one of the first to kth user computer devices of FIG. 1 .
도 2를 참조하면, 사용자 컴퓨터 장치(200)는 통신기(210), 사용자 인터페이스(220), 디스플레이 장치(230), 불휘발성 저장 매체(240), 적어도 하나의 프로세서(250), 및 시스템 메모리(260)를 포함할 수 있다.Referring to FIG. 2 , the
통신기(210)는 프로세서(250)의 제어에 응답하여 네트워크(105, 도 1 참조)를 통해 외부 장치와 통신하도록 구성된다. 통신기(210)는 외부 서버, 외부 단말 등과 신호들을 송신 및 수신할 수 있다. 통신기(210)는 인터넷에 접속하도록 구성될 수 있다. 통신기(210)는 유선 및/또는 무선 통신을 수행할 수 있으며, 여기서 무선 통신은 와이파이(Wi-Fi) 통신, 블루투스(Bluetooth), LTE D2D 통신, NFC, 마그네틱 보안 전송 통신, 지그비(ZigBee) 통신, 적외선(IrDA, infrared Data Association) 통신, UWB(Ultra Wideband) 통신, Ant+ 통신, 및/또는 그와 유사한 것 중 적어도 하나의 통신 프로토콜을 이용한 통신을 포함할 수 있다.The
사용자 인터페이스(220)는 사용자로부터 사용자 컴퓨터 장치(200) 혹은 프로세서(250)의 동작들을 제어하기 위한 사용자 입력들을 수신한다.The
디스플레이 장치(230)는 컴퓨터 장치(200) 혹은 프로세서(250)에 의해 처리되는 정보를 디스플레이한다. 실시 예들에서, 디스플레이 장치(230)는 액정 디스플레이(liquid crystal display), 유기 발광 다이오드(organic light-emitting diode) 디스플레이, 플렉서블 디스플레이(flexible display), 등 중 적어도 하나를 포함할 수 있다.The
불휘발성 저장 매체(240)는 플래시 메모리(flash memory type), 하드 디스크 (hard disk type), 멀티미디어 카드(multimedia card) 등 전원이 차단되더라도 저장된 데이터를 유지하는 저장 매체들 중 적어도 하나를 포함할 수 있다. 불휘발성 저장 매체(240)는 프로세서(250)의 제어에 응답하여 데이터를 기입하고 독출하도록 구성된다.The
프로세서(250)는 통신기(210), 사용자 인터페이스(220), 디스플레이 장치(230), 불휘발성 저장 매체(240), 및 시스템 메모리(260)의 동작들을 제어한다. 프로세서(250)는 복수의 처리 유닛들(혹은 복수의 코어들)을 포함하여 연산, 비교 등의 다양한 처리들을 수행할 수 있다. 예를 들면, 프로세서(250)는 중앙 처리 장치(Central Processing Unit: CPU)를 포함할 수 있다. 예를 들면, 프로세서(250)는 그래픽 처리 장치(Graphic Processing Unit: GPU)를 더 포함할 수 있다.The
프로세서(250)는 프로그램 코드들(또는, 소프트웨어)을 불휘발성 저장 매체(240)로부터 시스템 메모리(260)에 로딩하고, 로딩된 프로그램 코드들을 실행할 수 있다.The
시스템 메모리(260)는 램(Random Access Memory, RAM), 롬(Read Only Memory, ROM), 및 다른 타입들의 컴퓨터에 의해 판독 가능한 저장 매체들 중 적어도 하나를 포함할 수 있다. 도 2에서, 시스템 메모리(260)는 프로세서(250)와 분리된 구성 요소로서 도시되어 있으나, 이는 예시적인 것으로 시스템 메모리(260)의 적어도 일부는 프로세서(250) 내에 포함될 수 있다. 시스템 메모리(260)는 필요에 따라 복수의 구성 요소들로 분리될 수 있다. 시스템 메모리(260)는 프로세서(250)의 워킹 메모리 및/또는 버퍼 메모리로서 제공될 수 있다.The
프로세서(250)는 운영 체제(270)를 시스템 메모리(260)에 로딩하고, 로딩된 운영 체제(270)를 실행하여 사용자 컴퓨터 장치(200)의 제반 동작들을 제어할 수 있다. 운영 체제(270)는 통신기(210), 사용자 인터페이스(220), 디스플레이 장치(230), 불휘발성 저장 매체(240), 및 시스템 메모리(260)에 대한 인터페이스를 운영 체제(270) 하에서 동작하는 응용 프로그램들에 제공할 수 있다. 이와 같이, 운영 체제(270)는 응용 프로그램들의 기반 환경을 제공한다.The
또한, 프로세서(250)는 스크립터(280)를 시스템 메모리(260)에 로딩하고, 로딩된 스크립터(280)를 실행할 수 있다. 프로세서(250)에 의해 실행되는 스크립터(280)는, 하이퍼바이저에 커맨드를 전송하여 가상 머신을 생성할 수 있다. 또한, 스크립터(280)는 클라우드 서버(120)와의 인터렉션 기능을 갖는다. 스크립터(280)는 가상 머신의 생성이 완료될 때 클라우드 서버(120)에 완료 신호를 제공하며, 이후 클라우드 서버(120)로부터 자원 요청 신호를 수신할 때 가상 머신이 점유하는 자원들을 클라우드 서버(120)와 공유할 수 있다. 프로세서(250)는 도 3의 소프트웨어 계층의 구성 요소들에 대응하는 프로그램 코드들을 시스템 메모리(260)에 로딩하고, 로딩된 프로그램 코드들을 수행하여 해당 동작들을 수행할 수 있다.In addition, the
도 3은 도 2의 사용자 컴퓨터 장치의 하드웨어 계층과 소프트웨어 계층의 구성 요소들을 보여주는 블록도이다.3 is a block diagram showing components of a hardware layer and a software layer of the user computer device of FIG. 2 .
도 3을 참조하면, 도 2의 사용자 컴퓨터 장치(200)는 하드웨어 계층과 소프트웨어 계층을 포함할 수 있다. 먼저 하드웨어 계층은 프로세서 자원들(301), 메모리(302), 및 불휘발성 저장 매체(303)를 포함할 수 있다. 프로세서 자원들(301)은 도 2의 프로세서(250)의 복수의 처리 유닛들(혹은 복수의 코어들)을, 메모리(302)는 도 2의 시스템 메모리(260)를, 불휘발성 저장 매체(303)는 도 2의 불휘발성 저장 매체(240)로서 제공될 수 있다.Referring to FIG. 3 , the
소프트웨어 계층은 운영 체제(311), 하이퍼바이저(312), 응용 애플리케이션(313), 스크립터(314), 및 가상 머신(315)을 포함할 수 있다.The software layer may include an
운영 체제(311)는 도 2의 운영 체제(270)로서 기능할 수 있다. 운영 체제(311)는 컴퓨터 장치(200)의 제반 동작들을 제어할 수 있으며, 소프트웨어 계층의 구성 요소들, 예를 들면 응용 애플리케이션(313), 스크립터(314), 및 가상 머신(315)의 기반 환경을 제공할 수 있다.
운영 체제(311)는 가상 머신(315)을 생성하는 하이퍼바이저(312)를 지원할 수 있다. 하이퍼바이저(312)는 운영 체제(311)에 포함될 수 있다. 하이퍼바이저(312)는 프로세서 자원들(301)의 일부, 메모리(302)의 일부 메모리 공간, 및 불휘발성 저장 매체(303)의 일부 저장 공간과 같은 사용자 컴퓨터 장치(200)의 자원들을 점유하는 가상 머신(315)을 생성 및 관리할 수 있다. 필요에 따라, 생성된 가상 머신(315) 상에서 애플리케이션(APP)이 구동될 수도 있다.
응용 애플리케이션(313)은 운영 체제(311) 하에서 동작한다. 응용 애플리케이션(313)은 사용자가 컴퓨터 장치를 이용하여 다양한 업무들을 수행할 수 있도록 다양한 기능들을 지원할 수 있다.The
스크립터(314)는 운영 체제(311) 하에서 동작할 수 있다. 스크립터(314)는 클라우드 서버(120, 도 1 참조) 및 근태 관리 서버(130, 도 1 참조)와 인터렉션할 수 있다. 운영 체제(311)는 통신기(210)에 대한 인터페이스를 스크립터(314)에 제공하며, 이에 따라 스크립터(314)는 운영 체제(311)를 통해 클라우드 서버(120) 및 근태 관리 서버(130)와 통신할 수 있다.The
스크립터(314)는 근태 관리 서버(130)로부터 퇴근 알람 신호를 수신하고, 수신된 퇴근 알람 신호에 기반하여 하이퍼바이저(312)에 커맨드를 전송함으로써 하이퍼바이저(312)로 하여금 가상 머신(315)을 생성하도록 할 수 있다. 생성된 가상 머신(315)은 위 설명된 바와 같이 프로세서 자원들(301)의 일부, 메모리(302)의 일부 메모리 공간, 및 불휘발성 저장 매체(303)의 일부 저장 공간과 같은 사용자 컴퓨터 장치(200)의 자원들을 점유할 수 있다. 실시 예들에서, 스크립터(314)에 의해 생성되는 위 커맨드는 점유될 프로세서 자원들(301)의 일부, 메모리(302)의 일부 메모리 공간, 및 불휘발성 저장 매체(303)의 일부 저장 공간을 나타내는 데이터를 포함할 수 있으며, 하이퍼바이저(312)는 그러한 커맨드에 따라 해당 자원들을 점유하는 가상 머신(315)을 생성할 수 있다. The
하이퍼바이저(312)는 가상 머신(315)의 생성이 완료될 때 완료 알람을 스크립터(314)에 제공할 수 있으며, 스크립터(314)는 완료 알람에 응답하여 클라우드 서버(120)에 완료 신호를 전송할 수 있다. 이때, 완료 신호는 가상 머신(315)이 점유한 자원들에 대한 데이터를 포함할 수 있다. 이는, 클라우드 서버(120)로 하여금 가상 머신(315)이 점유한 자원들에 적응적으로 이후 요청할 작업들을 결정할 수 있도록 한다.The
이후, 스크립터(314)는 클라우드 서버(120)에 가상 머신(315)에 대한 인터페이스를 제공할 수 있다. 클라우드 서버(120)는 스크립터(314)를 통해 가상 머신(315)에 작업들을 요청할 수 있다. 이에 따라, 스크립터(314)는 클라우드 서버(120)로부터 자원 요청 신호가 수신되면 가상 머신(315)이 점유한 위 자원들을 적어도 부분적으로 클라우드 서버(120)와 공유하도록 가상 머신(315)을 제어할 수 있다. 실시 예들에서, 클라우드 서버(120)는 자원 요청 신호의 전송으로 특정 작업들을 요청할 수 있으며, 이러한 경우 스크립터(314)는 클라우드 서버(120)로부터 요청된 작업들을 가상 머신(315)에 제공하고, 가상 머신(315)은 그것이 점유하는 자원들을 적어도 부분적으로 이용하여 클라우드 서버(120)로부터 요청된 작업들을 처리하고, 처리 결과를 스크립터(314)를 통해 클라우드 서버(120)에 전송할 수 있다.Thereafter, the
실시 예들에서, 스크립터(314)는 사용자 인터페이스(220, 도 2 참조)를 통해 사용자로부터 가상 머신(315)의 생성에 대한 동의 혹은 거부를 나타내는 사용자 입력을 수신할 수 있다. 이러한 실시 예에서, 스크립터(314)는 가상 머신(315)의 생성에 대한 동의를 나타내는 사용자 입력이 수신되는 경우에 한해 근태 관리 서버(130)로부터의 퇴근 알람 신호에 기반하여 커맨드를 생성함으로써 하이퍼바이저(312)로 하여금 가상 머신(315)을 생성하도록 할 수 있다.In embodiments, the
도 3에서, 가상 머신(315)은 하이퍼바이저(312)와 구분된 구성 요소로 도시되어 있다. 그러나, 이는 예시적인 것으로, 가상 머신(315)은 하이퍼바이저(312)에 포함될 수도 있다. 실시 예들에서, 스크립터(314)는 하이퍼바이저(312)를 통해 가상 머신(315)과 인터렉션할 수 있다.In FIG. 3 , the
본 발명의 실시 예에 따르면, 사용자가 퇴근한 후에 사용자 컴퓨터 장치(200)는 그 자원들을 클라우드 서버(120)와 공유한다. 이에 따라, 사용자가 사용자 컴퓨터 장치(200)를 이용하지 않을 것으로 예상되는 시간에 그 자원들을 클라우드 서버(120)와 공유할 수 있으며, 따라서 사용자 컴퓨터 장치(200)의 자원들을 효율적으로 활용할 수 있다.According to an embodiment of the present invention, after the user leaves work, the
본 발명의 실시 예에 따르면, 사용자 컴퓨터 장치(200)는 가상 머신(315)을 생성하고, 생성된 가상 머신(315)이 점유하는 자원들을 클라우드 서버(120)와 공유한다. 이에 따라, 설사 사용자 컴퓨터 장치(200)에서 다양한 원인들에 의해 예상치 못한 동작들이 수행되어 그 동작들이 점유하는 사용자 컴퓨터 장치(200)의 자원들이 증가한다 하더라도, 가상 머신(315)이 이미 자원들을 점유하였으므로 가상 머신(315)에 의해 점유된 자원들은 안정적으로 클라우드 서버(120)와 공유될 수 있다.According to an embodiment of the present invention, the
도 4는 도 3의 응용 애플리케이션과 가상 머신이 점유하는 하드웨어 자원들을 설명하기 위한 도면이다.FIG. 4 is a diagram for explaining hardware resources occupied by an application application and a virtual machine of FIG. 3 .
도 4를 참조하면, 프로세서 자원들(301)은 물리적 및/또는 논리적으로 구분된 제 1 처리 유닛들(PU1) 및 제 2 처리 유닛들(PU2)을 포함하며, 메모리(302)는 물리적 및/또는 논리적으로 구분된 제 1 메모리 공간(MS1) 및 제 2 메모리 공간(MS2)을 포함하며, 불휘발성 저장 매체(303)는 물리적 및/또는 논리적으로 구분된 제 1 저장 공간(SS1) 및 제 2 저장 공간(SS2)을 포함할 수 있다.Referring to FIG. 4 ,
응용 애플리케이션(313)은 프로세서 자원들(301)의 제 1 처리 유닛들(PU1) 및 메모리(302)의 제 1 메모리 공간(MS1)을 적어도 부분적으로 점유하며, 반면 가상 머신(315)은 프로세서 자원들(301)의 제 2 처리 유닛들(PU2) 및 메모리(302)의 제 2 메모리 공간(MS2)을 적어도 부분적으로 점유할 수 있다. 응용 애플리케이션(313)은 프로세서 자원들(301)의 제 2 처리 유닛들(PU2) 및 메모리(302)의 제 2 메모리 공간(MS2)에 액세스할 수 없다. 예를 들면, 운영 체제(311)는 응용 애플리케이션(313)이 제 2 처리 유닛들(PU2)과 제 2 메모리 공간(MS2)에 액세스하는 것을 차단할 수 있다. 또한, 응용 애플리케이션(313)은 불휘발성 저장 매체(303)의 제 1 저장 공간(SS1)에 액세스할 수 있으며, 제 2 저장 공간(SS2)으로 액세스할 수 없다. 가상 머신(315)에 의해 점유되는 자원들인 제 2 처리 유닛들(PU2), 제 2 메모리 공간(MS2), 및 제 2 저장 공간(SS2)은 다양한 종류들의 응용 애플리케이션(313)에 의해 액세스될 수 없으므로, 향상된 보안 레벨을 가질 수 있다.The
스크립터(314)는 클라우드 서버(120)에 가상 머신(315)에 대한 인터페이스를 제공한다. 이에 따라 스크립터(314)는 클라우드 서버(120)로부터의 요청에 응답하여 가상 머신(315)이 점유한 자원들을 적어도 부분적으로 클라우드 서버(120)와 공유하도록 한다.The
도 5는 본 발명의 실시 예에 따른 네트워크 시스템의 동작 방법의 실시 예를 보여주는 순서도이다.5 is a flowchart illustrating an embodiment of a method of operating a network system according to an embodiment of the present invention.
도 5를 참조하면, S110단계에서, 출입 도어 시스템(140)은 사용자의 퇴근을 감지한다. S120단계에서, 출입 도어 시스템(140)은 퇴근 감지에 응답하여 사용자 식별자를 근태 관리 서버(130)에 전송한다.Referring to FIG. 5 , in step S110 , the
S130단계에서, 근태 관리 서버(130)는 사용자 식별자에 대응하는 사용자 컴퓨터 장치(200)를 판별하고, 판별된 사용자 컴퓨터 장치(200)에 퇴근 알람 신호를 전송한다.In step S130 , the time and
퇴근 알람 신호에 기반하여 사용자 컴퓨터 장치(200)는 클라우드 모드를 수행할 수 있다. 예를 들면, 사용자 컴퓨터 장치(200)는 퇴근 알람 신호가 수신된 후 소정의 시간(예를 들면 1 시간)이 경과할 때 클라우드 모드를 수행할 수 있다.Based on the leave alarm signal, the
S140단계에서, 클라우드 모드 시 사용자 컴퓨터 장치(200)는 그것의 자원들, 예를 들면 프로세서, 메모리, 및 불휘발성 저장 매체 각각의 일부를 점유하는 가상 머신을 생성한다. S150단계에서, 사용자 컴퓨터 장치(200)는 가상 머신의 생성이 완료될 때, 완료 신호를 클라우드 서버(120)에 전송한다. 이때, 완료 신호는 가상 머신이 점유한 자원들에 대한 데이터를 포함할 수 있다. 이는, 클라우드 서버(120)로 하여금 가상 머신이 점유한 자원들에 적응적으로 이후 요청할 작업들을 결정할 수 있도록 한다.In step S140 , in the cloud mode, the
S160단계에서, 클라우드 서버(120)는 완료 신호에 따라 데이터베이스에 가상 머신에 해당하는 자원들을 등록한다.In step S160 , the
S170단계에서, 클라우드 서버(120)는 자원 요청 신호를 사용자 컴퓨터 장치(200)에 전송한다. S180단계에서, 사용자 컴퓨터 장치(200)는 가상 머신이 점유한 자원들을 클라우드 서버(120)와 공유한다. 실시 예들에서, 클라우드 서버(120)는 특정 작업들에 대한 수행 요청을 자원 요청 신호로서 사용자 컴퓨터 장치(200)에 전송할 수 있다. 사용자 컴퓨터 장치(200)의 가상 머신은 그것이 점유한 자원들을 적어도 부분적으로 이용하여 요청된 작업들을 처리하고 처리 결과를 클라우드 서버(120)에 전송할 수 있다.In step S170 , the
본 발명의 실시 예에 따르면, 사용자가 퇴근한 후에 사용자 컴퓨터 장치(200)는 그 자원들을 클라우드 서버(120)와 공유한다. 이에 따라, 사용자가 사용자 컴퓨터 장치(200)를 이용하지 않을 것으로 예상되는 시간에 그 자원들을 클라우드 서버(120)와 공유할 수 있으며, 따라서 사용자 컴퓨터 장치(200)의 자원들을 효율적으로 활용할 수 있다.According to an embodiment of the present invention, after the user leaves work, the
본 발명의 실시 예에 따르면, 사용자 컴퓨터 장치(200)는 가상 머신을 생성하고, 생성된 가상 머신이 점유한 자원들을 클라우드 서버(120)와 공유한다. 이에 따라, 설사 사용자 컴퓨터 장치(200)에서 다양한 원인들에 의해 예상치 못한 동작들이 수행되어 그 동작들이 점유하는 사용자 컴퓨터 장치(200)의 자원들이 증가한다 하더라도, 가상 머신에 의해 점유된 자원들은 안정적으로 클라우드 서버(120)와 공유될 수 있다.According to an embodiment of the present invention, the
도 6은 사용자 컴퓨터 장치의 자원을 클라우드 서버와 공유하는 방법의 실시 예를 보여주는 순서도이다.6 is a flowchart illustrating an embodiment of a method of sharing a resource of a user computer device with a cloud server.
도 5 및 도 6을 참조하면, S210단계에서, 사용자 컴퓨터 장치(200)는 근태 관리 서버(130)로부터 퇴근 알람 신호를 수신하는지 여부에 따라 S220단계를 수행한다.5 and 6 , in step S210 , the
S220단계에서, 사용자 컴퓨터 장치(200)는 퇴근 알람 신호에 기반하여 프로세서, 메모리, 및 불휘발성 저장 매체 각각의 일부를 점유하는 가상 머신을 생성한다.In step S220 , the
S230단계에서, 사용자 컴퓨터 장치(200)는 클라우드 서버(120)로부터 자원 요청 신호가 수신될 때, 점유하는 자원들을 적어도 부분적으로 클라우드 서버(120)와 공유하도록 가상 머신을 제어한다.In step S230 , when a resource request signal is received from the
도 7은 사용자 컴퓨터 장치의 자원을 클라우드 서버와 공유하는 방법의 다른 실시 예를 보여주는 순서도이다.7 is a flowchart illustrating another embodiment of a method of sharing a resource of a user computer device with a cloud server.
도 5 및 도 7을 참조하면, S320단계, S330단계, 및 S340단계는 도 6의 S210단계, S220단계, 및 S230단계와 마찬가지로 설명된다. 이하, 중복되는 설명은 생략된다.5 and 7 , steps S320, S330, and S340 are described in the same manner as steps S210, S220, and S230 of FIG. 6 . Hereinafter, overlapping descriptions will be omitted.
사용자 컴퓨터 장치(200)는 사용자 인터페이스(220, 도 2 참조)를 통해 사용자로부터 가상 머신의 생성에 대한 동의 혹은 거부(또는, 사용자 컴퓨터 장치의 일부 자원들의 공유에 대한 동의 혹은 거부)를 나타내는 사용자 입력을 수신할 수 있다. 이러한 실시 예에서, S310단계와 같이, 사용자 컴퓨터 장치(200)는 가상 머신의 생성에 대한 동의를 나타내는 사용자 입력이 수신될 때 S320단계를 수행할 수 있다.The
도 8은 도 6의 S220단계 및 도 7의 S330단계에서 가상 머신을 생성하는 방법의 실시 예를 보여주는 순서도이다.8 is a flowchart illustrating an embodiment of a method of creating a virtual machine in step S220 of FIG. 6 and step S330 of FIG. 7 .
도 3 및 도 8을 참조하면, S410단계에서, 스크립터(314)에서 퇴근 알람 신호에 기반하여 커맨드가 생성되고 생성된 커맨드는 하이퍼바이저(312)에 제공된다. 커맨드는 점유될 프로세서 자원들, 메모리 공간, 및 저장 공간을 나타내는 데이터를 포함할 수 있으며,3 and 8 , in step S410 , a command is generated based on the leave alarm signal in the
S420단계에서, 하이퍼바이저(312)에서 커맨드에 응답하여 프로세서, 메모리, 및 불휘발성 저장 매체 각각의 일부를 점유하는 가상 머신(315)을 생성한다.In operation S420 , the
비록 특정 실시 예들 및 적용 례들이 여기에 설명되었으나, 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정들 및 변형들이 가능하다.Although specific embodiments and application examples have been described herein, these are only provided to help a more general understanding of the present invention, and the present invention is not limited to the above embodiments, and those of ordinary skill in the art to which the present invention pertains Various modifications and variations are possible from this substrate as it grows.
따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.Therefore, the spirit of the present invention should not be limited to the described embodiments, and not only the claims to be described later, but also all those with equivalent or equivalent modifications to the claims will be said to belong to the scope of the spirit of the present invention. .
111~11k: 제 1 내지 제 k 사용자 컴퓨터 장치들
120: 클라우드 서버
130: 근태 관리 서버
140: 출입 도어 시스템111-11k: first to kth user computer devices
120: cloud server
130: time and attendance management server
140: access door system
Claims (14)
서로 구분된 제 1 메모리 공간 및 제 2 메모리 공간을 포함하는 메모리;
서로 구분된 제 1 저장 공간 및 제 2 저장 공간을 포함하는 불휘발성 저장 매체;
상기 네트워크를 통해 근태 관리 서버와 통신하되, 상기 근태 관리 서버로부터의 퇴근 알람 신호에 기반하여 커맨드를 생성하는 스크립터; 및
상기 스크립터로부터의 상기 커맨드에 응답하여 상기 메모리의 제 1 메모리 공간 및 상기 불휘발성 저장 매체의 제 1 저장 공간을 적어도 부분적으로 점유하는 가상 머신을 생성하는 하이퍼바이저; 및
상기 하이퍼바이저와 연관된 운영 체제 하에서 동작하되 상기 제 2 메모리 공간 및 상기 제 2 저장 공간을 적어도 부분적으로 점유하는 응용 프로그램을 포함하되,
상기 응용 프로그램의 상기 제 1 메모리 공간 및 상기 제 1 저장 공간으로의 액세스는 차단되고,
상기 가상 머신은 상기 퇴근 알람 신호가 수신된 후에 생성되며,
상기 스크립터는 상기 자원 공유 네트워크 서버에 상기 가상 머신의 생성을 알린 후, 상기 자원 공유 네트워크 서버로부터 자원 요청 신호를 수신할 때 상기 메모리의 상기 제 1 메모리 공간 및 상기 불휘발성 저장 매체의 상기 제 1 저장 공간을 적어도 부분적으로 상기 자원 공유 네트워크 서버와 공유하도록 상기 가상 머신을 제어하는 사용자 컴퓨터 장치.A user computer device communicating with a resource sharing network server over a network, comprising:
a memory comprising a first memory space and a second memory space separated from each other;
a nonvolatile storage medium including a first storage space and a second storage space separated from each other;
a scripter communicating with a time and attendance management server through the network and generating a command based on an leave alarm signal from the time and attendance management server; and
a hypervisor responsive to the command from the scripter to create a virtual machine that at least partially occupies a first memory space of the memory and a first storage space of the nonvolatile storage medium; and
an application program operating under an operating system associated with the hypervisor that at least partially occupies the second memory space and the second storage space;
access of the application program to the first memory space and the first storage space is blocked;
The virtual machine is created after the leave alarm signal is received,
After notifying the resource sharing network server of the creation of the virtual machine, the scripter is configured to, when receiving a resource request signal from the resource sharing network server, the first memory space of the memory and the first storage of the nonvolatile storage medium and controlling the virtual machine to at least partially share space with the resource sharing network server.
상기 스크립터는 상기 가상 머신에 대한 인터페이스를 상기 자원 공유 네트워크 서버에 제공하는 사용자 컴퓨터 장치.The method of claim 1,
The scripter provides an interface for the virtual machine to the resource sharing network server.
복수의 처리 유닛들을 포함하는 프로세서를 더 포함하되,
상기 가상 머신은 상기 복수의 처리 유닛들의 일부를 더 점유하고,
상기 스크립터는 상기 자원 요청 신호를 수신할 때 상기 복수의 처리 유닛들의 상기 일부를 적어도 부분적으로 상기 자원 공유 네트워크 서버와 더 공유하도록 상기 가상 머신을 제어하는 사용자 컴퓨터 장치.The method of claim 1,
Further comprising a processor comprising a plurality of processing units,
the virtual machine further occupies a portion of the plurality of processing units,
wherein the scripter controls the virtual machine to further share, at least in part, the part of the plurality of processing units with the resource sharing network server when receiving the resource request signal.
사용자 인터페이스를 더 포함하고,
상기 스크립터는 상기 사용자 인터페이스를 통해 상기 가상 머신의 생성에 대한 동의를 나타내는 사용자 입력이 수신되는 경우 상기 퇴근 알람 신호에 기반하여 상기 커맨드를 생성하는 사용자 컴퓨터 장치.The method of claim 1,
further comprising a user interface;
The scripter generates the command based on the leave alarm signal when a user input indicating consent to the creation of the virtual machine is received through the user interface.
상기 사용자 컴퓨터 장치는 서로 구분된 제 1 메모리 공간 및 제 2 메모리 공간을 포함하는 메모리, 그리고 서로 구분된 제 1 저장 공간 및 제 2 저장 공간을 포함하는 불휘발성 저장 매체를 포함하고,
상기 방법은,
응용 프로그램이 상기 제 2 메모리 공간 및 상기 제 2 저장 공간을 적어도 부분적으로 점유하도록 제어하되, 상기 응용 프로그램의 상기 제 1 메모리 공간 및 상기 제 1 저장 공간으로의 액세스는 차단되는, 단계;
상기 네트워크를 통해 근태 관리 서버와 통신하여 상기 근태 관리 서버로부터 퇴근 알람 신호를 수신하는 단계;
상기 퇴근 알람 신호에 기반하여 상기 메모리의 상기 제 1 메모리 공간 및 상기 불휘발성 저장 매체의 상기 제 1 저장 공간을 적어도 부분적으로 점유하는 가상 머신을 생성하는 단계;
상기 자원 공유 네트워크 서버에 상기 가상 머신의 생성을 알리는 단계; 및
상기 자원 공유 네트워크 서버로부터 자원 요청 신호가 수신될 때 상기 가상 머신에 의해 점유된 상기 메모리의 상기 제 1 메모리 공간 및 상기 불휘발성 저장 매체의 상기 제 1 저장 공간을 적어도 부분적으로 상기 자원 공유 네트워크 서버와 공유하는 단계를 포함하는 방법.A method of operating a user computer device communicating with a resource sharing network server via a network, comprising:
The user computer device includes a memory including a first memory space and a second memory space separated from each other, and a nonvolatile storage medium including a first storage space and a second storage space separated from each other,
The method is
controlling an application program to at least partially occupy the second memory space and the second storage space, wherein access of the application program to the first memory space and the first storage space is blocked;
receiving a leave-off alarm signal from the time and attendance management server by communicating with the time and attendance management server through the network;
generating a virtual machine that at least partially occupies the first memory space of the memory and the first storage space of the nonvolatile storage medium based on the leave alarm signal;
informing the resource sharing network server of the creation of the virtual machine; and
When a resource request signal is received from the resource sharing network server, the first memory space of the memory occupied by the virtual machine and the first storage space of the non-volatile storage medium at least partially with the resource sharing network server; A method comprising the step of sharing.
상기 사용자 컴퓨터 장치는 복수의 처리 유닛들을 포함하는 프로세서를 더 포함하되,
상기 가상 머신은 상기 복수의 처리 유닛들의 일부를 더 점유하고,
상기 자원 공유 네트워크 서버와 공유하는 단계는 상기 자원 요청 신호가 수신될 때 상기 복수의 처리 유닛들의 상기 일부를 적어도 부분적으로 상기 자원 공유 네트워크 서버와 더 공유하는 단계를 포함하는 방법.9. The method of claim 8,
The user computer device further comprises a processor comprising a plurality of processing units;
the virtual machine further occupies a portion of the plurality of processing units,
The step of sharing with the resource sharing network server includes further sharing, at least in part, the portion of the plurality of processing units with the resource sharing network server when the resource request signal is received.
상기 가상 머신은 하이퍼바이저에 의해 생성되며,
상기 응용 프로그램은 상기 하이퍼바이저와 연관된 운영 체제 하에서 동작하는 방법.9. The method of claim 8,
The virtual machine is created by a hypervisor,
wherein the application program runs under an operating system associated with the hypervisor.
상기 사용자 컴퓨터 장치는 사용자 인터페이스를 더 포함하고,
상기 가상 머신을 생성하는 단계는 상기 사용자 인터페이스를 통해 상기 가상 머신의 생성에 대한 동의를 나타내는 사용자 입력이 수신되는 경우 상기 퇴근 알람 신호에 기반하여 상기 가상 머신을 생성하는 단계를 포함하는 방법.9. The method of claim 8,
The user computer device further comprises a user interface,
The generating of the virtual machine includes generating the virtual machine based on the leave alarm signal when a user input indicating consent to the creation of the virtual machine is received through the user interface.
상기 네트워크와 연결된 통신기;
서로 구분된 제 1 메모리 공간 및 제 2 메모리 공간을 포함하는 메모리;
서로 구분된 제 1 저장 공간 및 제 2 저장 공간을 포함하는 불휘발성 저장 매체; 및
상기 통신기, 메모리, 및 불휘발성 저장 매체를 제어하도록 구성되는 적어도 하나의 프로세서를 포함하되,
상기 적어도 하나의 프로세서는,
상기 적어도 하나의 프로세서에 의해 구동되는 응용 프로그램이 상기 제 2 메모리 공간 및 상기 제 2 저장 공간을 적어도 부분적으로 점유하도록 제어하되, 상기 응용 프로그램의 상기 제 1 메모리 공간 및 상기 제 1 저장 공간으로의 액세스는 차단되고;
상기 네트워크를 통해 근태 관리 서버와 통신하되, 상기 근태 관리 서버로부터의 퇴근 알람 신호에 기반하여 커맨드를 생성하고;
상기 커맨들에 응답하여 상기 메모리의 상기 제 1 메모리 공간 및 상기 불휘발성 저장 매체의 상기 제 1 저장 공간을 적어도 부분적으로 점유하는 가상 머신을 생성하고;
상기 자원 공유 네트워크 서버에 상기 가상 머신의 생성을 알리고;
상기 자원 공유 네트워크 서버로부터 자원 요청 신호를 수신할 때 상기 메모리의 상기 제 1 메모리 공간 및 상기 불휘발성 저장 매체의 상기 제 1 저장 공간을 상기 자원 공유 네트워크 서버와 적어도 부분적으로 공유하도록 상기 가상 머신을 제어하도록 구성되는 사용자 컴퓨터 장치.A user computer device communicating with a resource sharing network server over a network, comprising:
a communicator connected to the network;
a memory comprising a first memory space and a second memory space separated from each other;
a nonvolatile storage medium including a first storage space and a second storage space separated from each other; and
at least one processor configured to control the communicator, memory, and non-volatile storage medium;
The at least one processor,
controlling an application program driven by the at least one processor to at least partially occupy the second memory space and the second storage space, wherein the application program accesses the first memory space and the first storage space is blocked;
communicate with a time and attendance management server through the network, and generate a command based on an leave alarm signal from the time and attendance management server;
create a virtual machine that at least partially occupies the first memory space of the memory and the first storage space of the nonvolatile storage medium in response to the commands;
informing the resource sharing network server of the creation of the virtual machine;
controlling the virtual machine to at least partially share the first memory space of the memory and the first storage space of the nonvolatile storage medium with the resource sharing network server when receiving a resource request signal from the resource sharing network server Your computer device configured to do so.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190112284A KR102287522B1 (en) | 2019-09-10 | 2019-09-10 | User computer device and method to share resources with external device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190112284A KR102287522B1 (en) | 2019-09-10 | 2019-09-10 | User computer device and method to share resources with external device |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20210030746A KR20210030746A (en) | 2021-03-18 |
KR102287522B1 true KR102287522B1 (en) | 2021-08-09 |
Family
ID=75232287
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190112284A KR102287522B1 (en) | 2019-09-10 | 2019-09-10 | User computer device and method to share resources with external device |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102287522B1 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009265778A (en) | 2008-04-22 | 2009-11-12 | Dino Co Ltd | Virtual server |
JP5412585B2 (en) | 2010-11-12 | 2014-02-12 | 株式会社日立製作所 | Server apparatus, resource management method and program |
JP2014191642A (en) | 2013-03-27 | 2014-10-06 | Fujitsu Ltd | Attendance/leaving management system, attendance/leaving management method and attendance/leaving management program |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20040001233A (en) * | 2002-06-27 | 2004-01-07 | 주식회사 한국인식기술 | Computer use control method to use program |
KR101323858B1 (en) * | 2011-06-22 | 2013-11-21 | 한국과학기술원 | Apparatus and method for controlling memory access in virtualized system |
KR20130019698A (en) * | 2011-08-17 | 2013-02-27 | 주식회사 케이티 | Method for optimizing resource by using migration based on user's scheduler |
KR20150096286A (en) * | 2014-02-14 | 2015-08-24 | 주식회사 인피니플럭스 | Methods of Cloud BigData Analysis by using available personal computer |
-
2019
- 2019-09-10 KR KR1020190112284A patent/KR102287522B1/en active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009265778A (en) | 2008-04-22 | 2009-11-12 | Dino Co Ltd | Virtual server |
JP5412585B2 (en) | 2010-11-12 | 2014-02-12 | 株式会社日立製作所 | Server apparatus, resource management method and program |
JP2014191642A (en) | 2013-03-27 | 2014-10-06 | Fujitsu Ltd | Attendance/leaving management system, attendance/leaving management method and attendance/leaving management program |
Also Published As
Publication number | Publication date |
---|---|
KR20210030746A (en) | 2021-03-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102224760B1 (en) | Automatic application updates | |
US9130927B2 (en) | Single certificate service system and operational method thereof | |
US10261811B2 (en) | Systems and methods for contextually allocating emulation resources | |
US10136298B2 (en) | Device-to-device content delivery method through interworking with service control apparatus | |
CN107360633B (en) | Pairing connection method and device of virtual reality system and virtual reality system | |
US10908889B2 (en) | Method, user equipment, and application server for downloading application | |
US10547999B2 (en) | Data transmission method and apparatus | |
CN107612941B (en) | Authority management method, device, equipment and storage medium | |
KR20150137911A (en) | user terminal apparatus, communication system and control method thereof | |
CN110417910B (en) | Notification message sending method, device, server and storage medium | |
CN103516851B (en) | A kind of wireless product cloud test platform system | |
CN103473037A (en) | Information processing apparatus, information processing method, and program | |
CN113168333A (en) | Workflow configuration for a coordinated device environment | |
CN103561089A (en) | Virtual machine desktop log-in method, device and system | |
KR102287522B1 (en) | User computer device and method to share resources with external device | |
CN102185881A (en) | Household digital equipment wireless multi-protocol space sharing storage manager and method | |
CN105144073A (en) | Removable storage device identity and configuration information | |
CN108112052B (en) | Terminal network sharing method and device, air conditioner and storage medium | |
US9191445B2 (en) | Systems and methods for managing emulation sessions | |
US9870217B2 (en) | Toolkit event configuration of applets on a card computing device with installation parameters | |
CN114726905A (en) | Method, device, equipment and storage medium for accessing Tbox network to Android system | |
US10732591B2 (en) | Apparatus and method for establishing communication between an operation terminal and a controller when only one controller is connected | |
US20150281965A1 (en) | Management server, data processing method, and program | |
KR102423755B1 (en) | Server and method for controlling packet transmission | |
US9380085B2 (en) | Server and method for providing collaboration service, and sociality management server |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E90F | Notification of reason for final refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |