1460719793-b266c2c3-4724-41d3-a3c9-32298ff90271

What is claimed is:

1. A method for forwarding a discrete data message from an initial destination to a forwarding destination within a network, comprising the steps of:
sending the discrete message to the initial destination; and
determining that a user at the initial destination desires for the message to be forwarded to a user specified forwarding destination.
2. The method of claim 1, further including the step of:
requesting activation of a forwarding feature.
3. The method of claim 1, further including the step of:
forwarding the discrete message on to the specified forwarding destination.
4. The method of claim 1, further including the step of:
validating the discrete message as a valid message for the forwarding destination.
5. The method of claim 1, wherein the initial destination is associated with a user profile, wherein the network includes a Switching Center (SC) and a Location Register (LR), and further including the step of requesting activation of the forwarding feature further comprises the steps of:
sending an activation feature code and the forwarding destination from the initial destination to the SC;
sending a message requesting activation of the forwarding feature and the forwarding destination from the SC to the LR; and
updating the user profile in the LR to indicate the forwarding feature is activated.
6. The method of claim 5, further including the step of:
validating the forwarding destination as a valid destination for delivering a discrete message.
7. The method of claim 5, further including the step of sending a confirmation message from the SC to the initial destination, wherein the confirmation message indicates the forwarding feature is activated.
8. The method of claim 1, wherein the initial destination is associated with a user profile, wherein the network includes a Switching Center (SC) and a Location Register (LR), and wherein the step of requesting activation of a forwarding feature further comprising the steps of:
marking the forwarding feature as activated in the user profile; and
storing the forwarding destination.
9. The method of claim 8, further including the step of:
validating the forwarding destination as a valid destination for delivering a discrete message.
10. The method of claim 8, further including the step of:
downloading the user profile from the LR to the SC.
11. The method of claim 1, wherein the discrete message is a Short Message Service (SMS) message.
12. The method of claim 1, wherein the forwarding destination is a telephone number.
13. The method of claim 1, wherein the forwarding destination is a network address.
14. The method of claim 1, wherein the network includes a Message Center (MC), and wherein the step of sending the discrete message to the initial destination further comprises the step of sending a SMS Delivery Point-To-Point Invoke message including the initial destination to the MC.
15. The method of claim 1, further comprising the steps of:
providing the forwarding destination; and
sending the discrete message to the forwarding destination.
16. The method of claim 1, wherein the step of determining that the forwarding feature is activated further includes the step of:
determining that the forwarding feature is unconditionally activated.
17. The method of claim 16, further comprising the steps of:
providing the forwarding destination; and
sending the discrete message to the forwarding destination.
18. The method of claim 1, wherein the step of determining that the forwarding feature is activated further includes the step of:
determining that the forwarding feature is activated when the initial destination is busy.
19. The method of claim 18, further comprising the steps of:
providing the forwarding destination; and
sending the discrete message to the forwarding destination.
20. The method of claim 1,wherein the step of determining that the forwarding feature is activated further includes the step of.
determining that the forwarding feature is activated when the initial destination is not responding.
21. The method of claim 20, further comprising the steps of:
providing the forwarding destination; and
sending the discrete message to the forwarding destination.
22. A method for forwarding a discrete data message from an initial destination to a forwarding destination within a network, comprising the steps of:
sending the discrete message to the initial destination wherein the discrete message is a Short Message Service (SMS) message; and
determining that a user at the initial destination desires for the message to be forwarded to a user specified forwarding destination.
23. The method of claim 22, further comprising the step of:
requesting activation of a forwarding feature.
24. The method of claim 22, further comprising the step of:
forwarding the discrete message on to the specified forwarding destination.
25. The method of claim 22, further comprising the step of:
validating the discrete message as a valid message for the forwarding destination.
26. The method of claim 22, further comprising the steps of:
providing the forwarding destination;
sending the discrete message to the forwarding destination, wherein the initial destination is associated with a user profile, wherein the network includes a Switching Center SC and a Location Register (LR), and wherein the step of requesting activation of a forwarding feature further comprises the steps of:
sending an activation feature code and the forwarding destination from the initial destination to the SC;
sending a message requesting activation of the forwarding feature and the forwarding destination from the SC to the LR; and
updating the user profile in the LR to indicate the forwarding feature is activated.
27. The method of claim 26, further including the step of:
validating the forwarding destination as a valid destination for delivering a discrete message.
28. The method of claim 22, further comprising the steps of:
providing the forwarding destination;
sending the discrete message to the forwarding destination, wherein the initial destination is associated with a user profile, wherein the network includes a Switching Center (SC) and a Location Register (LR), and wherein the step of requesting activation of a forwarding feature further comprising the steps of:
marking the forwarding feature as activated in the user profile; and
storing the forwarding destination.
29. The method of claim 28, further including the step of:
validating the forwarding destination as a valid destination for delivering a discrete message.
30. A method for forwarding a discrete data message from an initial destination to a forwarding destination within a network, comprising the steps of:
requesting activation of a forwarding feature;
sending the discrete message to the initial destination;
determining that a user at the initial destination desires for the message to be forwarded to a user specified forwarding destination, wherein the initial destination is associated with a user profile, wherein the network includes a Switching Center (SC) and a Location Register (LR), and wherein the step of requesting activation of a forwarding feature further comprising the steps of:
marking the forwarding feature as activated in the user profile;
storing the forwarding destination;
downloading the user profile from the LR to the SC;
providing the forwarding destination; and
forwarding the discrete message on to the specified forwarding destination.
31. The method of claim 30, further including the step of:
validating the forwarding destination as a valid destination for delivering a discrete message.
The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

