CSC521 Wearable Computer Report
Post on 14-Nov-2014
106 Views
Preview:
DESCRIPTION
Transcript
Report on
WEARABLE COMPUTERfor
CSC 521 - ANALYSIS OF OPERATING SYSTEMS
AMAIR MAIRAJ
ANKUSH PANDIT
KRUTARTH
MITHAWALLA
NICK IPE MATHEW
RAMAN NARAYANAN
CSC521 - Analysis of Operating Systems Wearable Computers
1. INTRODUCTION TO WEARABLE COMPUTERS
In simple terms, a wearable computer is a computer that could be worn on the body. Wearable
computers could be anything from a small wrist mounted system to a bulky head mounted
display as shown below:
Figure 1
Figure 2
Today, the computers have shrunk from room size to palm size in order to fit better with our
lifestyle. From being just passive accessories such as laptops and personal digital assistant’s,
computers have moved to wearable appliances that form an integral part of our personal
space.
1
CSC521 - Analysis of Operating Systems Wearable Computers
1.1 Features of Wearable Computers:
1. Consistency - One of the most important features of a wearable computer is
consistency. There is always a constant interaction between the computer and the user
and hence there is no need to turn the device on or off.
2. Multi-Tasking - Another feature is the ability to do multi-tasking. It is not necessary to
stop what you are doing in order to use the device. Wearable computer provides
computational support even when the user’s hands, voice, eyes, or attention is actively
engaged with the physical environment.
3. Mobility - Wearable computers must go where the wearer goes. They are always on and
their wearer can access them anytime. The wearable computers must accompany us in
our everyday life and offer help and we need it, even before we ask for it.
1.2 An Example of a Wearable Computer
In most of the applications, a wearable computer is a combination of devices like a belt,
backpack computer, head mounted display, wireless communication hardware, and some input
device such as a touch pad.
2
CSC521 - Analysis of Operating Systems Wearable Computers
Wearable computers have been applied to several areas such as health monitoring systems,
information technologies, and media development and for entertainment purposes.
2. Design of a Conceptual Wearable Computer
Having studied the various types of wearable computers and considering the features that we
discussed, we as a group have designed a wearable computer, which is conceptual.
Our design consists of different blocks, wherein the first block of applications includes a watch,
which would have the feature of a pulse monitor. This would monitor the pulses and provide
the heartbeat rate. It would also help the user in finding out the blood pressure levels. As a
power wearable computer is also a part of this system, it would give suggestions and send
warnings if the levels of the blood pressure increases.
Peripheral-1
In the second block, we have a music controller along with a camera and a remembrance agent.
Remembrance agent is software developed at MIT media laboratory. This software runs
continuously in the background, indexing everything that is stored on the computers hard disk.
It can make suggestions based on the most recent sentence, paragraph, or the input text given.
Let us consider an example wherein the remembrance agent senses the user’s location, filters it
through the existing data, finds that the user has overdue library books, and reminds him that
the books need to given back.
3
CSC521 - Analysis of Operating Systems Wearable Computers
Peripheral-2
The third block would contain the Voice over internet protocol (VOIP) along with a search
option and web browsing.
Peripheral-3
The last block would contain a mobile phone and GPS (Global Positioning System). This
technological combination has already made life simple at a common mans reach, I-Phone, the
most appreciated, which is still topping the wish list of many explains how the combination is a
luxury feature on phone. Based on the similar grounds of I-Phone our conceptual design, will
receive commands as voice commands, which would initialize the GPS in the cell phone. The
carrier ad the hand held device would play crucial roles. The route will be calculated by the built
in GPS and it will be announced out through the speaker of the hand held device.
Peripheral-4
4
CSC521 - Analysis of Operating Systems Wearable Computers
The complete conceptual design is given below.
Finally, we have our sophisticated high-end wearable computer, which consists of the
configuration of a smart computer with a powerful CPU. Each of the blocks explained are
actually peripherals connected to this master computer, which is at its best in terms of storage,
processing rate, memory and most importantly the convenience of being portable.
3. Key Properties
The key properties of a wearable computer are:
1. Near-Transparency: The sensors of the wearable computer should be transparent or
near transparent. Transparency is key to adoption by most users. To achieve real
pervasiveness, sensors should be integrated near-transparently with the users routines
and living environment, including their garment, shoes, accessories, cars, furniture, etc.
Needless to say, sensors should also be “transparent” to the user’s health – they should
5
CSC521 - Analysis of Operating Systems Wearable Computers
not cause allergic responses or induce undesirable health conditions.
2. Favorable Accuracy and Reliability vs. Cost of Operation: The application would obtain
high accuracy and reliability data using relatively inexpensive sensors. The emphasis is
on monitoring, not diagnosing.
3. Secure Communication: Users should be able to choose their desired level of privacy in
parts of or in all collected data with respect to access by relatives and friends, health
insurance providers, and health-care professionals.
4. 4As: This concept relates to “anywhere, anytime, anyone, any device.” The system
should make the recorded data and its analysis available to the user in a 4A-style,
according to user-specified privacy scenarios. Users may choose to store all or parts of
the data on their PCs, independent on-line repository, or on a smartcard
4. Challenges
To provide wearable computing, designers must overcome significant challenges. Some of the
most challenging issues is that of power use and heat dissipation.
4.1 Power use
Power is perhaps the most limiting factor in mobile technology. Wearable computing presents
particular variations of this problem. Ultimately, wearable computers are clothes. A user might
wear a display in a pair of sunglasses, keep a computer in a belt buckle, and have a keyboard
woven into a jacket. When the wearable computer’s functionality is spread among subsystems
distributed over the body, power distribution becomes complicated. If the components’ battery
lives are too short, the user will soon get frustrated with the effort needed to keep the system
powered. One solution is to create long-lasting power supplies. Another possibility is to use
6
CSC521 - Analysis of Operating Systems Wearable Computers
primary chemical batteries, which are relatively long lasting compared to rechargeable ones.
However, large-scale adoption would result in serious environmental disposal issues.
The obvious alternative is secondary batteries. However, rechargeable batteries require that
the user remember to maintain them, which can be a problem. Ideally, recharging the wearable
computer and its peripherals should be implicitly coupled with the normal acts of dressing.
Alternatively, some wearable peripherals could generate power from human actions or from
the phenomena they sense.
4.2 Heat dissipation
When specifying processors for wearables, MIPS per watt are a much more important
parameter than raw processing speed. Devices in contact with human skin should not much
exceed 40⁰ Celsius. In fact, heat dissipation is one of the foremost limiting factors in the design
of high-end laptops, and providing heat dissipation is a source of considerable expense. Designs
must channel heat away from the processor, or else it will suffer thermal shutdown.
With a wearable computer, the user’s thermal environment changes routinely, often to the
computer’s benefit. For example, even a weak airflow can significantly increase heat
dissipation. While walking, the airflow about an arm-mounted computer is significantly
enhanced by the arm’s pendulum-like movement. In fact, the airflow along the forearm is
turbulent in many situations, effectively doubling the heat dissipation of calmer air movement.
Another idea is to use the wearable computer’s close proximity to the human body to aid in
cooling. More aggressive systems might employ thermal regulation via active thermal
reservoirs. For example, cooling systems could exploit the heat capacity of the computer’s
batteries. While charging, users could chill batteries so that the wearable computer could
7
CSC521 - Analysis of Operating Systems Wearable Computers
transfer heat into them during operation. For some batteries, this warmth could increase
battery life.
Careful use of resources might help avoid many heat generation crises for a wearable
computer. For example, developers could write applications for wearable computers with heat
dissipation in mind. The computer can delay disk maintenance, downloads, and batch jobs until
it senses a cooler environment. Depending on perceived user need, a slower network
connection might be appropriate to allow more time for heat dissipation. With such methods,
performance is reserved for user interactions, and the effective average power consumption
can be higher without causing uncomfortable spikes in heat generation.
5. Architecture of the Wearable Computer
8
CSC521 - Analysis of Operating Systems Wearable Computers
5.1 Features of the Real-Time Operating System
The design features that are needed in the wearable computers are very well satisfied by a real
time operating system. A few features of real-time operating systems that are useful for
wearable computers are discussed below.
1) Scheduling
Scheduling is the process of managing the different tasks that are present in the system by as -
signing priorities to the processes and arranging it in such a way that all process complete execu-
tion before the deadline. There are three different states that a task can be in at any point of
time, namely a) running, b) ready, c) blocked. At any point of time it is only one process will
be in the running state and the rest of the process can be either in the blocked state or ready
state.
The tasks that are ready for running are placed in the ready list and the data structure that is
used to store the information about the tasks depends on the number of tasks that are to be
scheduled.
2) Power Management
In case of devices which are operated on battery the energy consumption of the device is defi-
nitely a critical factor which should be considered while designing the applications and operating
system for such devices. There is a lot of research which has been done in the past to reduce the
amount of energy consumed by the device and performing the same operation. One of the
methods is the execution of the processes on multiple supply voltages. In using multiple volt-
ages, the greatest challenge is to allocate the optimum voltage for the processes. When the pro-
cesses are executed at the optimum voltage level there is a drastic reduction in the energy con -
sumption. As far as wearable computers are concerned power management is a very critical is-
sue.
9
CSC521 - Analysis of Operating Systems Wearable Computers
3) Interrupt Handling
Interrupt handling is an important feature of real-time operating system. In an aperiodic envi-
ronment there is always a possibility that a process comes in which should be serviced regard-
less of the priority of the process which is running. These processes are called interrupts and
there should be a protocol to handle such interrupts. In case of wearable computers the inter-
rupt handlers play a vital role for instance let us assume a wearable computer which has got
many applications in addition to heart monitoring. When the wearable computer is running one
of the process which is high priority there can be a situation when the heart monitor reading
should be displayed for it is critical. This particular process is then considered as interrupt and
therefore should be handled properly. Inorder to handle such interrupt there is definitely a need
for interrupt handling.
5.2 Features of the Distributed System
A wearable computer as a whole can have different devices connected to it and each device can
have an operating system running on it. When these operating systems are connected and the
process of one device is executed on the other device they form distributed computing
environment.
There are different features of distributed computing that can enhance the performance of the
wearable computers and some of them are as follows:
1) Resource sharing
In case of distributed computing the resources of different devices can be used together result -
ing in the improved performance. One such situation is using battery power of one device from
another. If the process of one device is sent to other device the battery power that would have
been used otherwise would be saved.
10
CSC521 - Analysis of Operating Systems Wearable Computers
2) Control & Management
In future there can be situations such that not only the devices of the wearable computer are
connected but the wearable computer as a whole is connected to the internet or is connected
to others systems using wireless LAN and the wearable computers can be controlled from re-
mote locations.
6. Power Scheduling
The concept of scheduling in wearable computers should not only take care of the fact that the
tasks complete execution before their deadline but should also take into consideration the
voltage used in scheduling tasks. The main reason for considering the voltage factor is because
wearable computers are small devices and if more number of processes are run, there is a
possibility that the battery power in the device is drained and the device will be switched off.
The energy consumption of the system as a whole can be reduced significantly by the
scheduling decisions. The scheduling and the voltage are related with the fact that different
tasks execute at different voltages. Therefore taking into consideration the tasks along with the
voltage in which the tasks can run a scheduling of the tasks can be done in such a way that it
results in saving energy.
In order to perform voltage scheduling, it is assumed that the processor has variable supply
voltage in runtime.
The scheduling algorithm which is explained in [4] does not take into consideration the time
taken to shift from one voltage level to another voltage level. For example it takes 70micro
seconds to shift from 1.2V to 3.8V on a ipARM processor. This time which takes to move from
one voltage level to another voltage level is spent without performing any task. Even though
11
CSC521 - Analysis of Operating Systems Wearable Computers
the time spent spent is small comparatively the amount of time wasted in the transition from
one voltage level to another can be reduced.
Consider the following scenario that explains about the transition of the voltage levels.
Assume four processes, where each process can be split into different tasks T1,T2,T3,T4 and the
tasks execute in different voltages. The voltages at which the tasks execute and the time
duration for which the tasks execute are given in the diagram below. The voltage is mentioned
above the tasks and the time for which the tasks executes in mentioned below the task and it
can be taken is seconds.
Considering only the voltage and the time taken for the schedule there can be schedule as
below:
12
CSC521 - Analysis of Operating Systems Wearable Computers
It is assumed that the time taken for transition from one voltage to another is same. In the
above schedule the time duration that it for the transition is not taken into consideration. As a
result of which there is a time duration 70 micro seconds for the transition from Process4 -Task
1 to Process2 -Task1, similarly for Process2-Task 1 to Process3 -Task1 and Process3-Task 1 to
Process1 -Task1 resulting in 210 micro seconds. This time wastage can be reduced by taking
into account the time that it takes to move from one voltage level to another voltage level.
The schedule can be like the one as below taking into consideration the time factor that it takes
to move from one voltage level to another voltage level.
13
CSC521 - Analysis of Operating Systems Wearable Computers
In the above schedule the transition takes place just once and the amount of time wasted
without performing any operation is just 70 micro seconds and is decreased significantly from
210 microseconds.
6.1 Algorithm
This is a sample algorithm which takes into account the time factor to change from one voltage
to another voltage. Use the present scheduling algorithm to create schedules
Create two queues: one for Voltage1 (1.2V) another for Voltage2(3.8V)
Push the tasks that execute in Voltage1 to queue1
Push the tasks that execute in voltage2 to queue2
Check the current voltage level
14
CSC521 - Analysis of Operating Systems Wearable Computers
If the current voltage level is Voltage 1
{
Then pick up queue1
Execute all tasks in queue1
When the queue is empty
Pick up queue2
}
Else if the current voltage level is voltage2
{
Then pick up queue2
Execute all tasks in queue2
When the queue is empty
Pick up queue1
}
Fill the queues and repeat above process
15
CSC521 - Analysis of Operating Systems Wearable Computers
7. Distributed Power Management
Given limited energy resources, it is essential to design applications in such a way as to allow
their continued functionality despite scarce energy resources. This relies on achieving self-
management via code migration and on-the-fly handling of error conditions. The system should
be designed in such a way to allow continued functionality despite depleting energy resources
and failing computational nodes and communication links.
During critically low levels of energy resources or increasingly rampant intermittent failures, it is
desirable to re-map application execution from one device to another. Deciding if and when to
perform remapping involves tradeoffs. For example, with low energy resources, remapping
should occur early enough so as to have sufficient energy to complete. Acting too early can lead
to unused energy resources going to waste, while acting too late may result in permanent
failure. Techniques like code migration and remote mapping have been used to implement this.
Code migration remaps executing code to available nodes when the battery depletes past a
predetermined threshold. This energy resource threshold is set conservatively so as to ensure
migration even in the presence of intermittent link failures.
Remote execution is an alternative to code migration. In a system employing remote execution,
each application that will be run on any node in the system must be duplicated on every node
in the system. Using remote execution, applications simply need to transfer their application
state and subsequently transfer control of execution to the destination node at a desired point
in time to complete migration. Transfer of state is inexpensive compared to full application
copying, as the text segment need not be transmitted. This is particularly useful when
communication is prohibitively expensive, as is the case in wireless networks. The disadvantage
is the requirement of ample memory on each device to store every application.
16
CSC521 - Analysis of Operating Systems Wearable Computers
7.1 Proposed Solution
The solution proposed is a means of improving code migration and remote execution by
borrowing ideas from both.
The primary goal is to distribute the time at which migration of application code occurs without
allowing energy resources to fall to a critical threshold. This can be achieved by distributing the
application load among the nodes of the distributed system. As always, some nodes (devices)
will be used more often than others. So it is possible to share the load of these frequently used
nodes with those that are used less frequently. Thus, an energy intensive application will share
its load with other nodes so as to conserve its own energy. This results in more complete usage
of the energy resource. It also has a beneficial impact on the case of catastrophic failures, in
which case the spare node could restart execution.
8. Conclusion
This project has looked into the field of wearable computers. An architecture for a wearable
computer is also proposed. The paper proposes a new power scheduling algorithm that is more
efficient than existing algorithms. The project also proposes a new power management
technique. The efficiency of these two solutions are not tested and so remain as the future
work of this project.
Overall, this project gave an insight into the field of wearable computers and computing. This is
a vast field that has encompassed various disciplines of computing. The progress of wearable
computers indicates a potential future that will involve artificial intelligence and robotics. This is
one discipline that must be constantly investigated.
17
CSC521 - Analysis of Operating Systems Wearable Computers
References:
1. Marculescu, D., Zamora, N. H., Stanley-Marbell, P., and Marculescu, R. 2003. Fault-Toler-
ant Techniques for Ambient Intelligent Distributed Systems. In Proceedings of the 2003
IEEE/ACM international Conference on Computer-Aided Design (November 09 - 13,
2003). International Conference on Computer Aided Design. IEEE Computer Society,
Washington, DC, 348.
2. Kirovski, D., Oliver, N., Sinclair, M., and Tan, D. 2007. Health-OS:: a position paper. In
Proceedings of the 1st ACM SIGMOBILE international Workshop on Systems and Net-
working Support For Healthcare and Assisted Living Environments (San Juan, Puerto
Rico, June 11 - 11, 2007). HealthNet '07. ACM, New York, NY, 76-78
3. Quan, G. and Hu, X. 2001. Energy efficient fixed-priority scheduling for real-time systems
on variable voltage processors. In Proceedings of the 38th Conference on Design Auto-
mation (Las Vegas, Nevada, United States). DAC '01. ACM, New York, NY, 828-833.
4. Gruian, F. 2001. Hard real-time scheduling for low-energy using stochastic data and DVS
processors. In Proceedings of the 2001 international Symposium on Low Power Elec-
tronics and Design (Huntington Beach, California, United States). ISLPED '01. ACM, New
York, NY, 46-51.
5. Starner, T. 2001. The Challenges of Wearable Computing: Part 1. IEEE Micro 21, 4 (Jul.
2001), 44-52.
18
top related