Operating Systems for Mobile Devices
A New Course Proposal
Prabhaker Mateti
Department of Computer Science and Engineering
Wright State University
This working draft is written for the Undergraduate Studies Committee of the
Department. Upon approval it will need to be re-written in a format expected by
UCAPC.
Course Design Issues
This is a senior-level 4 credit hour course. Its goal is to discuss
present-day OS for mobile devices, such as cell phone, PDA and MP3 players.
It should interest CS/CEG seniors and first year graduate students who
already have had a standard course (such as WSU CEG 433) in OS.
Related Course
The proposed number for the course is CEG 437. WSU has a course titled Mobile Computing (CEG 436). Its catalog
description is reproduced below.
Study networking protocol and system design in mobile computing. Focus on
concepts, architecture, design, and performance evaluation of mobile
computing principles, protocols and applications, including: wireless TCP,
Mobile IP, 802.11, agent techniques, etc.
CEG 437 is not a sequel to 436.
Prerequisites
Prerequisites: CEG 433. CEG 434 and CEG 402 would have been useful
also but that makes it nearly impossible for this new course to be an
elective.
Lab Oriented
This course is lab-oriented. Lab work is worth about 40%. It
is suggested that the lab work be split into perhaps 8 labs, about one per
week.
Teaching Orientation
It is a "how-does-it-work" kind of course. Several lectures should
be of the show-and-tell kind.
Catalog Description
Introduction to operating systems designed for mobile devices. Embedded
OS. Real-time OS. Ubiquitous computing. Opportunistic Connectivity. Application Development for Mobile Devices. Security and
Privacy. Case studies
such as Embedded Linux, Symbian, Palm OS and Windows
Mobile. 4 credit hours. 3 hours lectures, 2 hours
labs. Prerequisites: CEG 433.
Content
The topics are grouped based on coherence. Even though there are
nine items below, worth at least one week each, they are not to be taken literally as
weekly schedules.
-
Handheld and Wearable computers. Ubiquitous computing.
-
Embedded OS, Processes with no VM. Battery Power Conservation. Crash
proof programs.
- Opportunistic Connectivity.
- Application Development for Mobile Devices
- Case Study 1: Windows Mobile
- Case Study 2: Palm OS
- Case Study 3: Symbian
- Case Study 4: Embedded Linux.
- Security and Privacy
Grading
Two on-line exams worth 25% and 35%. Lab work worth 40% each.
Source Material
- Ubiquitous Computing
- UbiComp 2007
http://www.ubicomp2007.org/ is the Ninth in the international
conference series previously known as Handheld and Ubiquitous Computing (HUC).
- Mark Weiser, Some computer science issues in ubiquitous computing, ACM
SIGMOBILE Mobile Computing and Communications Review, Volume 3,Issue 3
(July 1999), ISSN:1559-1662.
- IEEE Pervasive Computing,
http://www.computer.org/portal/site/pervasive/
- OS
- S. Baskiyar, and N. Meghanathan, A Survey of Contemporary Real-time Operating Systems,
June 2004,
http://ai.ijs.si/informatica/PDF/29-2/12_Baskiyar-A%20Survey%20of%20Contemporary...pdf
- Kolding, Denmark, Every joule is precious: the case for revisiting operating system
design for energy efficiency, Proceedings of the 9th workshop on ACM SIGOPS
European workshop: beyond the PC: new challenges for the operating system, ISBN:1-23456-789-0,
pp 31 - 36, 2000.
- Frank Adelstein, Sandeep K. S. Gupta, Golden G. Richard III, Loren
Schwiebert, Fundamentals of Mobile and Pervasive Computing, McGraw-Hill,
2004.
- Opportunistic Connectivity
- Teatherless Computing.
http://blizzard.cs.uwaterloo.ca/tetherless
- Thabotharan Kathiravelu, Towards Content Distribution in Opportunistic
Networks, Ph.D. Thesis,
June 2007, Uppsala University, Sweden.
- Application Development
- Lawton, G., Moving Java into mobile phones, IEEE Computer,
Jun 2002, Volume: 35,
Issue:
6, 17- 20, ISSN: 0018-9162.
- JavaFX
http://www.sun.com/software/javafx/
- Daniel Schall, Web Services on Embedded Devices, J. Web Infor. Syst.
Vol. 1, No. 1, March 2005.
- Windows Mobile
- Windows Mobile Developers Wiki,
http://channel9.msdn.com/wiki/default.aspx/MobileDeveloper.HomePage
- Palm OS
- Mihai Ciocarlie, Marcela-Simona Atanasoae, Horia Ciocarlie, "System of
Programs for Rapid Development and Execution of Palm OS Applications." pp
260-263, IEC (Prague), 2005.
-
http://en.wikipedia.org/wiki/Palm_OS
- Palm OS Development Documentation,
http://prc-tools.sourceforge.net/doc/
- Symbian
- Symbian OS: Mobile smart phone operating system,
http://www.symbianone.com/
-
http://developer.symbian.com/main/academy/university/
- R Harrison, P Northam, Symbian OS C++ for
Mobile Phones, 2003, John Wiley & Sons, Inc. New
York, NY.
- Mobile Linux
- Craig Hollabaugh, Embedded Linux: Hardware, Software, and
Interfacing, March 2002, Addison Wesley Professional , ISBN-10:
0672322269, ISBN-13: 978-0672322266.
- http://moblin.org/
- Embedded Linux Consortium. 2007.
http://www.embedded-linux.org/.
- Security and Privacy
- Tanenbaum, A.S. Herder, J.N.
Bos, H., Can we make operating systems
reliable and secure?, Computer, May 2006,
Volume: 39,
Issue: 5,
pp. 44- 51,
ISSN: 0018-9162.
-
Leavitt,
N., Mobile phones: the next frontier for hackers?, IEEE Computer,
April 2005, Volume: 38,
Issue:
4, pp. 20- 23, ISSN: 0018-9162.
- Hardware
- OpenMoko "is a GNU / Linux based open software
development platform. Developers have full access to OpenMoko source and
they can tailor their implementations to underlying hardware platforms."
http://www.openmoko.com/
- Mobile Internet Devices (MIDs) & Ultra Mobile PCs (UMPCs),
http://www.intel.com/products/mid/
October 12, 2007