Acquisiting Text Documents Opened by Notepad from Windows7 RAM Image

Size: px
Start display at page:

Download "Acquisiting Text Documents Opened by Notepad from Windows7 RAM Image"

Transcription

1 Journal of Computational Information Systems 10: 16 (2014) Available at Acquisiting Text Documents Opened by Notepad from Windows7 RAM Image Tao XIAO, Ming XU, Jian XU, Yizhi REN, Haiping ZHANG, Ting WU, Ning ZHENG College of Computer, Hangzhou Dianzi University, Hangzhou , China Abstract The text documents opened by Notepad are important forensic objects in MS Windows memory forensic field, because the Notepad is a widely used text editing program bind with the Windows system. This paper proposed a method for recovering text documents from windows7 memory image based on reconstructed process space for Notedpad. Firstly the Notepad s Eprocess is located in Windows7 memory image. Then using the items in the Eprocess, such as Pcb, Peb, and VadRoot, to reconstruct Notepad s memory space. At last, the text documents opened by Notepad could be recovered from the Notepad s memory space. The results of experiment show that the proposed method can successfully get the physical locations of the system Eprocess, and recover text documents opened by Notepad from windows7 memory image. Keywords: Memory Forensics; Eprocess; Windows 7; VAD; Notepad 1 Introduction Memory Forensics is a novel and fast growing field in computer forensics, providing access to volatile information unavailable from disk image. In prior, Computer forensics analysis mainly means file system forensics, but there are some information we can not acquire from disk image, such as the running processes, the opening ports, the loading modules and so on. As the antiforensics developed, memory forensics was commenced when malware writers began reducing their footprints on the victim s hard disk and storing crucial information within the machine s memory [1]. Current researches have shown that extracting useful message, such as the mapped files, the opened network connection and so on, from memory is possible [2]. Physical Address Extension (PAE) is a feature to allow 32-bit x86 central processing units (CPUs) to access a physical address space (including random access memory and memory mapped devices) larger than 4 GB. This paper focuses on the MS Windows7 SP1 which not uses the PAE mechanism. But our method will also apply to the computer which uses the PAE mechanism just make a little change in the phase of address translation. This paper uses the relations between windows7 kernel Corresponding author. address: mxu@hdu.edu.cn (Ming XU) / Copyright 2014 Binary Information Press DOI: /jcis11511 August 15, 2014

2 7118 T. Xiao et al. /Journal of Computational Information Systems 10: 16 (2014) objects to reconstruct Notepad process space from Windows7 memory image, and then recovery text documents based on the recovered Notepad process space. Because Notepad is a windows bundled program, it always be used the as a plain text edit program to take some short note and simple information, Such as take notes, and record a telephone number. As we all know, the running progress data must be loaded into memory, so the text documents opened by Notepad could be found in the memory image. Notepad is a plain text editor so it is different from other composite document editor programs such as the Microsoft office word and Portable Document Format (PDF). This characteristic can be used to simplify the recovery procedure. The reminder of this paper is organized as follows. Section 2 provides background information and introduces related works briefly. Section 3 describes the related data structures about reconstructing Notepad.exe process space. Section 4 proposes the method to recovery the text documents from memory image. Section 5 gives the results of experiments. Finally the summary section is in the last section. 2 Related Work In 2004, Brain D. Carrier and Joe Grand discussed the possibility of reliably and accurately extracting evidence from the volatile memory. But, before 2005, memory forensic mainly use the command, like strings, to extract evidences from the memory image, such as password, IP address, and -address so on. In 2005, Digital Forensics Research Workshop (DFRWS) organized a challenge about Windows 2000 memory forensics in order to motivate discourse, research and tool development in memory forensics field [3]. In 2006, AArron Walters developed a Forensic Analysis Toolkit (FATKit) which is a new cross-platform, modular, and extensible digital investigation framework for analyzing volatile system memory [4]. In the paper published by Andreas Schuster puts forward a systematic method to list the system processes and threads from running Windows [5]. PTfinder (Andreas Schuster 2006) is a Perl project which can list the processes and threads in the running system also. Volatility Framework implemented in Python under the GNU General Public License is a completely open collection of tools developed by a workshop directed by Aaron Walters, for the extraction of digital artifacts from volatile memory (RAM) samples [6]. Meanwhile, Forensic analysis of the Windows registry in memory (Brendan Dolan-Gavitt, 2008) describes how to extract the registry structure directly from memory by Memory Forensics technology [7]. Because the traditional methods can not locate the Eprocess accurately, Lihai Wang put forward a new method based on KPCR to solve the problem. The method to locate Eprocess based on Kpcr use the PsActieveProcess to traverse the Eprocess list. Jesse D. Kornblum takes the data which has swap to disk into account in the forensic phase. Brendan Dolan-Gavitt researched the VAD tree and uses it to traverse the process virtual memory space [8]. In 2010 Yuhang Gao did a Forensics for QQ from a Live System and acquired the contact list, the QQ account, the chats records, the QQ discussion group, the display names, and the contents of network Notepad [9]. Some researchers use relationship between system kernel object and the file carving technology to try recovering the documents form memory image. R.B. van Baar described a method for recovering files mapped in memory and linking mapped-file information process data. But a whole method for a specific program did not have proposed in detail. We will show a method to recover text documents from Windows memory image.

3 T. Xiao et al. /Journal of Computational Information Systems 10: 16 (2014) Related Windows Kernel Data Structures Fig. 1: The relationship of kernel data structures Fig. 2: The recovery procedure 3.1 Eprocess and VAD The Eprocess structure is an opaque structure that serves as the process object for a process. Eprocess is the only one kernel structure that can represent a new process. It not only has many attributes describe the process s state but also has many handles which point to other important internal structures. For example, The UniqueProcessId is actually PID which is the identification of every progress. InheritedFromUniqueProcessId is the progress s parent process PID. ImageFileName and other items in Eprocess are also import for examiners. Pcb point to the Kprocess, the ptr32 Peb point to the Peb. The Eprocess object plays an import role in Windows scheduling and resource allocation. Process scheduling is necessary because Windows based system is a multi-task operating system. Resource allocation is also significant for any process run on the system. We can use the windbg tool, which was the component of Debugging Tools for Windows, or the livekd.exe to debug the target machine, and then we can acquire the Eprocess structure of the forensic machine. Especially the item of ActiveProcessLinks makes all Eprocess link together as a double link list. The system kernel object PsActiveProcessHead is point to the double link list s head. So we can traverse it by the PsActiveProcessHead or other Eprocess node. The windows memory manager module use Virtual Address Descriptor (VAD) tree to describe memory range of a process. When a process use the windows API function VirtualAlloc to allocate memory, the memory manager will create an entry in the VAD tree. The corresponding page directory and page table will be created as soon as the process tries to reference that memory page. This mechanism can provide significant memory saving for processes that allocate a large amount of memory but access it sparsely. The VAD tree is a self-balance binary tree: at any given node, memory addresses lower than those contained at the current node can be found in

