Explore chapters and articles related to this topic
Memory Organisation
Published in Pranabananda Chakraborty, Computer Organisation and Architecture, 2020
Considering the hierarchy as shown, the fastest (access time), smallest, and most expensive type of memory consists of Registers, internal to the processor. A processor nowadays typically contains a few dozen to hundreds of such registers. Now, with regard to frequency of access, the principle of locality of reference is followed here. This tells that the data most recently used is very likely to be accessed (referenced) again in the near future, and hence it is suggested to be kept in the fastest memory for improved performance. Cache memory fulfils this criteria which is of higher speed, smaller in size, but a costlier one. It is usually extended with main memory, and is not visible to the programmer, or indeed to the processor. It is placed nowadays inside the CPU (on-chip), in addition to, in between CPU and primary memory (off-chip), and is employed for the movement of data between main memory and processor register to improve performance. Typically, it is on-chip or off-chip CMOS, SRAM. Main memory is the principal internal memory system of the machine which has a unique address for each location. It is generally of larger size, relatively slower (higher access time), and comparatively less costly. The distinguishing characteristics of these three types of memory just described are based on semiconductor technology. They are volatile, and hence, must be provided with a constant power supply while in use. At the same level of main memory (RAM) in the memory hierarchy, the non-volatile Read-Only Memory (ROM) with all its variants, like PROM, EPROM, etc., are also present. Program and data are, however, stored more permanently on external non-volatile secondary mass storage devices, the most common are magnetic disk, compact disk, and tape.
FloVasion: Towards Detection of non-sensitive Variable Based Evasive Information-Flow in Android Apps
Published in IETE Journal of Research, 2022
Bharat Buddhadev, Parvez Faruki, Manoj Singh Gaur, Shubham Kharche, Akka Zemmari
The information flow in the Android apps can be evaded via various techniques. Obfuscation techniques are categorized into layout [25], control-flow transformation [26,27], and data obfuscation. Layout obfuscation [25] removes relevant information from the code without changing functional behavior. Control-flow transformation [26,27] alters the execution. Data obfuscation modifies the app data and its data-structures [12]. Xue et al. [28] proposed Malton, a non-invasive, on-device, dynamic analysis framework for malware detection via multilayer monitoring of information flow-tracking. The proposed tool is effective against packed and anti-emulation systems. TaintART [29] is an Android Runtime (ART) based multi-level information-flow tracking system to detect information flow leakage on Dalvik and ART based versions. TaintART stores taint tags inside processor register and improves taint propagation efficiency for tag storage. DroidTrack [30] is a method for tracking and visualizing sensitive information diffusion to prevent sensitive information leakage. The proposed method alerts the device owner about possible threats if the app requests dangerous and external API calls.