Interoperable SQLite for a Bare PC

  • William Thompson
  • Ramesh Karne
  • Alexander Wijesinha
  • Hojin Chang
Conference paper
Part of the Communications in Computer and Information Science book series (CCIS, volume 716)

Abstract

SQLite, a widely used database engine, has been previously transformed to run on a bare PC without the support of any OS or kernel. However, the transformed SQLite database was stored in main memory i.e., it had no file system. This paper extends the transformation process to enable bare PC SQLite to work with standard file system interfaces based on the FAT32 file specification. It further presents mechanisms and programming interfaces for a bare machine file system integrated with SQLite that uses a removable USB flash drive. The bare SQLite database and file system can interoperate with conventional OS-based database systems. It can be adapted in the future to work with bare Web browsers, large bare databases, other bare applications, and bare mobile devices.

Keywords

SQLite Transformation Interoperability Performance 

References

  1. 1.
  2. 2.
    The SQLite OS interface or VFS. http://www.sqlite.org/vfs.html
  3. 3.
    Universal Serial Bus mass storage class, bulk only transport, revision 1.0 (1999). http://www.usb.org
  4. 4.
    Appiah-Kubi, P., Karne, R.K., Wijesinha, A.L.: The design and performance of a bare PC Webmail Server. In: 12th IEEE International Conference on High Performance Computing and Communications, AHPCC 2010, Melbourne, Australia, pp. 521–526 (2010)Google Scholar
  5. 5.
    Engler, D.R., Kaashoek, M.: Exterminate all operating system abstractions. In: 5th Workshop on Hot Topics in Operating Systems, p. 78. USENIX (1995)Google Scholar
  6. 6.
    Ford, G.H., Karne, R.K., Wijesinha, A.L., Appiah-Kubi, P.: The design and implementation of a bare PC email server. In: 33rd Annual IEEE International Computer Software and Applications Conference (COMPSAC), pp. 480–485 (2009)Google Scholar
  7. 7.
    He, L., Karne, R.K., Wijesinha, A.L.: The design and performance of a bare PC Web server. Int. J. Comput. Appl. (IJCA) 15(2), 100–112 (2008)Google Scholar
  8. 8.
    Intel Corporation: Enhanced host controller interface specification for Universal Serial Bus (2002). http://www.intel.com/technology/usb/download/ehci-r10.pdf
  9. 9.
    Karne, R.K., Jaganathan, K.V., Ahmed, T.: How to run C++ applications on a bare PC. In: 6th ACIS International Conference on Proceedings of SNPD 2005, pp. 50–55, IEEE (2005)Google Scholar
  10. 10.
    Karne, R.K., Jaganathan, K.V., Rosa, N., Ahmed, T.: DOSC: dispersed operating system computing. In: 20th Annual ACM Conference on Object Oriented Programming, Systems, Languages, and Applications (OOPSLA), pp. 55–61 (2005)Google Scholar
  11. 11.
    Karne, R.K., Liang, S., Wijesinha, A.L., Appiah-Kubi, P.: A bare PC mass storage USB device driver. Int. J. Comput. Appl. 20(1), 32–45 (2013)Google Scholar
  12. 12.
    Lange, J., et al.: Palacios and Kitten: new high performance operating systems for scalable virtualized and native supercomputing. In: 24th IEEE International Parallel and Distributed Processing Symposium (2010)Google Scholar
  13. 13.
    Liang, S., Karne, R.K., Wijesinha, A.L.: A lean USB file system for bare machine applications. In: Proceedings of 21st International Conference on Software Engineering and Data Engineering, ISCA, pp. 191–196 (2012)Google Scholar
  14. 14.
    Microsoft Corp.: FAT32 file system specification (2000). http://microsoft.com/whdc/system/platform/firmware/fatgn.rnspx
  15. 15.
    Okafor, U., Karne, R., Wijesinha, A., Appiah-Kubi, P.: A methodology to transform an OS-based application to a bare machine application. In: 12th IEEE International Conference on Ubiquitous Computing and Communications (IUCC-2013), Melbourne, Australia (2013)Google Scholar
  16. 16.
    Okafor, U., Karne, R.K., Wijesinha, A.L., Rawal, B.: Transforming SQLITE to run on a bare PC. In: Proceedings of 7th International Conference on Software Paradigm Trends, Rome, Italy, pp. 311–314 (2012)Google Scholar
  17. 17.
    Perisoft Corp.: Universal serial bus specification 2.0. http://www.perisoft.net/engineer/usb_-20.pdf
  18. 18.
    Rawal, B., Karne, R., Wijesinha, A.L.: Splitting HTTP requests on two servers. In: 3rd Conference on Communication Systems and Networks (COMSNETS) (2011)Google Scholar
  19. 19.
    Rawal, B., Karne, R.K., Wijesinha, A.L.: Mini web server clusters for HTTP request splitting. In: IEEE International Conference on High Performance, Computing and Communications (HPCC), pp. 94–100 (2011)Google Scholar
  20. 20.
    Rezende, F.F., Hergula, K.: The heterogeneity problem and middleware technology: experiences with and performance of database gateway. In: International Conference on Very Large Databases (VLDB 1998), pp. 146–157 (1998)Google Scholar
  21. 21.
    The OS Kit Project: School of computing. University of Utah, Salt Lake, UT (2002). http://www.cs.utah.edu/flux/oskit

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  • William Thompson
    • 1
  • Ramesh Karne
    • 1
  • Alexander Wijesinha
    • 1
  • Hojin Chang
    • 1
  1. 1.Towson UniversityTowsonUSA

Personalised recommendations