4 7120 T. Xiao et al. /Journal of Computational Information Systems 10: 16 (2014) the left sub tree and higher ranges in the right sub tree. The VAD structure is not specially documented by Microsoft. However, it is discussed by some researchers for it is important for the kernel fancier. Brendan Dolan-Gavitt give a brief description about the three types of the VAD nodes. But he does not tell that VadRoot in the Eprocess is not the real root of the AVL tree. 3.2 The relationship between the kernel object Windows kernel object links to each other by pointers, some kernel objects are part of others. The Fig. 1 shows the Eprocess structure and its related structure in the 32-bit Windows7 system. This relationship between the kernel object can be detected by debugging the system with the tool windbg. Such as the item of Pcb is a KPROCESS structure, the Peb item is a 32 pointer and point to a PEB structure. Other version system relationship can also acquire by debug the target machine. At last we find that the entire kernel are stored in the high 2GB virtually address space and the low 2GB space is used for use space. 4 Recovering Text Approach Examiners are faced with mess data as the physical memory is big and unordered. Windows based systems all implement the virtual memory management mechanism. Each process has an individual process address space of 4GB. This mechanism guarantees each process can not be disturbed by others. In fact, the whole process space contains everything that the examiners interest such as the Directory Table Base (DTB), the handle point to the load module list, process s data and so on. Examiners can acquire some information by reconstructing the whole process space. Our approach to recovery text document from memory is based on reconstructing the Notepad memory space by windows memory forensic technology. The Fig. 2 describes the procedure to recovering txt. From the procedure we can know the input is just a windows7 RAM image and the output is the text documents opened by Notepad. MoonSols DumpIt is a fusion of win32dd and win64dd in one executable. No option is asked to the end-user only double click on the executable is enough to generate a copy of the physical memory in the current directory and the dump image is a raw format. So, firstly examiners can use the MoonSols DumpIt tool to dump the memory image from the target running machine. As the image is raw format we can also use the windbg to debug this dump image. Then uses methods describe in the next the Eprocess structure of Notepad progress can location successfully. The item VadRoot in the Eprocess is a ptr32 pointer which point to a MMAVL TABLE structure. The first item of the MMAVL TABLE is MMADDRESS NODE which is the component of MMVAD and the two of them can transform easily. All the MMVAD node makes up a VAD tree. In MMVAD the items of the StartingVPN and the EndingVPN tell us the virtual address space. The virtual space is start in (StartingVPN*0x18) and end with (EndingVPN*0x18+0xfff). So use the address translation examiners can get the physical address space. The InloadOrderModuleList is the item of PEB LDR DATA. So the all module loaded could be acquired by traversing the link list which head point by InloadOrderModuleList. Then the space that used by the loaded can be get and the left space is used for stack section or data section. Just as Fig. 2 describe the main process is to create the VAD tree about Notepad, the information of the VAD node is used to identify the memory space of the progress forensics.

5 T. Xiao et al. /Journal of Computational Information Systems 10: 16 (2014) Address translation In the period of image analysis the operation of addresses is frequent, but these addresses are virtual address. Windows uses virtual addresses to abstract the memory storage system from the rest of the operating system and other programs. The operating system presents each program with a large private virtual address space. The Windows system will translates the virtual address into a physical address when a program references a virtual address. Windows use the virtual memory mechanism, so the data that the process request in the runtime could be in main memory or on the disk. This paper did not take the data in the disk into account, if you want take this part data into account, you can use the FTK Imager tool to get the memory image which can get the swap out data in the disk [11]. The virtual address is split into three main sections including page directory index, page table index and byte index. Address translation is generally a three stage procedure. Every process on a Windows system maintains a DirectoyTableBase variable. On an x86 systems this value is stored in the CR3 register when the process is running. This value contains the base address of the table of Page Directory Entries (PDES) for that process. The page directory index is used to locate the PDE address. The PDE is used to locate the base address of a page of Page Table Entries (PTEs). Combination with the page table index examiners can get the PTE. The physical address can easy get by combination PTE and byte index. As shown in the Fig. 3, the virtual address is the 32 bit the system used; pde value is the content which pointed by the PDE; same as it, pte value is the value which pointed by the PDE; physical address is the address which really in the windows physical memory. 4.2 Find eprocess Windows system will create an Eprocess as soon as get the user s running program request. So the Eprocess is the only one structure can stand for a program. The method this paper proposed must locate the Notepad Eprocess. Then use the information of Eprocess and the relationship between the kernel objects to reconstruct the address space. There are two methods can be used to location the Eprocess. First, as we all know, every windows kernel object has an object header and the Eprocess has a header too. We use the debug tool windbg s dt command to debug the structure of Eprocess. Then we find that the Eprocess s head is a DISPATCHER HEADER. The magic number of the DISPATCHER HEADER is 0x and ExitStatus of an Eprocess is always 0x So use this rule can location the Eprocess successfully. The item ActiveProcessLinks in the Eprocess links all Eprocesses into a double linked list, so the Eprocess double link list can acquire by the KPCR. 4.3 Traverse VAD tree As the Fig. 4 shown we can get the VADRoot when the Eprocess has been located successfully. Then use the address translation function to calculate the physical address and go to the physical offset pointed by VADRoot. After great number of the experiments, it is show that the VADRoot not point the VAD tree s root, because the item LeftChild of the node pointed by VADRoot was always NULL. And we discovered that the item RightChild of the node pointed by VADRoot point to the root of VAD tree. So the VADRoot does not point to the VAD tree root node just

6 7122 T. Xiao et al. /Journal of Computational Information Systems 10: 16 (2014) point to the head of the VAD tree where some flag of VAD tree stored. Corresponding the items LeftChild, RightChild, StartingVpn, EndingVpn would get. Once the LeftChild and RightChild acquired and their value is not null traversing the child tree recursively. After go through the VAD tree we can get virtual space the progress used. CR3 Page Directory index Page Table Index Byte Index Physical Address 0X84c53e63(VADRoot) 0x x NULL 0X84c49e50 0x760b0000-0x76183fff Page Directory Entry Page Table Entry 0X848c4260 0x00a x0163ffff 0x84c511f8 0x x76578fff 0x84c1ad30(data section) 0x002d0000-0x003cffff 0X848c4260(NotePad.exe) 0x00a x00a3ffff Fig. 3: Address translating Fig. 4: Portion of VAD tree 4.4 Reconstructing notepad process space Once the VAD tree has been established, we can use the tool vadinfo.py to display the info of each VAD node. The loaded model is linked as a double linked list and it was pointed by InLoadOrderModuleList. So the VAD node which has been used by the system can know. After a serious experiment we find that the progress Notepad s data section always managed by the VAD node which flag is PAGE READWRITE and the data is always in the biggest one. So combination the two features the text document could be acquired and recovered. One thing need pay attention to is data in windows memory use Unicode encoding while it use ANSI in disk image. 5 Evaluating Experiments Several experiments were performed to testing the effect of the method proposed by this paper. It proved that acquiring some text document from the memory is possible. We can get all the system Eprocess physical location and use the Eprocess we can refactoring the progress memory space and do some recovery or forensics. At last the text document has been recovered from the memory image successfully. 5.1 Find norepad.exe eprocess and traverse the VAD tree Locating the Eprocess physical address is the most important step in our method. Use the method mentioned above the Notepad.exe s Eprocess is found successfully. The target windows7

