{'fraction_non_alphanumeric': 0.03137254901960784, 'fraction_numerical': 0.01437908496732026, 'mean_word_length': 5.17741935483871, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Software debugging: the virtual machine approach

The support of efficient debugging environments for systems software and complete operating systems was one of the initial motivations for virtual machine (VM) systems, such as IBM's VM/370 [2.12]. These systems typically provide a user with a VM which is a functional duplicate of a real computer system and which includes simulated switches, buttons, and lights (console functions) for rudimentary system debugging. In the same way that real console functions proved to be inadequate debugging aids for real machines [15, 18], virtual console functions have proved inadequate for VMs [9]. As a result, a number of more powerful debugging tools have been combined with VMs to yield more flexible debugging systems.