Download presentation
Presentation is loading. Please wait.
1
Design and Implementation of a USB File System for Bare PC Applications
Presented by Dr. Ramesh K. Karne Department of Computer and Information Sciences Towson University Towson, MD 21252, USA (Authors: William Thompson, Ramesh Karne, Sonjie Liang, Alexander Wijesinha, Hamdan Alabsi, and Hojin Chang)
2
History Started in 2001 Motivated by complexity and obsolescence
Frustrated by too many environments Initially funded by NSF grants Over 45 publications and 15 doctoral dissertations Started from scratch and built all BMC code and over a dozen complex applications
3
Related Work Exokernel Bare Metal Linux Nano and Micro Kernels
Lean kernels Sandboxing Palacio and Kitten IO-Lite
4
What is a Bare Machine Computing (BMC)?
A computer application(s) run on a bare computing device (such as a PC) The computing device consists of CPU, Memory, User interfaces such as (Keyboard, Mouse, Monitor, Network card) Application(s) are self contained, self managed The box containing the computing device is known as a bare machine The concept is applicable any computing device
5
BMC Characteristics A Bare Machine is: Ownerless
Valueless, no valuable resources in the bare box Uses detachable or network storage Bootable, loadable and controllable by user application(s) Application(s) are stored on a detachable storage device such as a flash drive There is nothing to damage in the bare machine, other than physical vandalism Super secure, ultimate security for application(s) A bare machine can be placed any place, accessed by anyone without ownership A bare machine application is stable, not prone to obsolescence, contains code that does not depend on other computing environments A bare machine application(s) are totally user controlled and closed systems.
6
What is a bare PC File System?
It is a standard FAT32 compatible file system USB based Runs only on a x86 compatible PCs, can be extended to other CPU architectures by writing direct API The files can be accessible on other OSs Lean, efficient and application driven Resident on detachable devices No OS vulnerabilities Closed system
7
USB Layout
8
Memory Layout
9
Initialization Process
10
File Table Structure
11
File API
12
Use of API
13
USB Parameters and Driver
14
USB Operations
15
USB Analyzer Trace
16
Bare Root Directory
17
Root Directory on USB
18
Bare PC Screen Shot
19
Design Challenges Broad knowledge for a programmer
Device driver knowledge System and application programming Debugging bare code Reducing semantic-gap between application and hardware Integrating with other bare PC applications
20
Further Research Multiple USBs for storage
Integrating with SQLITE database and others Integrating with Web server and Webmail Extending to NFS and other file system protocols Performance comparison with conventional systems Adding security to USB flash drives
21
Conclusions Described internals of a bare PC file system
Presented a novel computing architecture (BMC) Described internals of a bare PC file system Possible use in super-secure applications Bare to bare applications are super-secure Identified further research
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.