Ads Top

Solved Mid Term Paper CS710 (Mobile and Pervasive Computing)


Q.1      The original term ubiquitous computing was coined by Mark Weiser in ________ at Xerox PARC
1.         1990
2.         1999
3          1988
4.         1998
Q2.      Which is not the part of Symbian Design Pattern?
1.         Micro-Kernel
2.         Graphical Application Model
2.         An Event based Application Model
3.         MVC- Model View Controller
Q.3      Combining knowledge from different layers of the system is?
1. Proactivity
2. Self- Tuning
3. Pervasive Computing
4. None of Above
Q.4      As smart spaces grow in sophistication, the intensity of interactions between a user’s personal computing space and his/her surroundings increases?
1. Invisibility
2. Effective use of smart space
3. Localized Scalability
Q.5 In Thin client significant components are running of user's device?
1.         True
2.         False
Q.6 A multimodal application is one that supports multiple user interface modalities such as GUI, voice, and a combination of the two.
1.         True
2.         False
Q.7      Dirty memory is?
1.         Allocated by mmap()ed
2.         Allocated by malloc()ed
3          Used by Single Process
4.         Shared Memory
Q.8      The impact of device heterogeneity on application developers is that applications need to be developed (or ported) to each device and maintained separately for each device.
1.         Heterogeneity of Device
2.         Heterogeneity of Context

Lecture No. 1
1.      The original term ubiquitous computing was coined by Mark Weiser in 1988 at Xerox PARC
2.      Weiser sometimes also referred to this as invisible computing
3.      Tabs communicated wirelessly with a ceiling-mounted base station using 10 kbps diffuse infrared signaling
4.      In the mid-1990s, IBM began a research direction it called pervasive computing (IBM Mobile and Pervasive Computing)
5.      One of the first commercial deployments of a pervasive computing system was born from a collaboration between IBM Zurich and Swissair in 1999 (IBM Swissair), enabling passengers to check-in using Web-enabled (WAP) cell phones
6.      Classroom 2000 began in July 1995 In 1999, the Aware Home project was founded
7.      SenseCam is a small wearable computer that periodically captures images of the world as a user moves around
8.      RADAR was the first example of a wireless system allowing mobile computers to locate themselves in a building [an indoor global positioning system (GPS)].
9.      EasyLiving, established in 1999.

Lecture No. 2
1.      Proactivity – Combining knowledge from different layers of the system
2.      Self-Tuning
a.       automatically adjusting behavior to fit circumstances
b.      ability to move execution state effortlessly across diverse platforms
3.      Two distinct earlier steps in this evolution are distributed systems and mobile computing
4.      In an atomic transaction, a series of database operations either all occur, or nothing occurs
5.      a nested transaction occurs when a new transaction is started by an instruction that is already inside an existing transaction
6.      Optimistic Recovery is a technique supporting application-independent transparent recovery from processor failures in distributed systems

Lecture No. 3
1.      Mobile computing – concern  for battery power consumption
2.      Data consistency summarizes the validity, accuracy, usability and integrity of related data between applications and across the IT enterprise

Lecture No. 4
1.      Smart space brings together two worlds that have been disjoint until now
a.       computing infrastructure
b.      building infrastructure
2.      Localized Scalability
a.       As smart spaces grow in sophistication, the intensity of interactions between a user’s personal computing space and his/her surroundings increases
b.      This has severe band-width, energy, and distraction implications for a wireless mobile user. The presence of multiple users will further complicate this problem. Scalability, in the broadest sense, is thus a critical problem in pervasive computing.
c.       Like the inverse square laws of nature, good system design has to achieve scalability by severely reducing interactions between distant entities

Lecture No. 5
1.      This vision of pervasive computing leads to two fundamental characteristics of pervasive applications — mobility and context-awareness
2.      Mobility has three implications.
a.       First, applications must run on a wide variety of devices, including the devices embedded in various environments and devices carried by users.
b.       Second, because devices may be transported to locations where a high-bandwidth network connection is not available, applications must work (perhaps in a degraded mode) with low-bandwidth network connections or in the absence of any network connection.
c.       Third, applications that make use of a user’s location must account for the possibility that the location will change