7 T. Xiao et al. /Journal of Computational Information Systems 10: 16 (2014) machine use little-endian pattern. As Fig. 5 shown, the physical address of the Notepad.exe is 0x3E453BE8. The Flink is 0x84A938F0 which point to next Eprocess. The DTB is 0x1D4EC000 and the PID is 0x000007C0. The Fig. 5 shows that the Notepad.exe Eprocess has been found successfully. From the Eprocess we can get the VADRoot is 0x84C53E630. After address translation we can get the physical address is 0x3E453E60. Then we could get the VAD tree s root virtual address is 0X84C99E50. Then the VAD tree s root node could establish. Then set up the VAD tree recursively. Then result is shown in Fig. 6. The location mean the VAD node virtual address, start vpn mean the start of the virtual page number and end vpn mean the end of the virtual page number. So the virtual address space could get. Meanwhile we must calculate every page s address space. It means that the address continue in virtual address space does not continue in physical address. Fig. 5: Acquiring the Eprocess of Notepad.exe Fig. 6: Acquiring the Notepad.exe VAD tree node 5.2 Text document recovery In this paper we create a text document and edit it by Notepad. Then we dump the memory image and try to recover the text document. At last, classified the node is needed because the high 2GB address space is system address space. So the text document is in the low 2GB address for it is user data. It means the VAD node whose start vpn greater than 0x is not eligible. At last we find that the node start with 0x2D0 and end with 0x3CF is the first eligible node. In some paper the think that the physical address space is continuous, but after a serious experiment we find that the address translation must one by one. The recovery result is show in Fig. 7 and as space limited not all the content has shown and Fig. 8 show the txt document opened by Notepad. Compared with other memory forensics tools, such as Encase and Volatility, the proposed method can acquire process data directly and accuracy. 6 Conclusion In this paper, we proposed a method to acquire the text document from the memory. As shown, it is possible to reconstruct progress memory space by using the VAD tree and then recover some

8 7124 T. Xiao et al. /Journal of Computational Information Systems 10: 16 (2014) Fig. 7: The result of the recovered text document Fig. 8: The txt opened by notepad data from the image memory. Recover text document form memory is a good example for the Windows Memory Forensics technology applies. Meanwhile if the disassembly technologies can combine with the Windows Memory Forensics technology more information will be found soon. The method put forward in this paper can also be used to reconstruct other process s memory space, so it can also find other sensitive information in the memory image. Such as the record of web surfing, the opening program, the loaded model and so on. Acknowledgement This work is supported by the Natural Science Foundation Natural Science Foundation of China under Grant No , the Zhejiang Province key industrial projects in the priority themes of China under Grant No. 2010C11050, the Zhejiang Province Natural Science Foundation of China under Grant No. LY12F02006, the science and technology search planned projects of Zhejiang Province under Grant No. 2012C21040, the soft science research project of Hangzhou under Grant No M15. References [1] Stefan Vomel, Johannes Stttgen, An evaluation platform for forensic memory acquisition software. Digital Investigation, : p. S30-S40. [2] Stefan Vomel, Freiling F C. Correctness, atomicity, and integrity: Defining criteria for forensicallysound memory acquisition. Digital Investigation, (2): p [3] Challenge, D.F., [4] Petroni Jr N L, Walters A A, Fraser T, et al. FATKit: A framework for the extraction and analysis of digital forensic data from volatile system memory [J]. Digital Investigation, 2006, 3(4): [5] Schuster, A., Searching for processes and threads in Microsoft Windows memory dumps. digital investigation, : p [6] Framework, T.V., [7] Dolan-Gavitt, B., Forensic analysis of the Windows registry in memory. Digital Investigation, : p. S26-S32. [8] Dolan-Gavitt, B., The VAD tree: A process-eye view of physical memory. Digital Investigation, : p [9] Gao, Y. and T. Cao, Memory forensics for qq from a live system. Journal of Computers, (4): p [10] Zhang, S., et al. Exploratory study on memory analysis of windows 7 operating system [11] Kornblum, J.D., Using every part of the buffalo in Windows memory analysis. Digital Investigation, (1): p

Reconstructing the Scene of the Crime

Reconstructing the Scene of the Crime Reconstructing the Scene of the Crime Who are they? STEVE DAVIS PETER SILBERMAN Security Consultant / Researcher at MANDIANT Engineer / Researcher at MANDIANT Agenda ½ Demo Pop it like its hotttt Problem

More information

Physical Memory Forensics for Files and Cache. Jamie Butler and Justin Murdock

Physical Memory Forensics for Files and Cache. Jamie Butler and Justin Murdock Physical Memory Forensics for Files and Cache Jamie Butler and Justin Murdock BIOGRAPHY» Jamie Butler Director of Research and Development at MANDIANT Focused on Host Analysis and Operating Systems Research»

More information

Network Connections Information Extraction of 64-Bit

Network Connections Information Extraction of 64-Bit Network Connections Information Extraction of 64-Bit Windows 7 Memory Images Lianhai Wang *, Lijuan Xu, and Shuhui Zhang Shandong Provincial Key Laboratory of Computer Network, Shandong Computer Science

More information

A Recovery Approach for SQLite History Recorders from YAFFS2

A Recovery Approach for SQLite History Recorders from YAFFS2 A Recovery Approach for SQLite History Recorders from YAFFS2 Beibei Wu, Ming Xu, Haiping Zhang, Jian Xu, Yizhi Ren, and Ning Zheng College of Computer, Hangzhou Dianzi University, Hangzhou 310018 Jhw_1314@126.com,{mxu,zhanghp}@hdu.edu.cn

More information

Data correlation-based analysis methods for automatic memory forensic

Data correlation-based analysis methods for automatic memory forensic SECURITY AND COMMUNICATION NETWORKS Security Comm. Networks 2015; 8:4213 4226 Published online 6 September 2015 in Wiley Online Library (wileyonlinelibrary.com)..1337 RESEARCH ARTICLE Data correlation-based

