摘要:
A datastore, such as a registry or file system having a defined data structure with a logical layer, may be analyzed using a bitmap corresponding to equally sized blocks of data in the datastore. The bitmap is created by traversing the datastore and setting a bit at the beginning of each cell of data, where one cell may have multiple blocks. The datastore is traversed again at a logical layer to verify that each cell is used only one time. The second traverse may unset the beginning bit of each cell as the cell is used. An inconsistency is detected in the datastore when a bit is already unset during the second traverse and when set bits exist after the second traverse.
摘要:
A computer device for logging changes to a user preference includes two log files, and a first and second file. The changes are written to the first file. The changes are then flushed to the log file with a marker. The marker is moved to the other log file before the changes are written to the second file. If the changes are successfully written, the changes are loaded from the second file into short term memory (RAM). If there is a transient error but there are no more changes after the error, the changes flushed to the log file are loaded into RAM. If the transient error occurs and there are further changes, all changes (before and after the error) are flushed to the log file with the marker, after which the marker is moved to the other log file before the changes are written to the second file.
摘要:
A security technique to reduce the risk of unauthorized release of a software object. The technique allows identification of an individual responsible for the unauthorized release by marking each object with information, which acts as a fingerprint from which a person manipulating the object in a development environment can be identified. The development environment may be configured to quickly and automatically mark the object whenever a manipulation that may precede an unauthorized release occurs. To prevent circumventing the security technique, the object may be configured to enforce a requirement for a valid fingerprint such that the object is disabled if the fingerprint is removed or altered. Despite the marking, personally identifiable information is not revealed because the fingerprint is generated through a one-way cryptographic function performed on identifying information.
摘要:
A datastore, such as a registry or file system having a defined data structure with a logical layer, may be analyzed using a bitmap corresponding to equally sized blocks of data in the datastore. The bitmap is created by traversing the datastore and setting a bit at the beginning of each cell of data, where one cell may have multiple blocks. The datastore is traversed again at a logical layer to verify that each cell is used only one time. The second traverse may unset the beginning bit of each cell as the cell is used. An inconsistency is detected in the datastore when a bit is already unset during the second traverse and when set bits exist after the second traverse.
摘要:
A computer device for logging changes to a user preference includes two log files, and a first and second file. The changes are written to the first file. The changes are then flushed to the log file with a marker. The marker is moved to the other log file before the changes are written to the second file. If the changes are successfully written, the changes are loaded from the second file into short term memory (RAM). If there is a transient error but there are no more changes after the error, the changes flushed to the log file are loaded into RAM. If the transient error occurs and there are further changes, all changes (before and after the error) are flushed to the log file with the marker, after which the marker is moved to the other log file before the changes are written to the second file.
摘要:
A method and computing device for providing concurrent read and write access to a linked list of elements is presented. A linked list is provided wherein read access by a reader process and write access by a writer process may occur substantially concurrently. The linked list includes three internal lists for processes to reference elements of the linked list. The linked list also includes an updated indicator. Read access to the linked list is provided to a reader process such that the reader process accesses elements in the linked list according to a read list of the three internal lists. Write access to the linked list is provided to a writer process such that the writer process accesses elements in the linked list according to a write list of the three internal lists.
摘要:
A security technique to reduce the risk of unauthorized release of a software object. The technique allows identification of an individual responsible for the unauthorized release by marking each object with information, which acts as a fingerprint from which a person manipulating the object in a development environment can be identified. The development environment may be configured to quickly and automatically mark the object whenever a manipulation that may precede an unauthorized release occurs. To prevent circumventing the security technique, the object may be configured to enforce a requirement for a valid fingerprint such that the object is disabled if the fingerprint is removed or altered. Despite the marking, personally identifiable information is not revealed because the fingerprint is generated through a one-way cryptographic function performed on identifying information.
摘要:
A thread has a corruption detection mechanism that compares a beginning state of a function with an ending state to determine any inconsistencies. Based on the type of inconsistency, a remedial action may be taken, such as ignoring the inconsistency, cleaning up the inconsistency, and terminating the thread with an exception. The analysis may also include analyzing various states after function execution to find problems such as incomplete transactions. Such a thread may be useful in an operating system as well as a multi-threaded application environment.
摘要:
Loading and unloading a plurality of libraries on a computing device having a loader lock and internal and external counts for each library in the plurality of libraries is disclosed. The libraries assume an initialize state, followed by an initialized state, a pending unload state, and an unload state according to when the internal and external counts are incremented and decremented. When in the pending unload state, the functions of a library that include functions that require acquiring the loader lock exit, the internal count is decremented by one, and the loader lock is released. Prior to entering the pending unload state, a library may be placed into a reloadable state. A library in the reloadable state may be reloaded upon request until a timer times out. When the timer times out, the library in the reloadable state transitions into the pending unload state.
摘要:
A timer service uses a single timer function to perform timing services for both relative and absolute timers. The first timers from a sorted array of absolute timers and relative timers are used in a function that will return when the earliest absolute timer expires or will timeout when the earliest relative timer expires. The timer function may be interrupted when a new timer is added to one of the arrays. The function will operate in a predictable and consistent manner, even when a system clock is adjusted.