Lecture No. 6
1.      A multi-device application is one that is able to execute on devices with different capabilities
2.      A multimodal application is one that supports multiple user interface modalities such as GUI, voice, and a combination of the two
3.      A device platform is the distributed software platform to  which a pervasive application is targeted
4.      A disconnectable application is one that is able to continue to execute when there are different levels of connectivity between the different components of the application
5.      A context-aware application is one that is able to sense some aspects of the environment in which it is executing and adapt its behavior to the sensed environment

Lecture No. 7
1.      The impact of device heterogeneity on application developers is that applications need to be developed (or ported) to each device and maintained separately for each device
2.      multimodal interfaces can use multiple modalities within a single application
3.      An application may need to be partitioned differently between the device and the server depending on the processor, memory, and network capabilities of a device
4.      The context can be highly dynamic. The data sources that provide information about the application’s environment are called context sources

Lecture No. 8
1.      In a thin-client application, views are generated on the server and then rendered on the client device by a component such as a Web browser
2.      Controller logic, model logic, and model data all reside on the server, so disconnected operation is impossible
3.      Symbian architecture - OS Security package: provides cryptography services to the layers above including applications written on the OS
4.      In a thick-client application, the model still resides on a server, perhaps accessed through Web services, but the rest of the application resides on the client device
5.      An autonomous-client application resides entirely on the client device
6.      An autonomous-client application maintains its own fully functional model, which may be synchronized from time to time with replicas of the model on a server

Lecture No. 9
1.      Thin client – full connectivity required.
2.      Thick client – weak connectivity required.
3.      Autonomous client – disconnected operation supported.
4.      Context-aware applications have three sources of complexity:
a.       The heterogeneous nature of data sources
b.      The dynamic nature of context sources
c.       The multiple sources of potentially low-level context data
Lecture No. 10 (Symbian)
1.      Symbian developed by Symbian Ltd and runs exclusively on ARM processors
2.      Symbian^2 was the first royalty-free version of Symbian
3.      For hardware functions such as input and output and memory allocation, the operating system acts as an intermediary between the application programs and the computer hardware
4.      Kernel is a bridge between applications and the actual data processing done at the hardware level.
5.      The kernel's responsibilities include managing the system's resources (communication between hardware and software resources)
6.      Vendors may add their own layers if needed

Lecture No. 11 (Symbian)
1.      Symbian OS – UI Framework layer provides the frameworks and libraries for constructing a user interface
2.      Symbian architecture - A layer provides services to higher layers (‘upwards’). A layer delegates tasks to lower layers (‘downwards’)
3.      Dependencies flow consistently from higher layers to lower layers (but dependencies are allowed sideways within layers)
4.      Requests travel downwards
5.      Notifications travel upwards

Lecture No. 12 (Symbian)
1.      Symbian Packages are the basic unit of Symbian Foundation organisational control
2.      Packages are owned and maintained by a package owner (PkO)
a.       PkO has overall responsibility for the package and its contents
b.      Contributions also come from the wider Symbian Foundation community
3.      Packages split or combine over time
4.      Symbian OS was created with three systems design principles in mind:
a.       the integrity and security of user data is paramount,
b.      user time must not be wasted, and
c.       all resources are scarce.
5.      EKA2 (EPOC Kernel Architecture 2) is the second-generation Symbian platform Kernel
6.      A "nanokernel" which provides the most basic OS facilities upon which other "personality layers" can be built

Lecture No. 13 (Andriod)
1.      Android is an open source software stack for mobile devices that includes an operating system, middleware and applications
2.      The Android Open Source Project (AOSP) is tasked with the maintenance and further development of Android
3.      Android’s mobile operating system is based upon a modified version of the linux kernel
4.      Surface flinger Can combine 2D and 3D surfaces and surfaces from multiple applications Libraries

