Patents by Inventor Johan Eker

Johan Eker has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 7917913
    Abstract: A software component deployed in a distributed system includes a stub that enables the component to be used remotely. The stub can include its own proxy (or at least a sufficient description of it) that is automatically and dynamically injected to the remote environment. Thus, native proxies do not need to be included in the platform initially, and do not need to be downloaded, since marshalling methods are generated at runtime based on a blueprint in the code of the application.
    Type: Grant
    Filed: December 22, 2006
    Date of Patent: March 29, 2011
    Assignee: Telefonaktiebolaget L M Ericsson (publ)
    Inventors: Johan Eker, Jan Patrik Persson
  • Publication number: 20100262839
    Abstract: A computer-implemented method of generating tamper-protected computer program code. The method comprises obtaining a representation of the computer program code, the computer program being adapted to cause a data processing system to perform a plurality of computational tasks in a first order of execution, each computational task being represented in the representation of the computer program code by at least one program statement; obtaining a plurality of alternative orders of execution of the computational tasks; generating an executable representation of the program code adapted to cause a data processing system to select a randomized order of execution from the plurality of alternative orders of execution and to execute the computational tasks in the selected randomized order of execution.
    Type: Application
    Filed: June 25, 2008
    Publication date: October 14, 2010
    Inventors: Johan Eker, Björn Johansson, Carl Von Platen
  • Publication number: 20100251378
    Abstract: A computer-implemented method of tamper-protecting a computer program, the method comprising: processing an input representation of the computer program to identify a function call for causing a data processing system to continue execution of the computer program at a predetermined entry point memory address when said computer program is executed by a data processing system; replacing the identified function call with a modified function call, wherein the modified function call includes an algebraic expression for causing the data processing system to compute the entry point memory address when said computer program is executed by the data processing system.
    Type: Application
    Filed: December 19, 2007
    Publication date: September 30, 2010
    Applicant: Telefonaktiebolaget L M Ericsson (publ)
    Inventors: Johan Eker, Björn Johansson, Carl von Platen
  • Publication number: 20100199354
    Abstract: A computer-implemented method of tamper-protecting computer program code. The method comprises: obtaining an input representation of the computer program code; identifying a conditional program statement for causing a data processing system to selectively execute one of at least a first and a second sets of program statements when said computer program is executed by a data processing system; replacing said identified conditional program statement and the first and second sets of program statements with a set of transformed program statements to obtain obfuscated program code, wherein the set of transformed program statements is adapted to cause the data processing system to execute at least a part of each of the transformed program statements when said computer program is executed by the data processing system.
    Type: Application
    Filed: November 20, 2007
    Publication date: August 5, 2010
    Inventors: Johan Eker, Björn Johansson, Carl von Platen
  • Publication number: 20100186024
    Abstract: A remote execution agent, having low-latency access to the platform, receives from a remote application, across a communication channel imposing a round-trip delay, a plurality of invocation control directives. The remote execution agent invokes operations for execution on the platform in response to the invocation control directives, and aggregates results from the operations, returning the aggregated results to the application. In this manner, overhead such as communication round-trip delay, context switching, and the like, is reduced, compared to the application sending separate operation invocation requests to the platform and receiving the results of each. The remote execution agent manages operation results, such as passing results from a prior operation as parameters for a later one. In some embodiments, the invocation control directives include conditional operation invocation and branching.
    Type: Application
    Filed: January 21, 2009
    Publication date: July 22, 2010
    Applicant: Telefonaktiebolaget LM Ericsson (publ)
    Inventors: Johan Eker, Jan Patrik Persson, Carl von Platen
  • Publication number: 20100106977
    Abstract: In an advantageous approach to securing type safety in software platform accesses made by software applications, this disclosure teaches the inclusion of cryptographically signed type information in software applications, for authentication and registration by a software platform. With this approach, a given software application is permitted to make platform accesses (e.g., data type instantiations, memory accesses, method invocations, etc.) only in conformance with the registered type information.
    Type: Application
    Filed: November 7, 2008
    Publication date: April 29, 2010
    Inventors: Jan Patrik Persson, Johan Eker, Bjorn Johansson
  • Publication number: 20090172338
    Abstract: A method, system and program for generating an updated memory image including updated program code to be loaded into a storage medium that has stored thereon a current memory image including a current program code version. The method comprises receiving an updated input code comprising a number of segments, wherein each segment is relocatable within the updated memory image; arranging the segments within the updated memory image. The arranging further comprises receiving a representation of the current program code version; performing at least one optimization step adapted to decrease an objective function under at least one predetermined layout constraint, the objective function being indicative of a magnitude of differences between the current program code version and the updated program code version, the layout constraint being indicative of at least one constraint imposed on the arrangement of segments within the memory image.
    Type: Application
    Filed: August 17, 2006
    Publication date: July 2, 2009
    Inventors: Johan Eker, Carl von Platen
  • Publication number: 20090113386
    Abstract: Disclosed is a method of generating updated object code of a computer program, the updated object code being suitable for the generation of an updated memory image to be loaded into a storage medium having stored thereon a current memory image corresponding to a current version of a computer program. The method comprises receiving at least one updated input code module from which the updated object code is to be generated; processing at least the updated input code module to generate at least one updated object code module adapted to be linked by a linker component as to generate the updated memory image; performing at least one optimisation process to reduce differences between said updated object code module and a corresponding one of a number of current object code modules, the number of current object code modules corresponding to the current version of said computer program.
    Type: Application
    Filed: August 17, 2006
    Publication date: April 30, 2009
    Inventors: Johan Eker, Carl von Platen
  • Publication number: 20090070374
    Abstract: A method of generating a delta file, the delta file including update instructions for causing a target processing device to transform a current memory image module into an updated memory image module. The method includes: incorporating a parametric representation of a first memory address in the delta file, the parametric representation being parametric with respect to at least one parameter; and incorporating parameter resolution instructions in the delta file, wherein the parameter resolution instructions are adapted to cause the target processing device to determine a value of said at least one parameter and to determine an address value of the first memory address from the parametric representation and the determined value of said at least one parameter.
    Type: Application
    Filed: December 6, 2006
    Publication date: March 12, 2009
    Applicant: TELEFONAKTIEBOLAGET L M ERICSSON (PUBL)
    Inventors: Johan Eker, Carl Von Platen
  • Publication number: 20080072244
    Abstract: A software component deployed in a distributed system includes a stub that enables the component to be used remotely. The stub can include its own proxy (or at least a sufficient description of it) that is automatically and dynamically injected to the remote environment. Thus, native proxies do not need to be included in the platform initially, and do not need to be downloaded, since marshalling methods are generated at runtime based on a blueprint in the code of the application.
    Type: Application
    Filed: December 22, 2006
    Publication date: March 20, 2008
    Applicant: Telefonaktiebolaget L M Ericsson (publ)
    Inventors: Johan Eker, Jan Patrik Persson
  • Publication number: 20070220504
    Abstract: Disclosed is a method for updating program code stored in a memory, which memory comprises a plurality of memory sectors. The method comprises transforming an updated input code into an updated program code version to be stored in a memory, which memory has stored thereon a current program code version occupying a first set of the memory sectors of the memory, wherein the updated program code version occupies a second set of memory sectors when stored in the memory. The transforming step further comprises receiving a representation of the current program code version; and performing at least one optimisation step adapted to decrease the number of memory sectors of the second set of memory sectors occupied by the updated code version that are different from the corresponding memory sectors of the first set of memory sectors occupied by the current program code version.
    Type: Application
    Filed: January 7, 2005
    Publication date: September 20, 2007
    Inventor: Johan Eker
  • Publication number: 20070150524
    Abstract: A method of differentially updating stored data in a mobile terminal from a first data version to an updated data version. The method comprises detecting whether the stored data in the mobile terminal includes one or more corrupted portions of the stored data inconsistent with the first data version; loading differential update instructions into the mobile terminal; and generating the updated data version by the mobile terminal from the stored data and the loaded differential update instructions, including repairing any detected corrupted portions.
    Type: Application
    Filed: October 14, 2004
    Publication date: June 28, 2007
    Inventors: Johan Eker, Chrishtian Gehrmann, Per Svensson
  • Publication number: 20050257199
    Abstract: A software performance-analysis and installation method includes estimating performance of a system including a software component to be installed on the system and determining, based on the estimated performance, whether to install the software component in a current configuration. The software component is installed in the current configuration responsive to a determination to install the software component in the current configuration. At least one of the following four steps is performed responsive to a determination not to install the software components to be installed in the current configuration: (1) deleting at least one software component of the system; (2) determining a new usage profile; (3) aborting installation of the software component to be installed; and (4) selecting an alternative component to be installed. This Abstract is provided to comply with rules requiring an Abstract that allows a searcher or other reader to quickly ascertain subject matter of the technical disclosure.
    Type: Application
    Filed: May 13, 2004
    Publication date: November 17, 2005
    Inventors: Enrico Johansson, Johan Eker, Fredrik Wartenberg