Browser Memory-Mapped File for Navigation History Storage
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current browser technologies incur significant overhead when managing navigation history data, particularly when multiple windows are open concurrently, as they often rely on relational database engines to store and update this data, leading to inefficiencies and potential loss of history in case of runtime anomalies like browser crashes.
Innovation Solution
The use of a memory-mapped file in non-persistent memory that corresponds to a file in persistent storage allows for efficient storage and updating of browser state information, including navigation history, without the need for a relational database management engine, ensuring data persistence even in the event of a browser crash.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a relational database engine is used to manage navigation history data, then the browser can store and manage history data for multiple windows, but the overhead and complexity increase significantly
Solution Approach 1:
The patent extracts the database engine dependency from the browser architecture. Instead of requiring a full relational database engine, the invention uses a simplified file-based storage system with memory-mapped files that handles navigation history data directly, eliminating the complex database layer while maintaining storage capabilities
Solution Approach 2:
The patent creates a copy of the navigation history data structure in memory-mapped file format that mirrors the functionality of a database system. This copy allows the browser to access and manage history data with the same reliability as a database would provide, but without the overhead of running a full database engine
2Reliability
If navigation history data is stored in a relational database, then data can be persisted across sessions, but the storage and update operations become slower
Solution Approach 1:
The patent replaces the mechanical database engine processing layer with a direct memory-mapped file access system. This substitution eliminates the overhead of database query processing, transaction management, and buffer caching, allowing storage and update operations to proceed at near-native file system speeds while maintaining data persistence through the memory-mapped file mechanism
3Adaptability or versatility
If multiple browser windows are supported with separate history for each, then user navigation flexibility increases, but the amount of data to be managed and stored increases significantly
Solution Approach 1:
The patent merges the storage mechanism for multiple window histories into a single unified file-based system. Instead of maintaining separate database files or storage structures for each window, the invention consolidates all navigation history data into memory-mapped files that can efficiently handle multiple windows' worth of history data in a unified, compact structure
Data Source
AI summary
Features are disclosed for efficiently maintaining information regarding content navigation history and state of a browser application. The browser application can use a portion of a client device's non-persistent memory that has been assigned a direct byte-for-byte correlation with a file in persistent storage, such as a memory-mapped file. The browser application can access, store, and update information in the memory-mapped file in non-persistent memory without being responsible for ensuring that updates are also reflected in the file stored in persistent storage. The operating system of the client device can handle the tasks of writing to, and reading from, persistent storage.