Lecture No. 16
1.      Android runtime Dalvik have 4 kinds of memory;
a.       clean vs dirty: clean [mmap () ed and unwritten], dirty [malloc ()]
b.      shared (used by many) vs private (used by only one process)
c.       clean (shared or private)
d.      shared dirty and private dirty
2.      Register machine avoid instruction dispatch and unnec memory access


Q1       Constraints of Mobile Computing?
Answer (Lecture 3)
  1. unpredictable variation in network quality,
  2. lowered trust and robustness of mobile elements,
  3. limitations on local resources imposed by weight and size constraints, and
  4. concern for battery power consumption

Q2       Do you think that technical problems of other domain inherited in pervasive computing or they introduced new problems in this domain?
Answer (Lecture 4)
  1. Some of the technical problems in pervasive computing correspond to problems already identified and studied earlier in the evolution.
a.       In some of those cases, existing solutions apply directly;
b.      in other cases, the demands of pervasive computing are sufficiently different that new solutions have to be sought.
c.       There are also new problems introduced by pervasive computing that have no obvious mapping to problems studied earlier.

Q3       Differentiate the Thin, Thick and Autonomous- Client Application?
Answer (Lecture 6)
  1. A thin-client application is a networked application in which the user interface rendering component is executing on the user’s device, whereas the rest of the application is executing on a networked computer.
  2. In a thin-client application, views are generated on the server and then rendered on the client device by a component such as a Web browser
  3. A thick-client application, on the other hand, has significant application components executing on the user’s device.
  4. In a thick-client application, the model still resides on a server, perhaps accessed through Web services, but the rest of the application resides on the client device
  5. An autonomous-client application resides entirely on the client device. It maintains its own fully functional model, which may be synchronized from time to time with replicas of the model on a server
Q4       What are the factors/issue in context-aware application?
Answer (Lecture 9)
1.      Context-aware applications have three sources of complexity:
a.       The heterogeneous nature of data sources
b.      The dynamic nature of context sources
c.       The multiple sources of potentially low-level context data

Q5       What is role of middle ware in Symbian?
Answer (Lecture 10)
a.       Provides higher-level generic APIs usable by programs in the application layer
b.      Includes native UI frameworks, application lifecycle, higher-level protocols and data handling, etc
c.       Middleware components are independent of the hardware platform
MW APIs are not used by the OS layer
Two levels:
     generic: Services intended for any class of application
Examples: Text entry, security and GUI widgets are expected to be used by
most apps
      This level and below is a general purpose computer
     specific: Services intended for a specific class of application
Examples: Presence is mainly used by instant messaging apps, the Phone Server is expected to only be used by a Phone application
      This level and below is sufficient for phone application development
Q6       What is role of OS model in Symbian?
Answer (Lecture 11)
1.      UI Framework Layer
a.       UI Framework layer provides the frameworks and libraries for constructing a user interface
2.      The Application Services Layer
a.       System-level services Text Handling
b.      Services that support generic types of application, Alarm Server, data synchronization services, Printing Support
Services based on more generic but application-centric technologies, mail, messaging and browsing
Q7       How Dalvik Virtual Machine works in Android?
Answer (Lecture 13)
DVM
  1. Performance requirements on handsets are severe
  2. Packages in Android, are full-featured and extensive
  3. These system libraries might use as much as 10 to 20MB (even with the optimized JVM)
    1. Welcome to Dalvik JVM :It reuses duplicate information from multiple class files, effectively reducing the space requirement (uncompressed) by half from a traditional .jar file
    2. Many of Android’s core libraries, including the graphics libraries, are implemented in C and C++
    3. Fine-tuned the garbage collection
    4. Dalvik VM uses a different kind of assembly-code generation use of registers rather than stack
    5. Used to write all the classes or core system services
    6. Services that are essential to the Android platform
    7. Behind the scenes - applications typically donʼt access them directly
    8. Androidʼs custom clean-room implementation virtual Machine
    9. Provides application portability and runtime consistency
    10. Runs optimized file format (.dex) and Dalvik bytecode
    11. Java .class / .jar files converted to .dex at build time
