Emulation accuracy: Difference between revisions
No edit summary |
No edit summary |
||
| Line 5: | Line 5: | ||
*'''[[Hypervisors|Hypervisors/virtualization]]''' usually used for partitioning physical hardware resources among multiple guest operating systems | *'''[[Hypervisors|Hypervisors/virtualization]]''' usually used for partitioning physical hardware resources among multiple guest operating systems | ||
*'''[[Simulators]]''' where developers build virtual replicas of specific environments or processes | *'''[[Simulators]]''' where developers build virtual replicas of specific environments or processes | ||
*'''[[:Category:Emulators|Emulation]]''' endeavors to recreate an entire historical architecture. This digital reconstruction seeks to faithfully capture the instruction set, timing behaviors, hardware features and even peripheral nuances of a bygone hardware platform. In years, lots of techniques and other technologies come in useful to emulator development which is mentioned in [[High/ | *'''[[:Category:Emulators|Emulation]]''' endeavors to recreate an entire historical architecture. This digital reconstruction seeks to faithfully capture the instruction set, timing behaviors, hardware features and even peripheral nuances of a bygone hardware platform. In years, lots of techniques and other technologies come in useful to emulator development which is mentioned in [[High/Low level emulation#Future Outlook]] section. Thanks to this, emulators achieve impressive levels of [[Frames_per_second|performance]] and compatibility, further unlocking the doors to historical software [[Preservation_projects|preservation]]. | ||
*'''[[Compatibility_layer|Compatibility/translation layers]]''' allow software written for one operating system to run on a different OS, often by translating system calls made by an application to their equivalent calls in the host operating system. | *'''[[Compatibility_layer|Compatibility/translation layers]]''' allow software written for one operating system to run on a different OS, often by translating system calls made by an application to their equivalent calls in the host operating system. | ||
*'''[[Wrappers]]''' is a reimplementation of a library, where the goal is to substitute the original API with a better-supported interface. It works as a drop-in replacement for the original library, since a lot of software usually bundled it as-is without any fine-tuning. Wrappers are most common for proprietary interfaces that are either abandoned or otherwise platform-specific. | *'''[[Wrappers]]''' is a reimplementation of a library, where the goal is to substitute the original API with a better-supported interface. It works as a drop-in replacement for the original library, since a lot of software usually bundled it as-is without any fine-tuning. Wrappers are most common for proprietary interfaces that are either abandoned or otherwise platform-specific. | ||