# US 8,751,560 B2 · Method and device arrangement for managing a client/server environment

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 8,751,560 B2
- Document ID: US8751560B2
- Status: Granted
- Kind: B2
- Application number: 11/484,317
- Filed: 2006-07-11
- Published: 2007-03-01
- Granted: 2014-06-10
- Earliest claimed: 2005-07-12
- Assignees: Capricode Oy
- Applicants: Jarkko Oikarinen
- Inventors: Jarkko Oikarinen
- Web page: https://patentgrep.com/patent/US8751560B2

## CPC

- G06F 9/5027: {the resource being a machine, e.g. CPUs, Servers, Terminals}
- H04L 41/045: comprising client-server management architectures
- G06F 2209/509: Offload
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

The invention relates to a method and data transfer arrangement for executing consecutive instructions in a client device (21) in a mobile device management server-client device environment (22, 21). The invention also relates to an instruction execution module utilized in the implementation of the method. In the procedure according to the invention, the device management server (22) forms the instructions to be executed in the client device (21) into an instruction sequence (200), which is transmitted to the client device (21). The instruction execution module in the client device breaks up the instruction sequence into command sequences and control structures. The instruction execution module executes the conditional commands belonging to the instruction sequence and specified by the control structures individually without the help of the device management server (22). After the execution of all the instructions, the client device (21) sends a message describing the success of the execution to the device management server.

## Claims

### Claim 1

A wireless device management method for changing a data structure in a mobile client device by executing consecutive instructions in a mobile client device, the method comprising:
forming at least one device management instruction sequence by a device management server, the instruction sequence including:
command sequences including single commands to be executed in the mobile client device, and;
control structures containing conditional commands to be executed in the mobile client device;
transmitting the device management instruction sequence via a wireless link from the device management server to the mobile client device;
executing the device management command sequences and control structures of the instruction sequence by an instruction execution module of the mobile client device independently of the device management server; and
generating new command sequences by the instruction execution module of the mobile client device by executing the control structures in a case where the command sequences in the instruction sequence transmitted to the mobile client device cannot be executed or if the result of executing the command sequences in the instruction sequence transmitted to the mobile client device is unacceptable, whereby the device management instruction sequence is executed on the mobile client device as the new command sequence.

### Claim 2 (depends on 1)

The method according to claim 1, wherein:
the device management instruction sequence is transmitted as one entity to the mobile client device;
the instruction execution module of the mobile client device executes the device management instructions belonging to the instruction sequence, and
the instruction execution module of the mobile client device sends a message describing the success of the execution of the device management instruction sequence to the device management server.

### Claim 3 (depends on 2)

The method according to claim 2, wherein the instruction execution module of the mobile client device generates a fault report if even one of the device management instructions contained by the device management instruction sequence remains unexecuted or if the result of the execution does not comply with predetermined criteria.

### Claim 4 (depends on 3)

The method according to claim 3, wherein the device management instruction sequence includes at least one control structure, which includes one or more of the following conditional commands: IF, THEN, ELSE, WHILE, DO-UNTIL, FOREACH or CALL.

### Claim 5 (depends on 2)

The method according to claim 2, wherein the device management instruction sequence includes at least one control structure, which includes one or more of the following conditional commands: IF, THEN, ELSE, WHILE, DO-UNTIL, FOREACH or CALL.

### Claim 6 (depends on 1)

The method according to claim 1, wherein the device management instruction sequence includes at least one control structure, which includes one or more of the following conditional commands: IF, THEN, ELSE, WHILE, DO-UNTIL, FOREACH or CALL.

### Claim 7

A wireless device management arrangement for changing a data structure in a mobile client device, comprising:
a device management server; and
the mobile client device;
in which data transfer arrangement for executing device management instructions in the mobile client device:
the device management server is configured to form at least one device management instruction sequence, the device management instruction sequence including:
command sequences with single commands, and;
control structures containing conditional commands;
the device management server is configured to send the formed device management instruction sequence via wireless link to the mobile client device; and
a processor unit of the mobile client device is configured to:
execute the device management instruction sequence independently of the device management server; and
generate new command sequences by executing the control structures in a case where the command sequences in the instruction sequence transmitted to the mobile client device cannot be executed or if the result of executing the command sequences in the instruction sequence transmitted to the mobile client device is unacceptable, whereby the device management instruction sequence is executed on the mobile client device as the new command sequence.