Q8       What are the functions of Native Servers?
 Answer (Lecture 13)
1.      Surface Flinger
a.       Provides system-wide surface “composer”, handling all surface rendering to frame buffer device
b.      Can combine 2D and 3D surfaces and surfaces from multiple applications Libraries
c.       Surfaces passed as buffers via Binder IPC calls
d.      Can use OpenGL ES and 2D hardware accelerator for its compositions
2.      Audio Flinger
a.       Manages all audio output devices
b.      Processes multiple audio streams into PCM audio out paths
c.       Handles audio routing to various outputs
Q9       How Run Time power management works in android?
Answer (Lecture 13)
Android Kernel – Power Management
  1. Mobile devices run on battery power
  2. Batteries have limited capacity
  3. Built on top of standard Linux Power Management (PM)
  4. More aggressive power management policy
  5. Components make requests to keep the power on through “wake locks”
  6. Supports different types of wake locks
Q10     Describe the areas in android that are enhanced than Linux kernel?
Answer (Lecture 13)
Android Linux Kernel Enhancement
1.      Alarm
2.      Ashmem
3.      Binder
4.      Power Management
5.      Low Memory Killer
6.      Kernel Debugger
7.      Logger
Q11     Why Hardware Abstraction Libraries (HAL) is used in android?
Answer (Lecture 13)
1.      Why do we need a user-space HAL?
a.       Not all components have standardized kernel driver interfaces
b.      Kernel drivers are GPL which exposes any proprietary IP
c.       Android has specific requirements for hardware drivers

Q12     Describe the role of android native libraries?
Answer (Lecture 13)
Android Native Libraries – libc
1.      Bionic libc is Custom c run time implementation, optimized for embedded use.
2.      License: keep GPL out of user-space
3.      Size: will load in each process, so it needs to be small
4.      Fast: limited CPU power means we need to be fast
Q32     Describe function libraries of android?
Answer (Lecture 13)
Android Native Libraries – Function Libraries
1.      These are libraries that do most of the heavy lifting
2.      Providing a lot of power behind Android platform
3.      Abstracted by the higher level API seen in application framework.
4.      WebKit – Browser Engine
5.      Media Framework - built on top of a set of media libraries, including OpenCore
6.      SQLite – Open Source Relational Database
Q14     What are the silent features of EKA2 ?
Answer (Lecture 12)
1.      EKA2 (EPOC Kernel Architecture 2) is the second-generation Symbian platform Kernel
2.      Like its predecessor it has pre-emptive multithreading and full memory protection. The main differences are:
a.       Real-Time guarantees (each API call is quick, but more importantly, time-bound)
b.      Multiple threads inside the kernel as well as outside
c.       Pluggable memory models, allowing better support for later generations of ARM Instruction set
d.      A "nanokernel" which provides the most basic OS facilities upon which other "personality layers" can be built
Q15     How would be able to interpret the run time walk through of android?
Answer (Lecture 18)
1.      System Startup
a.       Bootloader
b.      Kernel
c.       Init
d.      Zygote
e.       System Server
f.       Activity Manager
g.      Launcher (Home)
Q16     What is .apk in android?
Answer (Lecture 19)
.apk means android package which include following:-
a.       .dex files
b.      Resources .arsc
c.       Un-compiled resources
d.      Androidmanifest.xml

Q17     What is JNI?
Answer
Java Native Interface (JNI) is a programming framework that enables Java code running in a Java Virtual Machine (JVM) to call and be called by native applications (programs specific to a hardware and operating system platform) and libraries written in other languages such as C, C++ and assembly




No comments:

Powered by Blogger.