More information

Acquisition of Network Connection Status Information from Physical Memory on Windows Vista Operating System

Acquisition of Network Connection Status Information from Physical Memory on Windows Vista Operating System Acquisition of Network Connection Status Information from Physical Memory on Windows Vista Operating System Lijuan Xu, Lianhai Wang, Lei Zhang, and Zhigang Kong Shandong Provincial Key Laboratory of Computer

More information

Windows Memory Analysis. Jesse Kornblum

Windows Memory Analysis. Jesse Kornblum C Y B E R S E C T O R Windows Memory Analysis Jesse Kornblum Why Memory Analysis Windows without Windows Gathering Information Parsing the Processes The Rootkit Paradox Address Translation Recovering Executables

More information

Physical Memory File Extraction Based on File Object Analysis

Physical Memory File Extraction Based on File Object Analysis Physical Memory File Extraction Based on File Object Analysis Youngbok Kang(K-dupe) with Phd Hyunuk Hwang and Phd Kibom Kim Chonnam National University SSRC Content Background File Object Analysis File

More information

A little journey inside Windows memory

A little journey inside Windows memory A little journey inside Windows memory Damien AUMAITRE damien(at)security-labs.org damien.aumaitre(at)sogeti.com D.Aumaitre - SOGETI/ESEC A little journey inside Windows memory 1 / 32 Agenda Segmentation

More information

Memory Analysis. CSF: Forensics Cyber-Security. Part II. Basic Techniques and Tools for Digital Forensics. Fall 2018 Nuno Santos

Memory Analysis. CSF: Forensics Cyber-Security. Part II. Basic Techniques and Tools for Digital Forensics. Fall 2018 Nuno Santos Memory Analysis Part II. Basic Techniques and Tools for Digital Forensics CSF: Forensics Cyber-Security Fall 2018 Nuno Santos Previous classes Files, steganography, watermarking Source of digital evidence

More information

IDENTIFYING VOLATILE DATA FROM MULTIPLE MEMORY DUMPS IN LIVE FORENSICS

IDENTIFYING VOLATILE DATA FROM MULTIPLE MEMORY DUMPS IN LIVE FORENSICS Chapter 13 IDENTIFYING VOLATILE DATA FROM MULTIPLE MEMORY DUMPS IN LIVE FORENSICS Frank Law, Patrick Chan, Siu-Ming Yiu, Benjamin Tang, Pierre Lai, Kam-Pui Chow, Ricci Ieong, Michael Kwan, Wing-Kai Hon

More information

Source: https://articles.forensicfocus.com/2018/03/02/evidence-acquisition-using-accessdata-ftk-imager/

Source: https://articles.forensicfocus.com/2018/03/02/evidence-acquisition-using-accessdata-ftk-imager/ by Chirath De Alwis Source: https://articles.forensicfocus.com/2018/03/02/evidence-acquisition-using-accessdata-ftk-imager/ Forensic Toolkit or FTK is a computer forensics software product made by AccessData.

More information

A Recovery Approach for SQLite History Recorders from YAFFS2

A Recovery Approach for SQLite History Recorders from YAFFS2 A Recovery Approach for SQLite History Recorders from YAFFS2 Beibei Wu, Ming Xu, Haiping Zhang, Jian Xu, Yizhi Ren, Ning Zheng To cite this : Beibei Wu, Ming Xu, Haiping Zhang, Jian Xu, Yizhi Ren, et al..

More information

ANALYSIS AND VALIDATION

ANALYSIS AND VALIDATION UNIT V ANALYSIS AND VALIDATION Validating Forensics Objectives Determine what data to analyze in a computer forensics investigation Explain tools used to validate data Explain common data-hiding techniques

More information

An Introduction to Incident Detection and Response Memory Forensic Analysis

An Introduction to Incident Detection and Response Memory Forensic Analysis An Introduction to Incident Detection and Response Memory Forensic Analysis Alexandre Dulaunoy - TLP:WHITE a@foo.be February 11, 2016 An overview to incident response Detection Analysis Containment Investigation

More information

Machine Language and System Programming

Machine Language and System Programming زبان ماشين وبرنامه نويسی سيستم Machine Language and System Programming جلسه دوازدھم دانشگاه صنعتی ھمدان پاييز 1389 Objectives Explain the purpose and structure of file systems Describe Microsoft file structures

More information

Computer Forensics: Investigating Data and Image Files, 2nd Edition. Chapter 3 Forensic Investigations Using EnCase

Computer Forensics: Investigating Data and Image Files, 2nd Edition. Chapter 3 Forensic Investigations Using EnCase Computer Forensics: Investigating Data and Image Files, 2nd Edition Chapter 3 Forensic Investigations Using EnCase Objectives After completing this chapter, you should be able to: Understand evidence files

More information

Live Response for Windows Systems

Live Response for Windows Systems Live Response for Windows Systems Matt Churchill Douglas County Sheriff s Office NebraskaCERT Conference 2007 Agenda Who am I? What is live response? Why is it important? What info can we acquire? What

More information

Virtual Memory 1. Virtual Memory

Virtual Memory 1. Virtual Memory Virtual Memory 1 Virtual Memory key concepts virtual memory, physical memory, address translation, MMU, TLB, relocation, paging, segmentation, executable file, swapping, page fault, locality, page replacement

More information

Virtual Memory 1. Virtual Memory

Virtual Memory 1. Virtual Memory Virtual Memory 1 Virtual Memory key concepts virtual memory, physical memory, address translation, MMU, TLB, relocation, paging, segmentation, executable file, swapping, page fault, locality, page replacement

More information

Windows 7 Overview. Windows 7. Objectives. The History of Windows. CS140M Fall Lake 1

Windows 7 Overview. Windows 7. Objectives. The History of Windows. CS140M Fall Lake 1 Windows 7 Overview Windows 7 Overview By Al Lake History Design Principles System Components Environmental Subsystems File system Networking Programmer Interface Lake 2 Objectives To explore the principles

More information

PROCESS VIRTUAL MEMORY PART 2. CS124 Operating Systems Winter , Lecture 19

PROCESS VIRTUAL MEMORY PART 2. CS124 Operating Systems Winter , Lecture 19 PROCESS VIRTUAL MEMORY PART 2 CS24 Operating Systems Winter 25-26, Lecture 9 2 Virtual Memory Abstraction Last time, officially introduced concept of virtual memory Programs use virtual addresses to refer

More information

Windows Memory Forensics and Direct Kernel Object Manipulation. Jesse Kornblum

Windows Memory Forensics and Direct Kernel Object Manipulation. Jesse Kornblum Windows Memory Forensics and Direct Kernel Object Manipulation Jesse Kornblum Outline Introduction The Kernel Direct Kernel Object Manipulation Standard DKOM Devious DKOM Better Magic Relations Between