1. Method of partitioning a computer program (10) situated on a first processing site (1), the program containing subprograms (SP11, SP12, SP13) able to transfer information, characterised in that it includes:
a step of automatic determination (E310, E320, E327), for at least one of said subprograms (SP11, SP12, SP13), of data (QE, QS, TPS_TOT) representing the transfer of at least part of the information processed by said subprogram, said automatic determination step comprising:
a substep of modifying (E310) the source code (210) of said computer program (10), substep during which are inserted in the source code (210) of at least one subprogram (SP11, SP12, SP13) of said computer program (10):
first lines of instructions (L421) making it possible, when they are executed (E327), to obtain and store a reference (SP_CALLER) of a subprogram calling said subprogram; and
second lines of instructions (L425, L429) making it possible, when they are executed (E327), to obtain and store the total of the data (QE, QS, TPS_TOT) representing the information received or transferred by said subprogram;

a substep of compiling (E320) said modified code (210) and generating a modified program; and
a substep of obtaining said representative data (QE, QS, TPS_TOT) by means of at least one execution (E327) of said modified program;
and a step (E350) of allocating said subprogram to a second processing site (2, 3) according to said data (QE, QS, TPS_TOT).
2. Partitioning method according to claim 1, characterised in that said substep (E310) of modifying the source code (210) replaces, in the source code of at least one subprogram (SP11, SP12, SP13) of said computer program (10), the calls to low-level functions (221, 222, 223) by lines of instructions (L423, L424, L425) making it possible, when they are executed, to obtain and store if the data transferred by said subprogram are situated on a distant storage site (2, 3).
3. Partitioning method according to claim 1, characterised in that said representative data (QE, QS, TPS_TOT) are obtained statistically, after at least two executions of said modified computer program.
4. Partitioning method according to claim 1, characterised in that said data represent the quantity (QE, QS) of said part of the information processed by said subprogram.
5. Partitioning method according to claim 1, characterised in that said data represent the transfer time (TPS_TOT) of said part of the information processed by said subprogram.
6. Partitioning method according to claim 1, characterised in that said data (QE, QS, TPS TOT) represent characteristics of a transmission channel between said first processing site (1) and said second processing site (2, 3).
7. Partitioning method according to claim 6, characterised in that said data representing the transmission channel are chosen from amongst latency, bandwidth, error rate, the mean load on the transmission channel and at least one value dependent on a protocol for communicating said part of the information between said first processing site and said second processing site (2, 3).
8. Partitioning method according to claim 1, characterised in that said allocation step (E350) is performed so as to minimise, by analysis of said representative data (QE, QS, TPS_TOT), the transfer of information between the first processing site (1) and said second processing site (2, 3).
9. Device for partitioning a computer program (10) situated on a first processing site (1), the program containing subprograms (SP11, SP12, SP13) able to transfer information, characterised in that it has:
means of automatic determination, for at least one of said subprograms (SP11, SP12, SP13), of data (QE, QS, TPS_TOT) representing the transfer of at least part of the information processed by said subprogram, said automatic determination means including:
means (2010) of modifying the source code (210) of said computer program (10), ), said means being adapted to insert in the source code (210) of at least one sub-program (SP11, SP12, SP13) of said computer program (10):
first lines of instructions (L421) making it possible, when executed (E327), to obtain and store a reference (SP_CALLER) of a subprogram calling said subprogram; and
second lines of instructions (L425, L429) making it possible, when executed (E327), to obtain and store the total of the data (QE, QS, TPS_TOT) representing the information received or transferred by said subprogram;

