Hello All
This is my first time posting here. I was hoping to get some help for my statement of interest. I was hoping some fresh eyes can look at over and provide me with feedback, it will be greatly appreciated.
Thank you so much.
During four years of studying at xxx, I have seen the great changes and benefits that computer architecture and high performance computing have brought to the traditional industry. My experience life started with the internship as a software developer in Hewlett Packard Company, where i design memory efficient software and conduct evaluate and analyze about system optimization. After that I got a chance to work in China Computer Lab to study on high performance computing and embedded file system.
In 2009, I joined the George Washington University to continue my master degree. In recent 5 years, the IT industry is undergoing a revolution caused the rise of smart phone. When I was seeking a higher degree education, I decided my master thesis focus on Android data security research. I developed a data recovery program for Android-based mobile devices that can recover over 90 percentages of modified files without using a backup strategy. Because the data on nand flash will only be erased by garbage collection and nand flash will only erase those oldest and dirtiest blocks, which is the reason why we can recover deleted data from nand flash.
Because nand flash partition is mounted through MTD layer to the upper layer. The first thing we must do is copy all of the data including metadata from nand flash to one image file so we can easily analyze this nand flash drive and perform our recovery program. Therefore I designed a tool called NandUmp based on cross compiled chain to meet this requirement. With my tool, one can dump the different partition through MTD layer with different options, such as setting page
size, on/off dump ECC area, on/off dump out-of-band area.
Because we only have a binary image file with only 1 and 0, we must simulate every part in the system, from hardware, MTD layer, file system and even the application level so as to rebuild the file in Linux environment. Charles Manning (The founder of YAFFS) gave me suggestion to build in main function but I think it is much robust and effective to build it as model in Linux kernel.
The most critical algorithm for recovery is backwards scanning. YAFFS2 marks every newly written block with a sequence number that is monotonically increasing, so the recovery order is opposite to the allocation order for each block. During the recovery, we must scan every valid file header and compare each time stamp to recovery time, and set up fie objects in memory, and then we insert data pages to the right file object. Finally, we cut the file from memory and saved in the disk.
This recovery patent will be processed to US copyright office. Also, several papers have been published in related field conference, such as sampling top-k garbage collection policy in ICCEM 2011, and new write caching algorithm in ICIIP 2011. I just finished the basic framework of the recovery algorithm, and there are many interesting research opportunities for future study, such
as:
xxxx
Recently I have been working with a non-block read function file system with multiversion concurrency control on a nand flash file system by using the copy-on-write to create the snapshot function in the nand flash file system, such as yaffs2 and ubifs. It provides a time- shifting interface that allows a real-time and continuous view of the past. The idea comes from Oracle and MySQL, whose performance exceeds many general file systems. This will allow users to access their file system as it appeared at any point in time. Imagine if your android and iphone mobile phones and tablet could go back to any system commit number. This is done by implementing the multiversion concurrency control in oracle to the nand flash so as to make it "undo" the system to any point in time.
Educational preparations combined with my strong research background, prior working experiences, and forward-looking personality shape me for an outstanding PHD candidate. I have my personal website galaxy-developer.com where post my research news and my development about mobile applications in my spare time.
Yours faithfully,
This is my first time posting here. I was hoping to get some help for my statement of interest. I was hoping some fresh eyes can look at over and provide me with feedback, it will be greatly appreciated.
Thank you so much.
During four years of studying at xxx, I have seen the great changes and benefits that computer architecture and high performance computing have brought to the traditional industry. My experience life started with the internship as a software developer in Hewlett Packard Company, where i design memory efficient software and conduct evaluate and analyze about system optimization. After that I got a chance to work in China Computer Lab to study on high performance computing and embedded file system.
In 2009, I joined the George Washington University to continue my master degree. In recent 5 years, the IT industry is undergoing a revolution caused the rise of smart phone. When I was seeking a higher degree education, I decided my master thesis focus on Android data security research. I developed a data recovery program for Android-based mobile devices that can recover over 90 percentages of modified files without using a backup strategy. Because the data on nand flash will only be erased by garbage collection and nand flash will only erase those oldest and dirtiest blocks, which is the reason why we can recover deleted data from nand flash.
Because nand flash partition is mounted through MTD layer to the upper layer. The first thing we must do is copy all of the data including metadata from nand flash to one image file so we can easily analyze this nand flash drive and perform our recovery program. Therefore I designed a tool called NandUmp based on cross compiled chain to meet this requirement. With my tool, one can dump the different partition through MTD layer with different options, such as setting page
size, on/off dump ECC area, on/off dump out-of-band area.
Because we only have a binary image file with only 1 and 0, we must simulate every part in the system, from hardware, MTD layer, file system and even the application level so as to rebuild the file in Linux environment. Charles Manning (The founder of YAFFS) gave me suggestion to build in main function but I think it is much robust and effective to build it as model in Linux kernel.
The most critical algorithm for recovery is backwards scanning. YAFFS2 marks every newly written block with a sequence number that is monotonically increasing, so the recovery order is opposite to the allocation order for each block. During the recovery, we must scan every valid file header and compare each time stamp to recovery time, and set up fie objects in memory, and then we insert data pages to the right file object. Finally, we cut the file from memory and saved in the disk.
This recovery patent will be processed to US copyright office. Also, several papers have been published in related field conference, such as sampling top-k garbage collection policy in ICCEM 2011, and new write caching algorithm in ICIIP 2011. I just finished the basic framework of the recovery algorithm, and there are many interesting research opportunities for future study, such
as:
xxxx
Recently I have been working with a non-block read function file system with multiversion concurrency control on a nand flash file system by using the copy-on-write to create the snapshot function in the nand flash file system, such as yaffs2 and ubifs. It provides a time- shifting interface that allows a real-time and continuous view of the past. The idea comes from Oracle and MySQL, whose performance exceeds many general file systems. This will allow users to access their file system as it appeared at any point in time. Imagine if your android and iphone mobile phones and tablet could go back to any system commit number. This is done by implementing the multiversion concurrency control in oracle to the nand flash so as to make it "undo" the system to any point in time.
Educational preparations combined with my strong research background, prior working experiences, and forward-looking personality shape me for an outstanding PHD candidate. I have my personal website galaxy-developer.com where post my research news and my development about mobile applications in my spare time.
Yours faithfully,