More information

An Evaluation Platform for Forensic Memory Acquisition Software

An Evaluation Platform for Forensic Memory Acquisition Software DIGITAL FORENSIC RESEARCH CONFERENCE An Evaluation Platform for Forensic Memory Acquisition Software By Stefan Voemel and Johannes Stuttgen Presented At The Digital Forensic Research Conference DFRWS 2013

More information

CS 537: Introduction to Operating Systems Fall 2015: Midterm Exam #1

CS 537: Introduction to Operating Systems Fall 2015: Midterm Exam #1 CS 537: Introduction to Operating Systems Fall 2015: Midterm Exam #1 This exam is closed book, closed notes. All cell phones must be turned off. No calculators may be used. You have two hours to complete

More information

ECE 550D Fundamentals of Computer Systems and Engineering. Fall 2017

ECE 550D Fundamentals of Computer Systems and Engineering. Fall 2017 ECE 550D Fundamentals of Computer Systems and Engineering Fall 2017 The Operating System (OS) Prof. John Board Duke University Slides are derived from work by Profs. Tyler Bletsch and Andrew Hilton (Duke)

More information

Announcement. Exercise #2 will be out today. Due date is next Monday

Announcement. Exercise #2 will be out today. Due date is next Monday Announcement Exercise #2 will be out today Due date is next Monday Major OS Developments 2 Evolution of Operating Systems Generations include: Serial Processing Simple Batch Systems Multiprogrammed Batch

More information

VMMF: Virtual Machine Memory Forensics Based on Event Trigger Mechanism

VMMF: Virtual Machine Memory Forensics Based on Event Trigger Mechanism 2016 International Conference on Electronic Information Technology and Intellectualization (ICEITI 2016) ISBN: 978-1-60595-364-9 VMMF: Virtual Machine Memory Forensics Based on Event Trigger Mechanism

More information

memory management Vaibhav Bajpai

memory management Vaibhav Bajpai memory management Vaibhav Bajpai OS 2013 motivation virtualize resources: multiplex CPU multiplex memory (CPU scheduling) (memory management) why manage memory? controlled overlap processes should NOT

More information

Introduction to Volume Analysis, Part I: Foundations, The Sleuth Kit and Autopsy. Digital Forensics Course* Leonardo A. Martucci *based on the book:

Introduction to Volume Analysis, Part I: Foundations, The Sleuth Kit and Autopsy. Digital Forensics Course* Leonardo A. Martucci *based on the book: Part I: Foundations, Introduction to Volume Analysis, The Sleuth Kit and Autopsy Course* Leonardo A. Martucci *based on the book: File System Forensic Analysis by Brian Carrier LAM 2007 1/12h Outline Part

More information

The Early System Start-Up Process. Group Presentation by: Tianyuan Liu, Caiwei He, Krishna Parasuram Srinivasan, Wenbin Xu

The Early System Start-Up Process. Group Presentation by: Tianyuan Liu, Caiwei He, Krishna Parasuram Srinivasan, Wenbin Xu The Early System Start-Up Process Group Presentation by: Tianyuan Liu, Caiwei He, Krishna Parasuram Srinivasan, Wenbin Xu 1 Boot Process Booting is the initialization of a computerized system In Linux,

More information

Virtual to physical address translation

Virtual to physical address translation Virtual to physical address translation Virtual memory with paging Page table per process Page table entry includes present bit frame number modify bit flags for protection and sharing. Page tables can

More information

Matthieu Suiche Founder, MoonSols SARL

Matthieu Suiche Founder, MoonSols SARL Matthieu Suiche Founder, MoonSols SARL msuiche@moonsols.com Founder of MoonSols SARL, based in France Various security services, Forensics Products, Trainings, Kernel code consulting Co-Organizer of Hackito

More information

CS24: INTRODUCTION TO COMPUTING SYSTEMS. Spring 2015 Lecture 23

CS24: INTRODUCTION TO COMPUTING SYSTEMS. Spring 2015 Lecture 23 CS24: INTRODUCTION TO COMPUTING SYSTEMS Spring 205 Lecture 23 LAST TIME: VIRTUAL MEMORY! Began to focus on how to virtualize memory! Instead of directly addressing physical memory, introduce a level of

More information

User Space Memory Analysis

User Space Memory Analysis User Space Memory Analysis Master s Thesis University of Twente Author: Edwin Smulders Committee: dr. J.Y. Petit prof. dr. P.H. Hartel R.B. van Baar, MSc (NFI) November 13, 2013 Contents 1 Introduction

More information

Accepted Manuscript. Modern windows hibernation file analysis. Joe T. Sylve, Vico Marziale, Golden G. Richard, III

Accepted Manuscript. Modern windows hibernation file analysis. Joe T. Sylve, Vico Marziale, Golden G. Richard, III Accepted Manuscript Modern windows hibernation file analysis Joe T. Sylve, Vico Marziale, Golden G. Richard, III PII: S1742-2876(16)30148-7 DOI: 10.1016/j.diin.2016.12.003 Reference: DIIN 655 To appear

More information

IA32/Linux Virtual Memory Architecture

IA32/Linux Virtual Memory Architecture IA32/Linux Virtual Memory Architecture Basic Execution Environment Application Programming Registers General-purpose registers 31 0 EAX AH AL EBX BH BL ECX CH CL EDX DH DL EBP ESI EDI BP SI DI Segment

More information

CS24: INTRODUCTION TO COMPUTING SYSTEMS. Spring 2018 Lecture 23

CS24: INTRODUCTION TO COMPUTING SYSTEMS. Spring 2018 Lecture 23 CS24: INTRODUCTION TO COMPUTING SYSTEMS Spring 208 Lecture 23 LAST TIME: VIRTUAL MEMORY Began to focus on how to virtualize memory Instead of directly addressing physical memory, introduce a level of indirection

More information

Digital Investigation

Digital Investigation Digital Investigation 18 (2016) S23eS32 Contents lists available at ScienceDirect Digital Investigation journal homepage: www.elsevier.com/locate/diin DFRWS USA 2016 d Proceedings of the 16th Annual USA

More information

Windows Forensics Advanced

Windows Forensics Advanced Windows Forensics Advanced Index: CF102 Description Windows Forensics - Advanced is the next step for forensics specialists, diving deeper into diverse processes on Windows OS serving computer investigators.

More information

Process Description and Control

Process Description and Control Process Description and Control 1 summary basic concepts process control block process trace process dispatching process states process description process control 2 Process A program in execution (running)

More information

Applications of. Virtual Memory in. OS Design