means (2020) of compiling said modified code (210) and generating a modified program; and
means (2030) adapted to obtain said representative data (QE, QS, TPS_TOT) by at least one execution (E327) of said modified program.

and means of allocating said subprogram to a second processing site (2, 3) according to said data (QE, QS, TPS_TOT).
10. Partitioning device according to claim 9, characterised in that said means (2010) of modifying the source code (210) replace, in the source code of at least one subprogram (SP11, SP12, SP13) of said computer program (10), the calls to low-level functions (221, 222, 223) by lines of instructions (L423, L424, L425) making it possible, when executed, to obtain and store if the data transferred by said subprogram are stored on a distant storage site (2, 3).
11. Partitioning device according to claim 9, characterised in that said means adapted to obtain said representative data (QE, QS, TPS_TOT) operate statistically, after at least two executions of said modified computer program.
12. Partitioning device according to claim 9, characterised in that it is adapted to consider data representing the quantity (QE, QS) of said part of the information processed by said subprogram.
13. Partitioning device according to claim 9, characterised in that it is adapted to consider data representing the transfer time (TPS TOT) for said part of the information processed by said subprogram.
14. Partitioning device according to claim 9, characterised in that it is adapted to consider data (QE, QS, TPS_TOT) representing characteristics of a transmission channel between said first processing site and said second processing site (2, 3).
15. Partitioning device according to claim 14, characterised in that it is adapted to consider data representing the transmission channel chosen from amongst latency, passband, error rate, the mean load on the transmission channel and at least one value dependent on a protocol for communicating said part of the information between said first processing site and said second processing site (2, 3).
16. Partitioning device according to claim 9, characterised in that said allocation means are adapted to minimise, by analysis of said representative data (QE, QS, TPS_TOT), the transfer of information between the first processing site (1) and the second processing site (2, 3).
17. Partitioning device according to claim 9, characterised in that the automatic determination and allocation means are incorporated in:
a central unit (100),
a read only memory (102) containing the instructions relating to the implementation of the partitioning; and
a random access memory (103) containing registers adapted to record variables modified during the execution of said instructions.
18. Computer, characterised in that it has means adapted to implement the method according to any one of claims 1 to 8.
19. Computer, characterised in that it includes the device according to any one of claims 9 to 17.
20. An information storage medium which can be read by a computer or by a microprocessor storing instructions of a computer program, making it possible to implement a partitioning method according to any one of claims 1 to 8.
21. The information storage according to claim 20, characterised in that it is removable.