GB2483226A - Compound network application platform - Google Patents
Compound network application platform Download PDFInfo
- Publication number
- GB2483226A GB2483226A GB201014341A GB201014341A GB2483226A GB 2483226 A GB2483226 A GB 2483226A GB 201014341 A GB201014341 A GB 201014341A GB 201014341 A GB201014341 A GB 201014341A GB 2483226 A GB2483226 A GB 2483226A
- Authority
- GB
- United Kingdom
- Prior art keywords
- application
- applications
- cloud
- cnap
- client
- Prior art date
- Legal status (The legal status 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 status listed.)
- Withdrawn
Links
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/45504—Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
- G06F9/45529—Embedded in an application, e.g. JavaScript in a Web browser
-
- 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/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Information Transfer Between Computers (AREA)
Abstract
A distributed intelligence application delivery framework called the Compound Network Application Platform (CNAP). The system present Invention relates to the delivery of native software applications over the Internet using a specialized form of "application streaming" to a (computing) device such as servers, computer terminals (desktop workstations), networks, routers and machine-to-machine devices such as used for in-car telemetrics, and the methods for operating a distributed cloud applications architecture over variable bandwidth and intermittent public/private networks. CNAP applications are created to a specific standard using compressed binary XML source code (Fig 3). In operation the client device requests the CNAP application from a cloud server. The CNAP application is downloaded to the device and compiled. The compilation process builds the user interface and core components and then starts the application. The compiler is then dynamic as additional forms or libraries are required by application they are retrieved and compiled in real time to create a native executable.
Description
The Present invention: The Compound Network Application Platform (CNAP)
1. Background
Section 1 explains the particular problems the present invention seeks to solve.
Currently, conventional cloud computing' systems are based around a web application being accessed and operated through a web browser with application and data infrastructure residing primarily on a centrally managed sever. For example, an end user launches an lnternet browser and accesses a web application such as a word processor, which is then operated through the web browser. The desktop workstation has significant processing power to operate this web application locally; however the majority of processing is often carried out by a central server, while local processing still remains inefficient and resource hungry. There are more advance "cloud computing" models emerging, in the context of applications delivery and execution this is the primary relevant model.
Currently, web applications are rendered and executed by the web browser client, such as Internet Explorer, Mozila Firefox and Google Chrome. Depending on the application, regular web browsers use a variety of web browser technologies such as Javascript, VBScript and Flash. The built in JavaScript/VBScript engine, for example, allows developers to code a certain level onto the web browser client. This is mostly done because it would be very inefficient to execute on the server and render back to the web browser client again.
JAVA established this concept with the Virtual Machine (VM), which allows for powerful web browser client-side code development, with the requirement that a runtime library is installed on the web browser client-side. By a web browser client-side, is meant a client program at the end-user's personal computer that can access information from any web server in the world.
NET is technologically the same as VM, but separated Windows Forms (.NET) and Web Forms (ASP.NET) development. ASP.NET applications perform better and are more powerful by using local installed libraries that can use local processing power to execute.
Newer web browsers, such as Google Chrome, have a more advanced JavaScript engine pre-installed (VS -the new name for the Virtual Machine). Improving the performance of VM "speeds up the web" but does not address the shortfalls and inherent weaknesses in the core technology.
The web browser can therefore be viewed as a bottleneck to cloud computing due to the inferior delivery mechanism and that most web browser based applications require a Virtual Machine on the web browser client to run more powerful applications. 3.
For a business running a web based application there is major emphasis on the backend infrastructure being able run the majority of the application centrally, which has major implications on bandwidth requirements, processing (CPU) and storage usage.
The inefficiency of browser based web services becomes apparent when large numbers of users attempt to access the application, because the computational demand on the CPU is significantly increased along with increased data transmissions. lnefficiencies on the web browser client also reduces performance when more than one Virtual Machine is running simultaneously (which is primarily what V8 is attempting to resolve) on the same device, which may, for example, be a desktop workstation.
This is an inherent flaw, because the web browser and Virtual Machine by its very nature has to create multiple layers (virtual computers) on top of the native operating system. The only way any organization can significantly improve the quality of the service is to use capable client devices and increase the number of servers within their server cluster, and to increase the bandwidth that gives access to the end-user. An alternative to this solution, virtualisation, typically moves most, if not all, the processing into the cloud (data centre), creating "multiple instances'1 of a virtual computer, which is then accessed via a thin client. This allows a low specification client to access rich desktop applications, but creates a massive server-side overhead and while it reduces the processing on the client side, the client power saving is not equally reflected, as the client can typically handle significantly more processing than is demanded of it. Furthermore the application will not work at all if there is no network connection.
A modern version of virtualisation designed to address the issues with intermittent network connections and processing distribution involves packaging "virtual apps" and transferring them to the client to be executed locally, however the application programs remain very large and require multiple versions for different platforms, significantly increasing the data transfer requirements and requiring higher local processing, memory and storage requirements commensurate with the processing requirements of the original desktop application.
Therefore, the key problems the present invention is seeking to solve can be summarised as: * An massive reduction in processing and data transfer requirements on the client AND the cloud simultaneously * Ability to use rich desktop applications on very low specification client devices * Ability to use rich desktop applications over intermittent network connections * Ability to use rich desktop applications without the need to download or install * Remove the requirement to "manage" locally installed applications on the client
2. Detailed Description of invention
This section provides a very detailed technical description of the present invention.
The Present Invention provides a distributed intelligence application delivery framework called the Compound Network Application Platform (CNAP), where development and execution of cloud and local method functions and libraries takes place.
This framework consists of readily accessible resources of forms, objects, components, methods that are used to build applications stored in binary XML format library of (binary xml resource files of forms, custom controls, and custom libraries).
These applications are delivered as (binary XML) source code, and compiled and linked locally to form native executables, such as a Windows EXE file, removing the browser and Virtual Machine bottleneck described in Section 1 and fully realizing the local processing capability of the device. This is one of the most significant contributions of the invention and is described in Section 2 as, for example, any computer terminal.
As shown in Figure 1, the CNAP framework contains the DIL (Dynamic Interface Language) compiler, which can interpret the PascalScript, VBScript, iscript and Cscript languages. The OIL will essentially become completely programming language agnostic, interpreting and converting the source code into native binary executables on the device.
The D1L compiler on the (local computing) device reads binary XML files, and compiles the sections of the XML files that are required to execute in a typical application. For example, a form (user interface) function is displayed, and then only the form resource and the code part that instructs the form to be shown is compiled in memory and executed. Other parts of the library or the forms events are not read.
Compiled native executable code elements are then binary cached (in memory, and in a cache directory as required), therefore only requiring compilation once and creating locally executable code that is as fast as traditional native OS executables, with only negligible performance decreases based on the OIL interpreting and compiling new functions and libraries. This is particularly important and relevant for "iterative loops" -code that is run multiple times during the normal use of an application.
The D1L compiler is therefore a unique incremental real-time compiler, which is actually dynamically building the application as it is being used on the device. The application is launched as soon as the core components are compiled (for example the user Interface, load, save and print functions for a desktop application), and then continues to compile core and "on demand" components real-time in the
background.
This technological approach is the reason why the scheme allows applications to be delivered in real-time from the internet and served like web applications, while inheriting the advantages and properties of a native desktop application.
The invention will now be described with reference to the accompanying drawings: Figure 2 illustrates how the Compound Network Application Platform is made available to end-users and examples of potential uses.
Figure 3 illustrates how the Compound Network Application Platform can be used by developers.
In this drawing, a component of the Compound Network Application Platform, which is the Software Development tool Kit, is explained. This is a set of development tools that allows a software engineer to create applications for a particular software package or software framework and supports a number or original programming languages including but not limited to, VBScript, JavaScript, Cscript, PascalScript, & .NET. Referring to figure 3, observe that the following is also explained: o Create: The Compound Network Application Platform provides a universal platform for computing devices and web application developers. The original source code from existing web and desktop applications can be re-used or ported or a software engineer can create new code and libraries using their programming language of choice.
Applications can be created with the 50K (Software Development tool Kit) which is a component of the Compound Network Application Platform which in combination with the DIL produces the binary XML code.
o Publish: Once the intermediate encrypted and compressed Compound Network Application Platform application code has been created using the SDK, it can be "published" to any web server, content distribution network or cloud service for delivery to the end computing device.
o Deliver: The CNAP code is delivered from any cloud service; typically a standard LAMP server, in line with an existing web service, but can also form part of a more complex cloud delivery service such as Windows Azure, Amazon 53 or Cisco Unified Service Delivery. The current cloud server version of CNAP is written in PHP, and operates in much the same way as a typical server side web application such as a CMS (content management system) for example, providing a highly flexible and scalable web architecture that can be easily integrated with existing web technologies.
o Peer to Peer Delivery: The CNAP client, and in future any network connected device such as an Internet router, also acts as a delivery agent for Compound Network Application Platform applications, where the server side simply provides the authentication and billing.
o Once the application is published, the application can be selected, launched, and published instantly' on the device, such as such as a desktop workstation.
o Figure 3 therefore seeks to explain that the overarching benefit for developers at this stage is the ability to offer complex feature rich web-like applications to the desktop computer using the Compound Network Application Platform, without the huge server requirements and browser limitations imposed by traditional "cloud computing".
Figure 4 and 5 illustrates how an application is delivered using the Compound Network Application Platform from and to the device, referred to as the client or server node. It outlines the steps involved in delivering and executing an application on the device.
o Step 1: The client node makes the initial application request.
o Step 2: ln the server node, source code residing in the Compound Network Application Platform is broken into parts, compressed; encrypted and delivered instantly' (due to very low dispatch latency) to the client node.
o Step 3: The client node DIL (dynamic interface library) builds the local interface, local core components, starts the application, and fetches & compiles local and remote libraries, which is compiled and launched in real-time on the client node.
o Step 4: If required by the application the client node makes a remote form/library include request, on demand.
o Step 5: The server node delivers the library(s) to the client node.
o Steps 3 to 5 loop until the application is terminated.
Figure 6 illustrates how an application is executed using the DIL compiler.
1. Step 1: Application is fetched from the server node, and a base native executable is created.
2. Step 2: The DIL (Dynamic Interface Language) compiler immediately starts to compile the application user interface (UI).
3. Step 3: The DIL (Dynamic Interface Language) compiler builds the core components in real-time (the essential elements of the application).
4. Step 4: The native executable code from User Interface (UI) and core components are bound to the base native executable, and the application starts. Typically steps 1 -4 take 6 tol2 seconds and the application is ready to use.
5. Step 5: Additional components to the application are then delivered and executed from the local cache or Compound Network Application Platform's library in the cloud.
* ON-CLICK: an end-user action initiates the fetching and complication of the required functions
S
* ON-DEMAND: core components continue to "build" in the background as the appflcation requires, based on rules within the application or due to dependency on another function or resource.
Figure 6 illustrates how an application once delivered and compiled on the client node is cached.
Unlike traditional caching of random code elements of specific data elements, the DIL (Dynamic Interface Language) binary caches individual functions, resources and loops, this enables them to be re-used by this application, by another application on the same client node, or even a remote node -remote nodes only receive these parts as cached Compound Network Application Platform binary xml, not native executable code. This feature enables the applications to run almost as fast as locally installed applications, with a small overhead for managing the cache and non-compiled components within the Compound Network Application Platform. A running application will also continue to work seamlessly should the network connection go down or be lost, or where intermittent access is the norm. Even if a specific function is not available (because it has to be called from the cloud) the function will simply not work until the network is restored, and the rest of the application will continue to operate normally. lf the lnternet connection was lost, but the local network was still available and the requested component available, the requested function lithe client node is shutdown or rebooted in offline mode, the Compound Network Application Platform binary xml and binary executable cache is stored on the client node disk and in memory, so the last instance of the application will remain available to the end user. When the end user reconnects to the internet, additional feature requests or latest version of the application will be restored.
Figure 7 illustrates how an application is delivered from the client node to another client node, using the Compound Network Application Platform, via the cloud, essentially becoming a passive server node. When a request for an application is made, the Compound Network Application Platform will calculate the appropriate server node to launch the application from, either from a central server node or from another client node, or the two combined.
Figure 8 illustrates how a "Cloud Operating System" can be launched from the internet and delivered to the device. The Compound Network Application Platform Cloud Operating System consists of: 1. A very light kernel (such as Linux) and a single -hardware specific -network, graphics and interrupts driver, and the Compound Network Application Platform placed in a bootstrap mode on the device.
2. This bootstrap mode enables the screen, keyboard and network functionality required to boot the operating system from the cloud, and boots the device into a message loop that we call the "IDLE state", typically a blank screen with some text saying something along the line of "Waiting for CNAP cloud".
3. As soon as a suitable network connection is established, and the device is able to contact a server node, the Compound Network Application Platform starts to fetch, build and launch the operating system, fetching device specific drivers and therefore remaining very "light", as all applications are launched from the cloud. Essential applications can be fetched and stored on a disk cache automatically depending on the quality and speed of the Internet connection.
4. The next time the device is rebooted, it checks for new versions (based on specific rules) and restores the critical components and boots like a normal operating system from the network/or available cache.
Figure 9 illustrates how the green computing functionality of the Compound Network Application Platform works: 1. The initial request is made by the requestor node to a server node.
2. The server node defines the stress, location, and urgency of the request 3. The server node reroutes the request to the appropriate client node, which becomes the executor node. ft nothing is more efficient then the server node will process the request.
4. The requestor node receives notification from the executer node.
5. While it is available the req uestor will now request directly from the executor node.
6. The Compound Network Application Platform binary xml is delivered to the requestor node and the compiled and executed by the DIL 7. So, the initial request from the requestor node is a double request into the cloud, and then to an executor node, any subsequent requests are made direct to the executor unless the executor detaches from the network or has become too busy to process, in which the requestor will start again from the server node.
4. Advantages of the invention This section explains the advantages and benefits of the present innovation whilst providing examples of how the present innovation may be used in industry.
Because applications on the Compound Network Application Platform are compiled as native executable code they continue to function sea mlessly even when the lnternet connection is lost.
The bandwidth requirement is very low because the applications and libraries are transmitted in chunks, as compressed and encrypted the Compound Network Application Platform (binary xml) "source" code.
Diversity is one of the key features of the Compound Network Application Platform. Developers can use this framework to deploy regular native desktop applications and recompile the same project and re-use portions of it in another project by simply remotely including parts of that application from function libraries on another device, or they can compile the same project and run it as an application over the Internet, thus developers have a single environment to deliver very powerful.
For example, a developer could re-use parts of a social media application to deliver functionality within a word processor and office suite, or include messaging functionality from a communications suite within a social media application. Any changes to the core functionality (libraries) can be made automatically available to other applications, without the need for any local code or library changes on the device, such as a desktop workstation.
Currently developers must also decide whether to create a web or a desktop version of an application, or both. Evaluation versions of desktop software create another layer of complexity for developers, which the Compound Network Application Platform removes, The delivery and execution of an application is still controlled remotely and the device will never contain the entire application, or in a usable form, unless the developer was to specifically design it that way for a specialist application.
The Compound Network Application Platform requires no local libraries and so can become a truly universal application delivery mechanism. This is a major difference with regards to current executable environments as they all rely on a predetermined set of installed libraries which both locks in the native operating system environment and limits functionality, requiring the constant installation of new libraries in order to deliver applications.
The following two samples demonstrate that the Compound Network Application Platform development environment has limitless scope, just like web programming, as there is no central structure that the code has to reference: * Typically a web developer would access an object on the form with: obj = document. element byid("edir") * A developer using the Compound Network Apphcation Platform would access an object on the form with: oh] = GetEventSerider, Fofrn. Member("edit") Viewed from a business perspective, the Compound Network Application Platform and its framework components offer businesses the ability to serve applications from the cloud to the device, such as a desktop workstation, in a way that significantly reduces scalability concerns due to the distributed architecture.
The device can serve applications and library components from and to the device, therefore the latest version of the Compound Network Application Platform code can be delivered from the cloud and then served locally from a client/server to another client/server.
This form of peer-to-peer deep caching of applications creates a highly efficient distributed intelligence application delivery framework that massively reduces the client and server loads, and remains secure through an encrypted and centralised signing process that authorizes every instance of an application, and within a walled garden if required.
This element of the Compound Network Application Platform's technological approach can be compared with peer-to-peer voice applications such as Skype and peer-to-peer data applications such as BitTorrent, but for the delivery and "streaming" of applications.
The Compound Network Application Platform is designed and built to be highly scalable and secure, so the device can operate in a dual capacity, where necessary, to meet the required need, be it initiated by the end-user or machine-to-machine.
A typical client/server example is of an end-user choosing to select an application from the cloud, using a single-click of a local desktop shortcut, custom client or even a web browser link, which is then launched by the Compound Network Application Platform, delivered to the device, and then compiled in real-time by the local the Compound Network Application Platform's component on the device. The application then launches the native executable code on the device where all local computations take place, leaving the cloud to deal with library requests and major computations where this makes sense for a specific application, therefore reducing both bandwidth & server requirements in the cloud.
The Compound Network Application Platform therefore offers a unique delivery and execution framework that offers "Instant" (real-time) native device application delivery from the Cloud, with no traditional download and install stage and therefore requiring no local maintenance such as the install, update, uninstall and cleanup of a local library of applications.
The Compound Network Application Platform reduces local storage requirements -launched applications use policy based local caching to "cycle" or retain applications on local storage. The latest application version is always requested from the Cloud ensuring functionality is always up-to-date (if the cloud is unavailable, the previously compiled local application version is launched) which creates a much "cleaner" operating system as applications do not make excessive changes to the local environment.
Applications cannot be copied because the whole appUcation never resides on a single client device and is encrypted.
The following examples are provided in order to further explain how the present invention may be used: Software as a Service A practical and everyday business example, would be the ability to bring Software as a Service (SaaS) applications to developing markets, by enabling low specification devices to launch a local client version of say a major CRM or accounting application on the device, such as a desktop computer, instead of having to use a web browser. The resulting application would be faster and far less reliant on the cloud as the application can continue to operate offline, and then sync the required data with the SaaS vendor platform when re-connected, It also allows the end-user to launch and use the application without an lnternet connection and then sync at their leisure. This also provides a new channel to market for SaaS, where it is simply technically or commercially impossible to provide a service.
Web vs. Desktop A web service such as Google Docs, or 50110, or indeed a desktop computer service such Microsoft Office or Openoffice.org could be ported and delivered as a desktop computer application, from the cloud. Cloud services would benefit from a massive reduction in server capacity to support millions of end-users and inherent offline capability. Desktop computer services would benefit from being able to deliver the latest version of their software library "instantly" from the cloud, with no download or install and reduce or eliminate software piracy at the same time, as the end-user would never have a standard "off the shelf" version of the software to copy and distribute.
Resource intensive Scientific Application A scientific application that had to process weather patterns across the globe in order to predict the effects of global warming would be well suited to supercomputers and grid computing "in the cloud" to crunch the big numbers, but the device, such as the desktop computer, would be equally well suited to rendering the result "slices", for say a government paper on the effects of cars and petrol consumption on the sea levels in the UK. A local application could cut and slice this data locally and render as the appropriate mix of maps, charts, spreadsheets, graphics and text. The application and the libraries to do this can be stored in the cloud and the required functionality delivered to the device on request, enabling advances in the way this data is visualized to be automatically available across the globe, and managed by multiple developers who maintain the "visualizers" and others that maintain particular specialist algorithms for interpreting the data.
Symantec Web The Symantec Web, where core "Symantec" libraries such as trust and relationship algorithms, content syndication and aggregation components, or social media integration could be maintained centrally and then made available to applications using a similar principal to the current trend for "open APIs" (Application Programming Interfaces). Because the Compound Network Application Platform is programming language agnostic, the libraries can be developed using the developer's platform of choice and then delivered in a consistent way. This enables programmers to retain collaborative and open source principles, techniques and tools to support the Symantec Web, and enable individual developers to easily embed the remote library calls into their own applications and deliver them to the end-user across multiple disciplines.
Machine to Machine For machine-to-machine applications an ideal example is for updating and maintaining the core software for the device that is remote and/or constantly mobile. in-car telemetrics, for example, could ensure everything from the engine management system through to the satellite navigation systems could be updated real-time via various wireless technologies. A car will be able to receive and transmit specific functionality updates in "chunks" without the need to wait for the device to download and install the whole application. For consumer and commercial applications, this will massively reduce the time to market for in-car entertainment systems, and could reduce "call backs" where a car or electronics manufacturer discovers a flaw in the software that could put the end-user in danger.
Home Automation and Entertainment Equally, a home appliance such as a TV or entertainment system, could have the lnternet enabled software updated in real-time, enabling manufacturers to break the churn" cycle on consumer electronics goods. Anything from a new "gaming" platform to an advertising network could be rapidly deployed and because the code is running natively, old hardware will be able to be pushed to its limits of capability as the developers learn how to get the most out of it. Where the Internet made content always-on and always up-to-date, the Compound Network Application Platform can do the same for commercial and consumer electronics, by removing the boundaries to application deployment.
Developing Markets The provision of low-cost computer services to the emerging markets through cloud services. The cost of computing in these markets is still prohibitive and acts as the primary barrier to entry. The device hardware for this market is either very expensive, or very low-cost and when this is the case it may be ineffective because it cannot run proper desktop applications nor have always-on access to use web browser based services. The Compound Network Application Platform can be setup to provide high productivity feature rich applications direct from the cloud. With a very light kernel base, the Compound Network Application Platform can deliver the key computer operating system elements such as the user interface/desktop and external device support from the cloud, and deliver all the applications. The major benefits to this approach is that expensive hardware operating system licenses can be avoided (driving down the cost of hardware so that it becomes more obtainable to the masses in emerging markets), low cost devices become usable and useful (even when they are not connected to the internet), advances in software technology can be delivered in real-time to maximise performance from the low-cost hardware base, and network bandwidth efficiencies as applications delivered via the Compound Network Application Platform require lower bandwidth due to the delivery methodology.
Hardware Vendors A hardware vendor can ship hardware to its user base using a direct or indirect model, and still have the ability to update the operating system and applications to resolve problems and improve functionality by using the Compound Network Application Platform.
Mobile The Compound Network Application Platform will ultimately enable mobile devices to benefit from it. ln the mobile space, this has huge implications and advantages in application development providing the ability to delivery "instant" applications across multiple devices architectures and codebases.
Green Computing ln today's cloud computing environment the model is to serve applications from central server clusters, where most of the computations and services are processed. The key problem with this is that it is a very inefficient method and neglects the considerable processing capability of the client device. It is the modern evolution of mainframe computing, which while considerably more technologically advanced, has inherited many of the original flaws. As the number of servers increase to serve a rapidly increasing end-user base, so does the carbon footprint.
The Present Invention reduces this carbon footprint significantly by efficiently utilising the latent processing capability of the device, be it client or server, thus greatly reducing the overall number of devices required to deliver the service.
Using the Compound Network Application Platform, any application can be launched from one device to another, such as from a desktop computer client to a remote laptop client. The server node is also able to support a much higher number of end-users due to the significantly reduced load compared with pure web applications. Because the processing power is evenly distributed across the devices this enables existing hardware, currently under utilised by existing browser technologies or not powerful enough for power desktop applications to become far more valuable resource. This has the potential to reduce the overall churn of legacy technology so that it is practical to offer to developing markets where it will become both useful and usable.
Music and Video Sharing Using applications such as iTunes and Spotify as examples, an end-user to could listen to some music or watch a video on their own personal computer, having launched a full media player from the cloud using the Compound Network Application Platform. They could then decide to share that stream with a friend by simply dragging across their friend's name or picture from their address book on to the application. At this stage, a traditional desktop application could offer some of this functionality, if they are both using the same release, and a web apphcation would struggle unless they both have the browser open on the same website.
And secure offline content access With the Compound Network Application Platform, exactly the same application could be delivered Instantly1' to everyone and securely stream the content (using the same application streaming technology in a different way) in real-time. The music and video content itself could also be stored offline and still protect it from being copied, and only if this was a requirement.
Browse & Launch a Web Application The Compound Network Application Platform enables applications to be launched "instantly" to end-users' desktop computers. This could include, for example, a website itself. For example, Facebook could be launched as a desktop application, providing the end user with a richer and faster experience, and reducing the load on the Facebook servers in the cloud. See figure 8 for a visual representation of how this transforms the application supply chain.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB201014341A GB2483226A (en) | 2010-08-27 | 2010-08-27 | Compound network application platform |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB201014341A GB2483226A (en) | 2010-08-27 | 2010-08-27 | Compound network application platform |
Publications (2)
Publication Number | Publication Date |
---|---|
GB201014341D0 GB201014341D0 (en) | 2010-10-13 |
GB2483226A true GB2483226A (en) | 2012-03-07 |
Family
ID=43013368
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
GB201014341A Withdrawn GB2483226A (en) | 2010-08-27 | 2010-08-27 | Compound network application platform |
Country Status (1)
Country | Link |
---|---|
GB (1) | GB2483226A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104932912A (en) * | 2014-03-17 | 2015-09-23 | 广达电脑股份有限公司 | Software updating method and system and mobile device |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110716743B (en) * | 2019-09-30 | 2023-07-28 | 上海一竹网络科技有限公司 | Aggregation API development method and system suitable for multiparty collaborative development |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1997017686A1 (en) * | 1995-11-06 | 1997-05-15 | Michel Cuvelier | Road monitoring device |
JPH09282174A (en) * | 1996-04-10 | 1997-10-31 | Hitachi Ltd | Program execution method |
US5963148A (en) * | 1995-03-23 | 1999-10-05 | Honda Giken Kogyo Kabushiki Kaisha | Road situation perceiving system |
US6173231B1 (en) * | 2000-01-31 | 2001-01-09 | Navigation Technologies Corp. | Method and system for collecting data concerning thermal properties of roads for a geographic database and use thereof in a vehicle safety system |
US6459083B1 (en) * | 1998-04-09 | 2002-10-01 | Daimlerchrysler Ag | Apparatus for detecting the condition of a road surface |
WO2004016485A1 (en) * | 2002-08-19 | 2004-02-26 | Nederlandse Organisatie Voor Toegepast-Natuurwe Tenschappelijk Onderzoek Tno | Vehicle control making use of a road surface tire interacting model |
US20040225747A1 (en) * | 2003-05-09 | 2004-11-11 | Zafer Kadi | Providing compiled bytecode applications to a wireless device |
US20090328012A1 (en) * | 2008-06-27 | 2009-12-31 | Microsoft Corporation | Compiler in a managed application context |
US7805717B1 (en) * | 2005-10-17 | 2010-09-28 | Symantec Operating Corporation | Pre-computed dynamic instrumentation |
-
2010
- 2010-08-27 GB GB201014341A patent/GB2483226A/en not_active Withdrawn
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5963148A (en) * | 1995-03-23 | 1999-10-05 | Honda Giken Kogyo Kabushiki Kaisha | Road situation perceiving system |
WO1997017686A1 (en) * | 1995-11-06 | 1997-05-15 | Michel Cuvelier | Road monitoring device |
JPH09282174A (en) * | 1996-04-10 | 1997-10-31 | Hitachi Ltd | Program execution method |
US6459083B1 (en) * | 1998-04-09 | 2002-10-01 | Daimlerchrysler Ag | Apparatus for detecting the condition of a road surface |
US6173231B1 (en) * | 2000-01-31 | 2001-01-09 | Navigation Technologies Corp. | Method and system for collecting data concerning thermal properties of roads for a geographic database and use thereof in a vehicle safety system |
WO2004016485A1 (en) * | 2002-08-19 | 2004-02-26 | Nederlandse Organisatie Voor Toegepast-Natuurwe Tenschappelijk Onderzoek Tno | Vehicle control making use of a road surface tire interacting model |
US20040225747A1 (en) * | 2003-05-09 | 2004-11-11 | Zafer Kadi | Providing compiled bytecode applications to a wireless device |
US7805717B1 (en) * | 2005-10-17 | 2010-09-28 | Symantec Operating Corporation | Pre-computed dynamic instrumentation |
US20090328012A1 (en) * | 2008-06-27 | 2009-12-31 | Microsoft Corporation | Compiler in a managed application context |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104932912A (en) * | 2014-03-17 | 2015-09-23 | 广达电脑股份有限公司 | Software updating method and system and mobile device |
Also Published As
Publication number | Publication date |
---|---|
GB201014341D0 (en) | 2010-10-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Burns et al. | Kubernetes: up and running | |
US11429399B2 (en) | Configuration container for container orchestration platform | |
March et al. | μcloud: towards a new paradigm of rich mobile applications | |
US10432752B2 (en) | Method and system for mobile applications update in the cloud | |
US9332063B2 (en) | Versatile application configuration for deployable computing environments | |
EP2815311B1 (en) | Using an application cache to update resources of installed applications | |
US9519472B2 (en) | Automation of virtual machine installation by splitting an installation into a minimal installation and customization | |
TWI276998B (en) | Systems and methods for managing drivers in a computing system | |
EP2831726B1 (en) | Dynamic plugin(s) for cloud application(s) | |
US20080147671A1 (en) | System for Running Web Applications Offline and Providing Access to Native Services | |
CN102420873B (en) | Compound network brand new cloud application platform | |
JP2013524365A (en) | Virtual application extension point | |
US11625253B2 (en) | Application-level runtime environment for executing applications native to mobile devices without full installation | |
US10949216B2 (en) | Support for third-party kernel modules on host operating systems | |
GB2507753A (en) | Dynamic configuration of virtual appliances | |
US8516480B1 (en) | Enabling offline work in a virtual data center | |
US11531526B1 (en) | Creating portable serverless applications | |
CN115421740A (en) | Deployment method and device of cloud native application | |
US20240220220A1 (en) | Method, apparatus, and computer-readable medium for intelligent execution of a solution on a computer network | |
US9830307B1 (en) | Ahead of time compilation of content pages | |
US11494184B1 (en) | Creation of transportability container files for serverless applications | |
GB2483226A (en) | Compound network application platform | |
Hillenbrand et al. | A software deployment service for autonomous computing environments | |
US12093673B2 (en) | Smart image registries for dynamic image generation | |
Gatev et al. | Getting up to speed with kubernetes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
S30Z | Assignments for licence or security reasons |
Free format text: APPLICANT CNAP.ME OPERATIONS LIMITED EXCLUSIVE LICENCE GRANTED TO CNAP.ME MAURITIUS LIMITED |
|
COOA | Change in applicant's name or ownership of the application |
Owner name: CNAP.ME OPERATIONS LIMITED Free format text: FORMER OWNER: ANTONIOS CHRISTODOULOS EFSTATHIOU CHRISTODOULOU |
|
WAP | Application withdrawn, taken to be withdrawn or refused ** after publication under section 16(1) |