Applications of. Virtual Memory in. OS Design Applications of Virtual Memory in OS Design Nima Honarmand Introduction Virtual memory is a powerful level of indirection Indirection: IMO, the most powerful concept in Computer Science Fundamental Theorem

More information

Locating 386 paging structures in memory images

Locating 386 paging structures in memory images digital investigation 7 (2010) 28e37 available at www.sciencedirect.com journal homepage: www.elsevier.com/locate/diin Locating 386 paging structures in memory images Karla Saur*, Julian B. Grizzard The

More information

Microsoft File Allocation Table

Microsoft File Allocation Table Microsoft File Allocation Table CSC362, Information Security originally appeared in late 1970s for small disks with simple folder structures uses a FAT to index files (naturally) the original FAT- 12 gave

More information

CSN08101 Digital Forensics. Module Leader: Dr Gordon Russell Lecturers: Robert Ludwiniak

CSN08101 Digital Forensics. Module Leader: Dr Gordon Russell Lecturers: Robert Ludwiniak CSN08101 Digital Forensics Lecture 8: File Systems Module Leader: Dr Gordon Russell Lecturers: Robert Ludwiniak Objectives Investigative Process Analysis Framework File Systems FAT NTFS EXT2/EXT3 last

More information

ENCM 369 Winter 2016 Lab 11 for the Week of April 4

ENCM 369 Winter 2016 Lab 11 for the Week of April 4 page 1 of 13 ENCM 369 Winter 2016 Lab 11 for the Week of April 4 Steve Norman Department of Electrical & Computer Engineering University of Calgary April 2016 Lab instructions and other documents for ENCM

More information

Structural Analysis of the Log Files of the ICQ Client Version 2003b

Structural Analysis of the Log Files of the ICQ Client Version 2003b Edith Cowan University Research Online Australian Digital Forensics Conference Conferences, Symposia and Campus Events 2006 Structural Analysis of the Log Files of the ICQ Client Version 2003b Kim Morfitt

More information

Threads Implementation. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