### Claim 8 (depends on 7)

The wireless device management arrangement according to claim 7, wherein:
the device management instruction sequence is configured to be transmitted as one entity to the mobile client device;
an instruction execution module of the mobile client device is configured to:
execute the instructions belonging to the device management instruction sequence in the processor unit; and
send a message describing the success of the execution to the device management server.

### Claim 9 (depends on 8)

The wireless device management arrangement according to claim 8, wherein the instruction execution module of the mobile client device is further configured to generate a fault report if even one of the instructions contained by the device management instruction sequence remains unexecuted or if the result of the execution does not comply with predetermined criteria.

### Claim 10 (depends on 9)

The device management arrangement according to claim 9, wherein the device management instruction sequence includes at least one control structure, which includes one or more of the following conditional commands: IF, THEN, ELSE, WHILE, DO-UNTIL, FOREACH or CALL.

### Claim 11 (depends on 8)

The device management arrangement according to claim 8, wherein the device management instruction sequence includes at least one control structure, which includes one or more of the following conditional commands: IF, THEN, ELSE, WHILE, DO-UNTIL, FOREACH or CALL.

### Claim 12 (depends on 7)

The wireless device management arrangement according to claim 7, wherein the device management instruction sequence includes at least one control structure, which includes one or more of the following conditional commands: IF, THEN, ELSE, WHILE, DO-UNTIL, FOREACH or CALL.

### Claim 13

A mobile client device including an instruction execution module, the mobile client device comprising:
means for receiving a device management instruction sequence transmitted by a device management server for changing a data structure in the mobile client device;
means for breaking up the device management instruction sequence into single instructions, which include either command sequences or control structures;
means for generating new command sequences in a central processing unit of the mobile client device by executing the control structures if the command sequences in the instruction sequence transmitted to the mobile client device cannot be executed or if the result of executing the command sequences in the instruction sequence transmitted to the mobile client device is unacceptable, whereby the device management instruction sequence is executed on the mobile client device as the new command sequence;
means for drawing up a message describing the success of the execution of the device management instruction sequence, and;
means for sending a message describing the success to the device management server.

### Claim 14 (depends on 13)

The mobile client device according to claim 13, further comprising:
means for receiving the device management instruction sequence as one entity from the device management server.

### Claim 15 (depends on 14)

The mobile client device according to claim 14, further comprising:
means for executing conditional commands IF, THEN, ELSE, WHILE, DO-UNTIL, FOREACH or CALL, if the conditional commands are included in the device management instruction sequence transmitted by the device management server.

### Claim 16

A mobile client device encoded with a computer program for creating an instruction execution module in the mobile client device, the computer program comprising:
computer readable code means for receiving a device management instruction sequence transmitted by a device management server;
computer readable code means for breaking up the device management instruction sequence into single instructions, which include either command sequences or control structures;
computer readable code means for generating new command sequences by utilizing the control structures if the command sequences in the instruction sequence transmitted to the client device cannot be executed or if the result of executing the command sequences in the instruction sequence transmitted to the client device is unacceptable, whereby the device management instruction sequence is executed on the mobile client device as the new command sequence;
computer readable code means for drawing up a message describing the success of the execution of the device management instruction sequence, and;
computer readable code means for sending a message describing the success to the device management server.

### Claim 17 (depends on 16)

The mobile client device according to claim 16, further comprising computer readable code means for receiving the device management instruction sequence as one entity from the device management server.

### Claim 18 (depends on 17)

The mobile client device according to claim 17, further comprising:
computer readable code means for executing conditional commands IF, THEN, ELSE, WHILE, DO-UNTIL, FOREACH or CALL, if the conditional commands are included in the instruction sequence transmitted by the device management server.
