|Title:||USB stick array : design and implementation of a large scale storage system with discarded USB flash memory sticks|
|Subject:||Hong Kong Polytechnic University -- Dissertations|
Linux device drivers (Computer programs)
Computer storage devices.
Flash memories (Computers)
USB (Computer bus)
Recycling (Waste, etc.)
|Department:||Department of Computing|
|Pages:||viii, 88 leaves : ill. ; 31 cm.|
|Abstract:||This report describes the design and implementation of a large scale storage system with discarded USB flash memory sticks. With fast development of storage technology, more and more electronic products that are out of date become electronic trashes (E-Trash), take an obvious case for example, USB sticks with small capacity like 256M, 512M, or even 1G are not prevalent any more. Thinking with the concept of sustainable development, how to reuse these abandoned USB sticks or even make "E-Trash" become "E-Treasure" is the objective of this project. Based on the objective above, I developed and code software which is a kind of prototype of mapping system that implement a large scale storage system with discarded USB flash memory sticks that can connect multi-USB memory sticks at the time and provide a simple and uniform storage space for users. Some works summarized as below. - Design and coding USB device driver running at Linux Kernel - Design and coding Block device driver as a mapping system, which still running at Linux Kernel - Responsible for system performance enhancement which refers to reduce time consumption of Block I/O transfer. Furthermore, another two types of space management schema are also implemented inside this software system, which are fault-tolerant (or called mirroring schema) and Blocks-level striping space management schema. Because of the limitation of software and hardware that always result in data lost and error, fault-tolerant schema are used for USB memory sticks clone and system backup which could avoid loss of users. Blocks-level striping schema is a kind of simulation with parallel transfer that make it possible for system have a better performance than any transfer with serial. Linux is the platform of this project for several reasons. Firstly, it is an open source system that my software system could run as drivers inside the kernel, which may help for low-level data control. Next, a device model refers to buses, drivers, and devices are mature in Linux system which could supply a lot. A special hardware device with multiple USB channels should be the best platform for this project, besides this, Linux becomes another choice.|
|Rights:||All rights reserved|
Files in This Item:
|b2391094x.pdf||For All Users (off-campus access for PolyU Staff & Students only)||2.18 MB||Adobe PDF||View/Open|
As a bona fide Library user, I declare that:
- I will abide by the rules and legal ordinances governing copyright regarding the use of the Database.
- I will use the Database for the purpose of my research or private study only and not for circulation or further reproduction or any other purpose.
- I agree to indemnify and hold the University harmless from and against any loss, damage, cost, liability or expenses arising from copyright infringement or unauthorized usage.
By downloading any item(s) listed above, you acknowledge that you have read and understood the copyright undertaking as stated above, and agree to be bound by all of its terms.
Please use this identifier to cite or link to this item: