Study on Operating Systems for Small Devices for Mobile Payments Application 17 Th July, 2009
Total Page:16
File Type:pdf, Size:1020Kb
Study on Operating Systems for Small Devices for Mobile Payments Application 17 th July, 2009 Project Report On Study on Operating Systems for Small Devices for Mobile Payments Application Submitted by: V V Aishwarya B.E IV/IV (01-07-862) Department of Computer Science and Engineering (CSE) University College of Engineering (Autonomous) Osmania University , Hyderabad- 500004 To Summer Internship Project under the Guidance of Dr. V N Sastry Associate Professor Institute for Development and Research in Banking Technology (IDRBT) (Established by Reserve Bank of India) Road No. 1, Castle Hills, Masab Tank, Hyderabad – 500 057. July 2009 CSE,UCE,OU 1 IDRBT Study on Operating Systems for Small Devices for Mobile Payments Application 17 th July, 2009 CERTIFICATE This is to certify that this project on “ Study on Operating Systems for Small Devices for Mobile Payments Application ” submitted by Ms. V V Aishwarya , 01-07-862 of B.E. IV/IV, CSE, University College of Engineering, Osmania University, is a record of Bonafide work done by her under my guidance during the Summer Internship Programme from 21 st May, 2009 to 17 th July, 2009. Ms. V V Aishwarya has completed the work assigned to her within the limited period of learning and execution. She has successfully completed the project to my satisfaction and it has been observed that the goals set upon at the outset of this endeavor have been worked upon to the best of the student’s abilities and resources. During this period I have observed her to be very sincere, hardworking and coping up with new challenges. I hereby allow this project to be presented for evaluation with my full consent. Place: Hyderabad Date: 17 th July, 2009 Project Supervisor: Dr. V N Sastry Associate Professor IDRBT CSE,UCE,OU 2 IDRBT Study on Operating Systems for Small Devices for Mobile Payments Application 17 th July, 2009 ACKNOWLEDGEMENT I would like to thank my supervisor, Dr. V N Sastry , who guided me through the project, and helped me sort out all the problems, be it technical or otherwise; and without whose support, the project would not have reached its present state. I would also like to thank Ms. K Avanthi , Research Associate, IDRBT for her co-operation and support during my Internship period. I would also like to thank Dr. B. Sambamurthy , Director, IDRBT and Prof. S Ramchandram , Head, Department of Computer Science and Engineering, University College of Engineering (A), Osmania University, Hyderabad for giving me the opportunity to work at IDRBT. I would also like to thank Mr. S Srinivasa Rao , Associate Professor, Department of Computer Science and Engineering, University College of Engineering (A), Osmania University, Hyderabad for his encouragement. Place: Hyderabad Date: 17 th July, 2009 V V Aishwarya 01-07-862 B.E IV/IV, CSE, UCE, OU CSE,UCE,OU 3 IDRBT Study on Operating Systems for Small Devices for Mobile Payments Application 17 th July, 2009 DECLARATION I declare that the summer training project report entitled, “ Study on Operating Systems for Small Devices for Mobile Payments Application ” is my own work carried out under the supervision of Dr. V N Sastry at Institute for Development and Research in Banking Technology (IDRBT), Hyderabad. I have put in 45 days of attendance with the supervisor at the center. I further declare that to the best of my knowledge the project report does not contain any part of any work, which has been submitted for the award of any degree either in this institute or in any other university without proper citation. Place: Hyderabad Date: 17 th July, 2009 V V Aishwarya 01-07-862 B.E IV/IV, CSE, UCE, OU CSE,UCE,OU 4 IDRBT Study on Operating Systems for Small Devices for Mobile Payments Application 17 th July, 2009 Abstract The project entitled “ Study on Operating Systems for Small Devices for Mobile Payments Application ” gives an overview of the concepts and features of Operating Systems, a comparative study of operating systems for small and portable devices namely Symbian OS, Palm OS, TinyOS, JavaOS, SCOSTA and MULTOS, and also gives an insight into the Mobile Payments Architecture for the existing model. This project also explains the proposed model in detail, giving the various scenarios to be considered during mobile payments. This project aims at the study of the basic concepts and features of Operating Systems together with an overview of the Computer System Components, Goals, Functions, Characteristics, Services, Types and Different Architectures of Operating Systems. It also aims at a comparative study of Operating Systems for Small and Portable Devices namely Symbian OS, Palm OS, TinyOS, JavaOS, SCOSTA and MULTOS based on various attributes. The project’s main objective is to study the various concepts of Smart Card Operating System for Transport Application (SCOSTA) which gives an overview of smart cards and their physical layout together with the objectives, basic data structures, logical file organization and the command library of SCOSTA. The project also aims at the study of the existing model for the mobile payments architecture and explains the process flow for Pull and Push models in mobile payments so as to get a better understanding. The project also aims at developing a new model for mobile payments which gives the entities involved, the assumptions made and the process flows for different scenarios under the Push model. Chapter 1 gives an introduction to the concepts and features of Operating Systems and an overview of operating systems for small and portable devices like Symbian OS, Palm OS, TinyOS, JavaOS, SCOSTA and MULTOS. It also gives a brief introduction of Mobile Payments and Java 2 Micro Edition which forms the background for the subsequent chapters. Chapter 2 gives a detailed insight into the comparison of operating systems for small and portable devices. Chapter 3 deals with the structure, architecture, data structure etc of the Smart Card Operating System for Transport Application (SCOSTA). Chapter 4 gives a detailed insight into the Mobile Payments Architecture. Chapter 4 primarily deals with the existing model for mobile payments and focuses on the developments for the proposed model. The document ends with the references and the appendixes relating to the project. In this report, we have specified the General Concepts of Operating Systems and also made an attempt to compare Operating Systems for Small and Portable Devices like Symbian OS, Palm OS, TinyOS, JavaOS, SCOSTA and MULTOS for various attributes. We studied the SCOSTA Operating System in detail which gave a greater insight about its Architecture, Data Structures, Security Aspects etc. We studied the Components and Stages of various proposed Mobile Payment Architectures and Processes and then proposed Architecture for Mobile Payments PUSH MODEL. We developed and implemented Mobile Payments Application for PUSH MODEL of making a Payment using J2ME (Java 2 Micro Edition) API and Java Servlet API which serves as the User Interface for Mobile Payments Application on the Mobile Phones. CSE,UCE,OU 5 IDRBT Study on Operating Systems for Small Devices for Mobile Payments Application 17 th July, 2009 Table of Contents Page No’s Chapter 1: Introduction 1 1.1 Concepts and Features of an Operating System 1 1.2 Operating Systems for Small and Portable Devices 9 1.3 Mobile Payments 12 1.4 J2ME 21 1.5 Organization of the Project 29 Chapter 2: Comparison of Operating Systems 30 for Small and Portable Devices 2.1 Broad Categories of Comparison 30 2.2 Comparison based on attributes in each broad category 39 2.3 Summary Chapter 3: SCOSTA 46 Chapter 4: Mobile Payments Architecture 59 4.1 Existing Model 59 4.2 Proposed Model 69 Chapter 5: Conclusion 78 References 79 Appendix A - J2ME API 81 Appendix B – J2ME Application for Making a Payment PUSH MODEL (Making A Payment) 85 CSE,UCE,OU 6 IDRBT Study on Operating Systems for Small Devices for Mobile Payments Application 17 th July, 2009 Chapter 1: Introduction 1.1 Concepts and Features of an Operating System 1.1.a Introduction Operating system (OS) is the software that manages the sharing of resources of a computing device (computer, mobile phone etc). An OS processes raw system data and user input, and responds by allocating and managing tasks and internal system resources as a service to users and programs of the system. OS is the most important program that runs on a computer. Every general purpose computer must have an OS to run other programs. OS provides a software platform on top of which other programs, called “application programs” run. The application programs are written to run on top of particular OS. Choice of OS, therefore, determines to a great extent, the applications that can run on a computer. Most of computer systems come with a preloaded OS. Examples of OS are MSDOS, UNIX, LINUX, WINDOWS, etc. An Operating System is a • A Resource allocator that manages and allocates resources. • A Control program that controls the execution of user programs and operations of I/O devices • A Kernel – the one program running at all times (all else being application programs). 1.1.b Computer System Components 1. Hardware – provides basic computing resources (CPU, memory, I/O devices). 2. Operating system – controls and coordinates the use of the hardware among the various application programs for the various users. 3. Applications programs – define the ways in which the system resources are used to solve the computing problems of the users (compilers, database systems,video games, business programs). 4. Users (people, machines, other computers). 1.1.c Operating system goals: • Execute user programs and make solving user problems easier. • Make the computer system convenient to use. CSE,UCE,OU 7 IDRBT Study on Operating Systems for Small Devices for Mobile Payments Application 17 th July, 2009 1.1.d Functions of an OS The purpose of an OS is to organize and control hardware and software, e.g.