Threads Implementation. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University Threads Implementation Jin-Soo Kim (jinsookim@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Today s Topics How to implement threads? User-level threads Kernel-level

More information

Introduction to Memory Forensics

Introduction to Memory Forensics I An Introduction to Memory Forensics Chapter 1: Systems Overview Chapter 2: Data Structures Chapter 3: The Volatility Framework Chapter 4: Memory Acquisition COPYRIGHTED MATERIAL 1 Systems Overview This

More information

CS 61 Section Notes 5

CS 61 Section Notes 5 CS 61 Section Notes 5 (Week of 10/22-10/26) Topics: Dangerous Instructions and Process Isolation Virtual Memory Memory Mapping Address Translation Some numbers Some Terms Processes and Fork What is a process?

More information

Sources of Evidence. CSF: Forensics Cyber-Security. Part I. Foundations of Digital Forensics. Fall 2015 Nuno Santos

Sources of Evidence. CSF: Forensics Cyber-Security. Part I. Foundations of Digital Forensics. Fall 2015 Nuno Santos Sources of Evidence Part I. Foundations of Digital Forensics CSF: Forensics Cyber-Security Fall 2015 Nuno Santos Summary Reasoning about sources of evidence Data representation and interpretation Number

More information

Capturing RAM. Alex Applegate. Mississippi State University Digital Forensics 1

Capturing RAM. Alex Applegate. Mississippi State University Digital Forensics 1 Capturing RAM Alex Applegate 1 Overview Capture Problems Causing a Process Dump Full Manual Memory Dump Binary Block Copy Tribble Cold Boot Recovery Firewire DMA Attack 2 Capture Problems RAM has many

More information

Virtual Memory #2 Feb. 21, 2018

Virtual Memory #2 Feb. 21, 2018 15-410...The mysterious TLB... Virtual Memory #2 Feb. 21, 2018 Dave Eckhardt Brian Railing 1 L16_VM2 Last Time Mapping problem: logical vs. physical addresses Contiguous memory mapping (base, limit) Swapping

More information

The Performance Analysis of a Service Deployment System Based on the Centralized Storage

The Performance Analysis of a Service Deployment System Based on the Centralized Storage The Performance Analysis of a Service Deployment System Based on the Centralized Storage Zhu Xu Dong School of Computer Science and Information Engineering Zhejiang Gongshang University 310018 Hangzhou,

More information

Registry Analysis and Memory Forensics: Together at Last. Brendan Dolan-Gavitt Georgia Institute of Technology

Registry Analysis and Memory Forensics: Together at Last. Brendan Dolan-Gavitt Georgia Institute of Technology Registry Analysis and Memory Forensics: Together at Last Brendan Dolan-Gavitt Georgia Institute of Technology Who I Am Developer on Volatility project Grad student and researcher at Georgia Tech Author

More information

PROCESS VIRTUAL MEMORY. CS124 Operating Systems Winter , Lecture 18

PROCESS VIRTUAL MEMORY. CS124 Operating Systems Winter , Lecture 18 PROCESS VIRTUAL MEMORY CS124 Operating Systems Winter 2015-2016, Lecture 18 2 Programs and Memory Programs perform many interactions with memory Accessing variables stored at specific memory locations

More information

Process Manager Overview

Process Manager Overview Process Management Process Manager Overview Program Process Abstract Computing Environment Device Manager File Manager Memory Manager Deadlock Protection Synchronization Scheduler Process Description Resource

More information

INFORMATION SECURITY - PRACTICAL ASSESSMENT - BASICS IN BUFFER EXPLOITATION

INFORMATION SECURITY - PRACTICAL ASSESSMENT - BASICS IN BUFFER EXPLOITATION INFORMATION SECURITY - PRACTICAL ASSESSMENT - BASICS IN BUFFER EXPLOITATION GRENOBLE INP ENSIMAG http://www.ensimag.fr COMPUTER SCIENCE 3RD YEAR IF-MMIS - 1ST SEMESTER, 2011 Lecturers: Fabien Duchene -

More information

Binary Trees. Height 1

Binary Trees. Height 1 Binary Trees Definitions A tree is a finite set of one or more nodes that shows parent-child relationship such that There is a special node called root Remaining nodes are portioned into subsets T1,T2,T3.

More information

Chapter 4: Threads. Chapter 4: Threads

Chapter 4: Threads. Chapter 4: Threads Chapter 4: Threads Silberschatz, Galvin and Gagne 2013 Chapter 4: Threads Overview Multicore Programming Multithreading Models Thread Libraries Implicit Threading Threading Issues Operating System Examples

More information

OPERATING SYSTEM. Chapter 4: Threads

OPERATING SYSTEM. Chapter 4: Threads OPERATING SYSTEM Chapter 4: Threads Chapter 4: Threads Overview Multicore Programming Multithreading Models Thread Libraries Implicit Threading Threading Issues Operating System Examples Objectives To

More information

Understanding FAT12. Introduction to Computer Forensics. Kessler/Schirling

Understanding FAT12. Introduction to Computer Forensics. Kessler/Schirling Understanding FAT12 Introduction to Computer Forensics Kessler/Schirling Fall 2002 EXP 248 Project #3 You have a floppy disk image file Examine floppy to find an address and a password, and verify MD5

More information

Module 1. Introduction:

Module 1. Introduction: Module 1 Introduction: Operating system is the most fundamental of all the system programs. It is a layer of software on top of the hardware which constitutes the system and manages all parts of the system.

More information

Simple idea 1: load-time linking. Our main questions. Some terminology. Simple idea 2: base + bound register. Protection mechanics.

Simple idea 1: load-time linking. Our main questions. Some terminology. Simple idea 2: base + bound register. Protection mechanics. Our main questions! How is protection enforced?! How are processes relocated?! How is ory partitioned? Simple idea 1: load-time linking! Link as usual, but keep the list of references! At load time, determine

More information

! What is main memory? ! What is static and dynamic allocation? ! What is segmentation? Maria Hybinette, UGA. High Address (0x7fffffff) !

! What is main memory? ! What is static and dynamic allocation? ! What is segmentation? Maria Hybinette, UGA. High Address (0x7fffffff) ! Memory Questions? CSCI [4 6]730 Operating Systems Main Memory! What is main memory?! How does multiple processes share memory space?» Key is how do they refer to memory addresses?! What is static and dynamic

More information

14 May 2012 Virtual Memory. Definition: A process is an instance of a running program

14 May 2012 Virtual Memory. Definition: A process is an instance of a running program Virtual Memory (VM) Overview and motivation VM as tool for caching VM as tool for memory management VM as tool for memory protection Address translation 4 May 22 Virtual Memory Processes Definition: A

More information

Sistemi in Tempo Reale

Sistemi in Tempo Reale Laurea Specialistica in Ingegneria dell'automazione Sistemi in Tempo Reale Giuseppe Lipari Introduzione alla concorrenza Fundamentals Algorithm: It is the logical procedure to solve a certain problem It

More information

Design and Implementation of cache protecting from power failure in Disk Array

Design and Implementation of cache protecting from power failure in Disk Array International Conference on Advanced Information and Communication Technology for Education (ICAICTE 2013) Design and Implementation of cache protecting from power failure in Disk Array WANG Endong, HU

More information

Multi-level Translation. CS 537 Lecture 9 Paging. Example two-level page table. Multi-level Translation Analysis

Multi-level Translation. CS 537 Lecture 9 Paging. Example two-level page table. Multi-level Translation Analysis Multi-level Translation CS 57 Lecture 9 Paging Michael Swift Problem: what if you have a sparse address space e.g. out of GB, you use MB spread out need one PTE per page in virtual address space bit AS

More information

Virtual Memory. CS 351: Systems Programming Michael Saelee

Virtual Memory. CS 351: Systems Programming Michael Saelee Virtual Memory CS 351: Systems Programming Michael Saelee registers cache (SRAM) main memory (DRAM) local hard disk drive (HDD/SSD) remote storage (networked drive / cloud) previously: SRAM

More information

Process Description and Control

Process Description and Control Process Description and Control B.Ramamurthy 1/28/02 B.Ramamurthy 1 Introduction The fundamental task of any operating system is process management. OS must allocate resources to processes, enable sharing

More information

Memory Management. Disclaimer: some slides are adopted from book authors slides with permission 1

Memory Management. Disclaimer: some slides are adopted from book authors slides with permission 1 Memory Management Disclaimer: some slides are adopted from book authors slides with permission 1 Recap Paged MMU: Two main Issues Translation speed can be slow TLB Table size is big Multi-level page table

More information

a process may be swapped in and out of main memory such that it occupies different regions

a process may be swapped in and out of main memory such that it occupies different regions Virtual Memory Characteristics of Paging and Segmentation A process may be broken up into pieces (pages or segments) that do not need to be located contiguously in main memory Memory references are dynamically

More information

Advanced Operating Systems

Advanced Operating Systems Advanced Operating Systems File Systems: File Allocation Table, Linux File System, NTFS Lecture 10 Case Studies of File Systems File Allocation Table (FAT) Unix File System Berkeley Fast File System Linux

More information

Review: Easy Piece 1

Review: Easy Piece 1 CS 537 Lecture 10 Threads Michael Swift 10/9/17 2004-2007 Ed Lazowska, Hank Levy, Andrea and Remzi Arpaci-Dussea, Michael Swift 1 Review: Easy Piece 1 Virtualization CPU Memory Context Switch Schedulers

More information

Final Exam. 12 December 2018, 120 minutes, 26 questions, 100 points

Final Exam. 12 December 2018, 120 minutes, 26 questions, 100 points Name: CS520 Final Exam 12 December 2018, 120 minutes, 26 questions, 100 points The exam is closed book and notes. Please keep all electronic devices turned off and out of reach. Note that a question may

More information

Lecture 15: Virtual Memory

Lecture 15: Virtual Memory Lecture 15: Virtual Memory Last Time: Cache wrap-up Virtual memory motivation Today Virtual memory implementations Lecture 15 1 Physical Memory Addressing LW R1,0(R2) CPU Cache DRAM 256MB address 32 bits

More information

Forensic Reverse Engineering with Rekall

Forensic Reverse Engineering with Rekall Forensic Reverse Engineering with Rekall Workshop solutions The following are the workshop solutions. Please try to complete the exercises by yourself first and then consult the solutions. Exercise 1:

More information

Virtual Memory. CS61, Lecture 15. Prof. Stephen Chong October 20, 2011

Virtual Memory. CS61, Lecture 15. Prof. Stephen Chong October 20, 2011 Virtual Memory CS6, Lecture 5 Prof. Stephen Chong October 2, 2 Announcements Midterm review session: Monday Oct 24 5:3pm to 7pm, 6 Oxford St. room 33 Large and small group interaction 2 Wall of Flame Rob

More information

Supporting Operating System Kernel Data Disambiguation using Points-to Analysis

Supporting Operating System Kernel Data Disambiguation using Points-to Analysis Supporting Operating System Kernel Data Disambiguation using Points-to Analysis Amani Ibriham, James Hamlyn-Harris, John Grundy & Mohamed Almorsy Center for Computing and Engineering Software Systems Swinburne

More information

198:231 Intro to Computer Organization. 198:231 Introduction to Computer Organization Lecture 14

198:231 Intro to Computer Organization. 198:231 Introduction to Computer Organization Lecture 14 98:23 Intro to Computer Organization Lecture 4 Virtual Memory 98:23 Introduction to Computer Organization Lecture 4 Instructor: Nicole Hynes nicole.hynes@rutgers.edu Credits: Several slides courtesy of

More information

CODA Online Data Formats

CODA Online Data Formats CODA Online Data Formats Evio Header Formats Bank : 32 bits MSB (31) LSB (0) Length (32 bit words, exclusive) Tag (16 bits) (2) Type (6) Num (8) Segment : Padding Tag (8 bits) (2) Type (6) Length (16)

More information

Hackveda Training - Ethical Hacking, Networking & Security

Hackveda Training - Ethical Hacking, Networking & Security Hackveda Training - Ethical Hacking, Networking & Security Day1: Hacking windows 7 / 8 system and security Part1 a.) Windows Login Password Bypass manually without CD / DVD b.) Windows Login Password Bypass

More information

bytes per disk block (a block is usually called sector in the disk drive literature), sectors in each track, read/write heads, and cylinders (tracks).

bytes per disk block (a block is usually called sector in the disk drive literature), sectors in each track, read/write heads, and cylinders (tracks). Understanding FAT 12 You need to address many details to solve this problem. The exercise is broken down into parts to reduce the overall complexity of the problem: Part A: Construct the command to list

More information

A Finite State Mobile Agent Computation Model

A Finite State Mobile Agent Computation Model A Finite State Mobile Agent Computation Model Yong Liu, Congfu Xu, Zhaohui Wu, Weidong Chen, and Yunhe Pan College of Computer Science, Zhejiang University Hangzhou 310027, PR China Abstract In this paper,

More information

AccessData Advanced Forensics

AccessData Advanced Forensics This advanced five-day course provides the knowledge and skills necessary to install, configure and effectively use Forensic Toolkit (FTK ), FTK Imager Password Recovery Toolkit (PRTK ) and Registry Viewer.

More information

Chapter 2. Index.dat

Chapter 2. Index.dat Chapter 2 Index.dat Internet History Practical Exercise Anatomy of a MSIE / History.IE5\Index.dat File 1. Use WinHEX to open up the file named: \Student Files\02_Internet_History\Index.dat. 2. Let s examine

More information

This lecture is covered in Section 4.1 of the textbook.

This lecture is covered in Section 4.1 of the textbook. This lecture is covered in Section 4.1 of the textbook. A Unix process s address space appears to be three regions of memory: a read-only text region (containing executable code); a read-write region consisting

More information

CS 322 Operating Systems Practice Midterm Questions

CS 322 Operating Systems Practice Midterm Questions ! CS 322 Operating Systems 1. Processes go through the following states in their lifetime. time slice ends Consider the following events and answer the questions that follow. Assume there are 5 processes,

More information

Virtual Memory I. CSE 351 Spring Instructor: Ruth Anderson

Virtual Memory I. CSE 351 Spring Instructor: Ruth Anderson Virtual Memory I CSE 35 Spring 27 Instructor: Ruth Anderson Teaching Assistants: Dylan Johnson Kevin Bi Linxing Preston Jiang Cody Ohlsen Yufang Sun Joshua Curtis Administrivia Midterms Graded If you did

More information

Final Exam. 11 May 2018, 120 minutes, 26 questions, 100 points

Final Exam. 11 May 2018, 120 minutes, 26 questions, 100 points Name: CS520 Final Exam 11 May 2018, 120 minutes, 26 questions, 100 points The exam is closed book and notes. Please keep all electronic devices turned off and out of reach. Note that a question may require

More information

Changelog. Virtual Memory (2) exercise: 64-bit system. exercise: 64-bit system

Changelog. Virtual Memory (2) exercise: 64-bit system. exercise: 64-bit system Changelog Virtual Memory (2) Changes made in this version not seen in first lecture: 21 November 2017: 1-level example: added final answer of memory value, not just location 21 November 2017: two-level

More information

Filesystem. Disclaimer: some slides are adopted from book authors slides with permission 1

Filesystem. Disclaimer: some slides are adopted from book authors slides with permission 1 Filesystem Disclaimer: some slides are adopted from book authors slides with permission 1 Recap Blocking, non-blocking, asynchronous I/O Data transfer methods Programmed I/O: CPU is doing the IO Pros Cons

More information

Filesystem. Disclaimer: some slides are adopted from book authors slides with permission

Filesystem. Disclaimer: some slides are adopted from book authors slides with permission Filesystem Disclaimer: some slides are adopted from book authors slides with permission 1 Recap Directory A special file contains (inode, filename) mappings Caching Directory cache Accelerate to find inode

More information

Introduction to carving File fragmentation Object validation Carving methods Conclusion

Introduction to carving File fragmentation Object validation Carving methods Conclusion Simson L. Garfinkel Presented by Jevin Sweval Introduction to carving File fragmentation Object validation Carving methods Conclusion 1 Carving is the recovery of files from a raw dump of a storage device

More information

Database Applications (15-415)

Database Applications (15-415) Database Applications (15-415) DBMS Internals: Part II Lecture 10, February 17, 2014 Mohammad Hammoud Last Session: DBMS Internals- Part I Today Today s Session: DBMS Internals- Part II Brief summaries

More information

FRAME BASED RECOVERY OF CORRUPTED VIDEO FILES

FRAME BASED RECOVERY OF CORRUPTED VIDEO FILES FRAME BASED RECOVERY OF CORRUPTED VIDEO FILES D.Suresh 1, D.V.Ramana 2, D.Arun Kumar 3 * 1 Assistant Professor, Department of ECE, GMRIT, RAJAM, AP, INDIA 2 Assistant Professor, Department of ECE, GMRIT,

More information

Agenda Process Concept Process Scheduling Operations on Processes Interprocess Communication 3.2

Agenda Process Concept Process Scheduling Operations on Processes Interprocess Communication 3.2 Lecture 3: Processes Agenda Process Concept Process Scheduling Operations on Processes Interprocess Communication 3.2 Process in General 3.3 Process Concept Process is an active program in execution; process

More information

T : Malware Analysis and Antivirus Technologies Windows Operating System

T : Malware Analysis and Antivirus Technologies Windows Operating System T-110.6220: Malware Analysis and Antivirus Technologies Windows Operating System Antti Tikkanen, 17.2.2010 Protecting the irreplaceable f-secure.com Lecture Agenda 1. Applications on Windows 2. Processes

More information

CSE 451 Autumn Final Solutions mean 77.53, median 79, stdev 12.03

CSE 451 Autumn Final Solutions mean 77.53, median 79, stdev 12.03 CSE 451 Autumn 2016 Final Solutions 15 10 5 0 0 10 20 30 40 50 60 70 80 90 100 mean 77.53, median 79, stdev 12.03 I. Warm-up (a) (15 points) Circle true or false for each statement (no need to justify

More information