Google Mail Calendar Documents Reader Web more »
Recently Visited Groups | Help | Sign in
Google Groups Home
Time
There are currently too many topics in this group that display first. To make this topic appear first, remove this option from another topic.
There was an error processing your request. Please try again.
flag
  25 messages - Collapse all  -  Translate all to Translated (View all originals)
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Follow-up To:
Add Cc | Add Follow-up to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers that you hear
 
D Yuniskis  
View profile   Translate to Translated (View Original)
 More options 8 Nov, 06:21
Newsgroups: comp.arch.embedded
From: D Yuniskis <not.going.to...@seen.com>
Date: Sat, 07 Nov 2009 23:21:17 -0700
Local: Sun 8 Nov 2009 06:21
Subject: Time
Hi,

In keeping with the spirit of posing challenging
(interesting?) questions...

Expressing (calendar) *time* to the user presents
a dilemma.  Most devices that are aware of calendar
time also include provisions for *setting* (i.e.,
altering!) the time.   And, there are few restrictions
as to how and when the user can alter that time
setting!

However, in terms of the machine's viewpoint, time is
(must be!) a monotonically increasing function.  The
"time setting" is just an arbitrary parameter established
for the convenience of the user -- it bears no relationship
to "real" time.

But, when the user expresses a temporal event, he
does so in *some* context (this will prove to be the
essence of this question).  Yet, the machine may
be operating in a *different* context -- or, simply
impervious to the subtlety of the user's viewpoint!

For example, if the user schedules an "appointment"
for "3:00PM Tuesday", chances are, he *means* "3:00PM"
in some absolute sense.  OTOH, if it is 2:00PM presently
and he wants to do something "in about an hour", he
*says* "3:00PM" but really intends that to be "60 minutes
from NOW".

The problem lies in the fact that the time associated with
"NOW" is always vulnerable to the user (re)setting the
(time-of-day) clock!  So, if he happens to realize he needs
to set the clock forward one hour (Springtime DST processing)
NOW has suddenly *become* 3:00PM -- time for that event that
he scheduled for "in about an hour".

I've "solved" this problem by never letting the user
change the machine's notion of "current time".  Rather,
he can determine the *bias* that should be applied to
the time that the machine *reports* to him, but not the
time itself.

(this eliminates a whole class of potential problems
that can occur with the user altering the time setting
wantonly -- at least the machine will be sane in how
it deals with those temporally ordered events)

I log "time changes" (i.e., "bias adjustments") so I can
translate the "system time" into whatever "local time"
was in effect at the time.  E.g., I can tell the user
that he changed the "clock" at 2:34PM on January 13th
to read "3:12PM", instead.  And, that at 3:13PM
(exactly *one* minute later!) he changed it to read
"3:00PM" (for whatever reason).

 From the machine's point of view, this is a boon.
The machine's notion of time remains unaltered.
It doesn't see those time changes as happening
at 2:34, and 3:13 but, rather, some time X
and some time X+1.  And, the time one minute
thereafter is not "3:01" but, rather, X+2.

The problem lies in relating these time changes to
the user's "context".

Consider how you might relate a log of his "time
changing activities" to him if he choses to examine
it at "3:01" on the day in question:
- the first change appears to have happened ~30
   minutes ago (at 2:34) even though it actually
   was only two minutes ago!
- the second change appears to have happened ~10
   minutes in the *future* (at 3:13) almost 40 minutes
   after the first change -- even though it happened
   just *one* minute ago.

Of course, these types of things happen all the time
when you play with the time on a desktop machine
(probably not as noticed on Windows machines as they
don't tend to generate ongoing logs of events that
would manifest these "anomalies").  On a server,
changing the time can cause you some unexpected grief
(e.g., if a cron job doesn't run because you "skipped
over" its scheduled activation time).  But, chances
are, you are skilled enough to compensate for this
*if* it is important.

But, how do you deal with this in an *appliance*
used by "nominal users"?  To date, most such
appliances/devices haven't had the level of
sophistication to support scheduled events (other
than, perhaps, reminding you of a pending birthday,
meeting, etc.) of any substance.  What happens when
the *device* needs scheduled activities for its
own maintenance/integrity?

One approach is to schedule all of those using "system
time" so that changes to "user time bias" do not affect
it.  This works great if you can hide the activities
from the user.  But, if you have to disclose them to
the user, you run the risk of adding the same sort of
confusion.

An even bigger issue (that I won't get into as I haven't
any *good* idea of how to solve it) is how you tell the
user about his *past* actions and *future* plans in
the face of varying "time biases".

<frown>  As I said, an "interesting" problem without
a clear cut answer.  :-/


    Reply    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Paul E Bennett  
View profile   Translate to Translated (View Original)
 More options 8 Nov, 08:27
Newsgroups: comp.arch.embedded
Follow-up To: comp.arch.embedded
From: Paul E Bennett <Paul_E.Benn...@topmail.co.uk>
Date: Sun, 08 Nov 2009 08:27:02 +0000
Local: Sun 8 Nov 2009 08:27
Subject: Re: Time

D Yuniskis wrote:
> Hi,

> In keeping with the spirit of posing challenging
> (interesting?) questions...

> Expressing (calendar) *time* to the user presents
> a dilemma.  Most devices that are aware of calendar
> time also include provisions for *setting* (i.e.,
> altering!) the time.   And, there are few restrictions
> as to how and when the user can alter that time
> setting!

[%X]

> An even bigger issue (that I won't get into as I haven't
> any *good* idea of how to solve it) is how you tell the
> user about his *past* actions and *future* plans in
> the face of varying "time biases".

> <frown>  As I said, an "interesting" problem without
> a clear cut answer.  :-/

I am with you on the notion that the underlying "System Time" should be kept
as constant as possible. I aim to keep this at UTC and it can help if the
correctness of this is synchronised with external standard time references.

I am also with you on the user having whatever time-frame reference he/she
desires. Quite pertinent for the travelling person who might visit many
time-zones. I don't think that they would want anything other than the local
time wherever they happen to be at the time. Helpful if the item had
reference to a GPS and could determine the local offset for them, then the
user needs not be bothering with time settings at all.

As for logging of "Time-change" events, not something I would consider
relevant if you can automatically determine correct UTC and local zone. It
might be pertinent to server farms but I would expect them to be at UTC
anyway.

--
********************************************************************
Paul E. Bennett...............<email://Paul_E.Benn...@topmail.co.uk>
Forth based HIDECS Consultancy
Mob: +44 (0)7811-639972
Tel: +44 (0)1235-510979
Going Forth Safely ..... EBA. www.electric-boat-association.org.uk..
********************************************************************


    Reply    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
bigbrownbeastie  
View profile   Translate to Translated (View Original)
 More options 8 Nov, 08:47
Newsgroups: comp.arch.embedded
From: bigbrownbeastie <bigbrownbeastiebigbrownf...@googlemail.com>
Date: Sun, 8 Nov 2009 00:47:22 -0800 (PST)
Local: Sun 8 Nov 2009 08:47
Subject: Re: Time
On Nov 8, 6:21 am, D Yuniskis <not.going.to...@seen.com> wrote:

> <frown>  As I said, an "interesting" problem without
> a clear cut answer.  :-/

wow, i would hate to be the person who asks you to make a cup of tea
in the office, must take hours.

    Reply    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Vladimir Vassilevsky  
View profile   Translate to Translated (View Original)
 More options 8 Nov, 14:53
Newsgroups: comp.arch.embedded
From: Vladimir Vassilevsky <nos...@nowhere.com>
Date: Sun, 08 Nov 2009 08:53:35 -0600
Local: Sun 8 Nov 2009 14:53
Subject: Re: Time

D Yuniskis wrote:
> Hi,

> The problem lies in the fact that the time associated with
> "NOW" is always vulnerable to the user (re)setting the
> (time-of-day) clock!

What to do with scheduled activities if the clock was adjusted depends
on the nature of those activities. You can't make universal solution at
the system level. So, if the clock was adjusted, OS issues a system
message about it and lets the processes decide if they should do something.

Vladimir Vassilevsky
DSP and Mixed Signal Design Consultant
http://www.abvolt.com


    Reply    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
D Yuniskis  
View profile   Translate to Translated (View Original)
 More options 8 Nov, 15:23
Newsgroups: comp.arch.embedded
From: D Yuniskis <not.going.to...@seen.com>
Date: Sun, 08 Nov 2009 08:23:39 -0700
Local: Sun 8 Nov 2009 15:23
Subject: Re: Time

There's a subtle difference, here.  I'm saying "system time"
is totally irrelevant to "calendar time".  I.e., system
time has guarantees that calendar time does not (or NEED not).

For example, you *know* that system time N and N+1234567
are exactly 1234567 seconds apart.  For *all* values of N.

I see synchronizing to UTC (or any other standard) as just
another "user time bias" adjustment.  UTC exists solely
for the convenience of users who want to think in terms
of UTC.

> I am also with you on the user having whatever time-frame reference he/she
> desires. Quite pertinent for the travelling person who might visit many
> time-zones. I don't think that they would want anything other than the local
> time wherever they happen to be at the time. Helpful if the item had
> reference to a GPS and could determine the local offset for them, then the
> user needs not be bothering with time settings at all.

Yes, but this is still just a "user bias".  Or, a user *preference*
if you want to look at it that way.  I.e., like picking what *font*
to use to display the time (assuming you *do* display it).

The system shouldn't (can't?) care if the user wants to spend
his entire day setting the clock forward, then back, then
forward some *different* amount, etc.

> As for logging of "Time-change" events, not something I would consider
> relevant if you can automatically determine correct UTC and local zone. It
> might be pertinent to server farms but I would expect them to be at UTC
> anyway.

If you don't log time change events, then you have to log the
"current time" in any messages that you emit.  And, the user
has no way of *ever* knowing the temporal relationship between
any two of those messages -- since the time can be changed
between them (and you've decided not to log these events!).

    Reply    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
D Yuniskis  
View profile   Translate to Translated (View Original)
 More options 8 Nov, 15:34
Newsgroups: comp.arch.embedded
From: D Yuniskis <not.going.to...@seen.com>
Date: Sun, 08 Nov 2009 08:34:12 -0700
Local: Sun 8 Nov 2009 15:34
Subject: Re: Time

Vladimir Vassilevsky wrote:

> D Yuniskis wrote:
>> Hi,

>> The problem lies in the fact that the time associated with
>> "NOW" is always vulnerable to the user (re)setting the
>> (time-of-day) clock!

> What to do with scheduled activities if the clock was adjusted depends
> on the nature of those activities. You can't make universal solution at
> the system level. So, if the clock was adjusted, OS issues a system
> message about it and lets the processes decide if they should do something.

That's how I handle things currently.  But, it only works for
running processes.

What I was looking for (i.e., the purpose of my question)
was insight in how people *think* about time (as users)
and what characteristics of a "context" affect that thinking.

E.g., scheduling a (doctor's) appointment happens in an
"absolute time context" but setting an alarm when baking
*cookies* happens in a "relative alarm context".  I can
come up with numerous examples for each but haven't been
able to come up with a criteria that can be used to
categorize them.

For example, an initial criterion that I toyed with was
the "temporal distance" -- things in the near future
tended to be relative; those "further out" (whatever
that means) tended to be absolute.  But, deciding where
that threshold was proved to be just as hard a problem
to solve.  And, I can come up with counterexamples of
each.

Note that the application can't unilaterally make this
decision, either.  E.g., the two examples above would
easily fit into the same application.

I.e., this is not a *technical* problem -- I've already
"solved" that aspect of it.  Rather, it's a "human
problem"... figuring out how people *think* about time.


    Reply    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Vladimir Vassilevsky  
View profile   Translate to Translated (View Original)
 More options 8 Nov, 16:22
Newsgroups: comp.arch.embedded
From: Vladimir Vassilevsky <nos...@nowhere.com>
Date: Sun, 08 Nov 2009 10:22:55 -0600
Local: Sun 8 Nov 2009 16:22
Subject: Re: Time

The process tells the system that it should be notified about the time
changes. So, even if the process is not running, the system could
activate it.

> E.g., scheduling a (doctor's) appointment happens in an
> "absolute time context"  but setting an alarm when baking
> *cookies* happens in a "relative alarm context".
> I.e., this is not a *technical* problem -- I've already
> "solved" that aspect of it.  Rather, it's a "human
> problem"... figuring out how people *think* about time.

Where is a problem? There are many "relative" and "absolute" qualities
besides time. You deal with relative or absolute time just like you deal
with relative or absolute path, so to speak.

Vladimir Vassilevsky
DSP and Mixed Signal Design Consultant
http://www.abvolt.com


    Reply    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Paul Keinanen  
View profile   Translate to Translated (View Original)
 More options 8 Nov, 16:35
Newsgroups: comp.arch.embedded
From: Paul Keinanen <keina...@sci.fi>
Date: Sun, 08 Nov 2009 18:35:04 +0200
Local: Sun 8 Nov 2009 16:35
Subject: Re: Time
On Sun, 08 Nov 2009 08:27:02 +0000, Paul E Bennett

<Paul_E.Benn...@topmail.co.uk> wrote:

>I am with you on the notion that the underlying "System Time" should be kept
>as constant as possible. I aim to keep this at UTC and it can help if the
>correctness of this is synchronised with external standard time references.

The UTC is not a linear time scale due to the leap seconds that are
added at random intervals (3, 6, 9, 12, 15 .. month) due to the
slowing down of the rotation of the Earth. When the leap second is
added, the clock should count 23:59:59, 23:59:60, 00:00:00 ....

Paul


    Reply    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Andrew Smallshaw  
View profile   Translate to Translated (View Original)
 More options 8 Nov, 16:39
Newsgroups: comp.arch.embedded
From: Andrew Smallshaw <andr...@sdf.lonestar.org>
Date: Sun, 8 Nov 2009 16:39:05 +0000 (UTC)
Local: Sun 8 Nov 2009 16:39
Subject: Re: Time
On 2009-11-08, D Yuniskis <not.going.to...@seen.com> wrote:

> There's a subtle difference, here.  I'm saying "system time"
> is totally irrelevant to "calendar time".  I.e., system
> time has guarantees that calendar time does not (or NEED not).

> For example, you *know* that system time N and N+1234567
> are exactly 1234567 seconds apart.  For *all* values of N.

Many, many bugs have been caused by this kind of assumption.
Perhaps the most notable example is the lbolt variable inside
traditionally structured Unix kernels.  I'm most familiar with it
from dealing with SCO Unix in the past but ISTR it affected other
systems too, mostly with third party drivers where the develpers
were not wise to the problems.

On SCO the lbolt variable was initialised to 0 at boot and incremented
every 10ms after that.  After a little over 8 months the variable
overflowed and turned negative.  Problems this could cause drivers
ranged from garbling I/O during the overflow period to panicing the
system.  Of course, a problem that does not occur for 8 months is
easy to slip through testing unless you are specifically looking
for it.

Although the exact example you give is valid, closely related
examples may not be.  You can't assume that if N is now then 12345.67
seconds time will be represented by N+1234567.  Nor can you even
assume that if A is less than B, A must represent an earlier time,
even if we know from context they can be no more than a few seconds
apart.

--
Andrew Smallshaw
andr...@sdf.lonestar.org


    Reply    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
D Yuniskis  
View profile   Translate to Translated (View Original)
 More options 8 Nov, 17:05
Newsgroups: comp.arch.embedded
From: D Yuniskis <not.going.to...@seen.com>
Date: Sun, 08 Nov 2009 10:05:28 -0700
Local: Sun 8 Nov 2009 17:05
Subject: Re: Time

Andrew Smallshaw wrote:
> On 2009-11-08, D Yuniskis <not.going.to...@seen.com> wrote:
>> There's a subtle difference, here.  I'm saying "system time"
>> is totally irrelevant to "calendar time".  I.e., system
>> time has guarantees that calendar time does not (or NEED not).

>> For example, you *know* that system time N and N+1234567
>> are exactly 1234567 seconds apart.  For *all* values of N.

> Many, many bugs have been caused by this kind of assumption.

My point is that by *defining* system time to be a monotonically
increasing, unresetable function, you *can* make this assumption
for "system times".  I.e., if you look at the system time
at any arbitrary time, T1, and then look at it at *any*
arbitrary time thereafter, T2, you *know* that T2 > T1.
By definition.   :>

> Perhaps the most notable example is the lbolt variable inside
> traditionally structured Unix kernels.  I'm most familiar with it
> from dealing with SCO Unix in the past but ISTR it affected other
> systems too, mostly with third party drivers where the develpers
> were not wise to the problems.

> On SCO the lbolt variable was initialised to 0 at boot and incremented
> every 10ms after that.  After a little over 8 months the variable
> overflowed and turned negative.  Problems this could cause drivers
> ranged from garbling I/O during the overflow period to panicing the

Thats a different problem.  Pick a data type that is large
enough to represent the data you intend to store in it!
(e.g., you wouldn't pick an 16 bit integer to hold the world
population!)

> system.  Of course, a problem that does not occur for 8 months is
> easy to slip through testing unless you are specifically looking
> for it.

> Although the exact example you give is valid, closely related
> examples may not be.  You can't assume that if N is now then 12345.67
> seconds time will be represented by N+1234567.  Nor can you even

Yes:  N+12345.67  (if you deal with fractional seconds)

> assume that if A is less than B, A must represent an earlier time,
> even if we know from context they can be no more than a few seconds
> apart.

But that is my point!  In my scheme, these are invariants!
The system time starts "whenever" (the instant the product
enters final testing during manufacturing).  Thereafter,
it can not be altered -- except to add one second to its
present value.

Barring hardware failures (batteries dying, alpha particles,
device being run over by a car, etc.) all of the above
"guarantees" exist.


    Reply    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
D Yuniskis  
View profile   Translate to Translated (View Original)
 More options 8 Nov, 17:16
Newsgroups: comp.arch.embedded
From: D Yuniskis <not.going.to...@seen.com>
Date: Sun, 08 Nov 2009 10:16:50 -0700
Local: Sun 8 Nov 2009 17:16
Subject: Re: Time

Paul Keinanen wrote:
> On Sun, 08 Nov 2009 08:27:02 +0000, Paul E Bennett
> <Paul_E.Benn...@topmail.co.uk> wrote:

>> I am with you on the notion that the underlying "System Time" should be kept
>> as constant as possible. I aim to keep this at UTC and it can help if the
>> correctness of this is synchronised with external standard time references.

> The UTC is not a linear time scale due to the leap seconds that are
> added at random intervals (3, 6, 9, 12, 15 .. month) due to the
> slowing down of the rotation of the Earth. When the leap second is
> added, the clock should count 23:59:59, 23:59:60, 00:00:00 ....

POSIX *used* to allow for *double* leap seconds.  I think
that capability has been removed.

Note that leap seconds can also *subtract* a second (though
this has never? happened)

*All* "human formatted" time schemes are PITAs for machines.
The only realistic way to track time is just to count seconds.
(or some other time unit having the granularity you desire).

Barring distortions in space-time, one real second *takes*
one real second to transpire.  :>


    Reply    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Mark Borgerson  
View profile   Translate to Translated (View Original)
 More options 8 Nov, 18:36
Newsgroups: comp.arch.embedded
From: Mark Borgerson <mborger...@comcast.net>
Date: Sun, 8 Nov 2009 10:36:23 -0800
Local: Sun 8 Nov 2009 18:36
Subject: Re: Time
In article <hd6o16$fg...@aioe.org>, not.going.to...@seen.com says...

IMHO, people think about time in two ways:   As intervals
and as absolute date/time occurences. Absolute times can
be both near and far in temporal distance---as near as the
starting time for a televised football game that will begin
in a few minutes, or as far as your parent's 50th wedding anniversary
in  12 years, 3 months and 14 days.

Intervals can also be long or short:  From the 4-millisecond
exposure time for a digital camera to the end of the 7-year
warranty on your Prius battery pack.  (For intervals above an
undefined limit, it probably makes sense to convert the
end of the interval to an absolute time.)

For short-term interval measurement, there's really no need
to use  a system time variable at all.  It's often simpler
to just increment a delay-specific variable of the appropriate bit
length with a timer tick.   After all, when you're setting the
baking time for your brownies, you don't want to go to the trouble
of adding 30 minutes to    6/11/2010 23:47:33 and set that
value into the timer.  You just want to twist the knob to the
right until the arrow points at '30'.  ;-)   OTOH, if you
want your alarm clock to go off at 7:00AM, you don't want to
figure out the difference between now and that time, and set
that into a countdown timer.

Then there is the subset of timing problems like a desire
to have the alarm go off at 7:00AM every day.  The first
setting is an absolute time---but the following settings
are intervals of 24 hours.

I guess my conclusion is that  one time system won't work
for all problems.  As for picking the right system---it
probably depends on whether the question you ask the user
is "How Long...."  or  "When do you want to....".   The
second question implies that you and the user have some
common time reference.

The technical problems only  get worse when you think about multiple
systems,each with a unique system time, having to accomplish some
action at the same instant----without the capability to communicate
with the other system(s).    I face this problem often with
moored oceanographic instruments.   My solution has been to
use low-drift clocks and synchronize the logger clocks to
UTC.  

Mark Borgerson


    Reply    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
D Yuniskis  
View profile   Translate to Translated (View Original)
 More options 8 Nov, 19:45
Newsgroups: comp.arch.embedded
From: D Yuniskis <not.going.to...@seen.com>
Date: Sun, 08 Nov 2009 12:45:00 -0700
Subject: Re: Time

Exactly.

> For short-term interval measurement, there's really no need
> to use  a system time variable at all.  It's often simpler
> to just increment a delay-specific variable of the appropriate bit

Of course!  If I am flashing a lamp a 1Hz, I don't keep
setting alarms for "now+1sec".

> length with a timer tick.   After all, when you're setting the
> baking time for your brownies, you don't want to go to the trouble
> of adding 30 minutes to    6/11/2010 23:47:33 and set that
> value into the timer.  You just want to twist the knob to the
> right until the arrow points at '30'.  ;-)   OTOH, if you
> want your alarm clock to go off at 7:00AM, you don't want to
> figure out the difference between now and that time, and set
> that into a countdown timer.

Yes.  The problem lies in how you communicate this to
the user (i.e., how you ascertain the *user's* idea
of whether he is thinking in relative or absolute terms).

Generally, I don't ask users questions.  Instead, I try to
glean what they want from their actions.  (this makes a
friendlier user interface; one where the user feels in
control and where the "device" isn't intruding on their
way of doing things but, rather, *assisting*).

But, think of how *you* are often driven by other people
and events.  E.g., a doctor sets up an appointment for you
to come back "in two weeks".  Yet, they pen the appointment
at a *specific* time/date.  To you, that is an absolute
time reference (you are expected there at that time/date).
Yet, to "the system" (the system being the doctor, you,
society, etc.) it really is a relative appointment.
I.e., if the doctor had to reschedule, he would have
knowledge (unbeknownst to his appointment book) that
*exactly* two weeks from "now" is just a guideline...

> Then there is the subset of timing problems like a desire
> to have the alarm go off at 7:00AM every day.  The first
> setting is an absolute time---but the following settings
> are intervals of 24 hours.

Nope.  What do you do when DST kicks in?  The difference
will be 24 hours nominally but may be 23 or 25 depending
on whether it is Spring/Fall time change.  (see my point?
How easy it is to miscategorize time events as absolute
vs. relative??  Imagine a machine trying to deduce what
you mean...)

> I guess my conclusion is that  one time system won't work
> for all problems.  As for picking the right system---it
> probably depends on whether the question you ask the user
> is "How Long...."  or  "When do you want to....".   The
> second question implies that you and the user have some
> common time reference.

What happens if the user answers the first question
with a reply "until 3:00PM" (e.g., "keep the irrigation
water flowing until 3pm" instead of the "for 2 hours"
that your question was designed to elicit) or the
second question with "in three hours" instead of the
"at 2:00PM" that you were expecting?

(yes, I can see how to *use* either of these specifications.
But, you have to be able to react to how the user wants
to express the time and still not necessarily know if
he is being absolute or relative. People can too easily
think in either basis and express time either way.
E.g., think in terms of reltive time yet express an
answer in absolute time or vice versa.)

> The technical problems only  get worse when you think about multiple
> systems,each with a unique system time, having to accomplish some
> action at the same instant----without the capability to communicate
> with the other system(s).    I face this problem often with
> moored oceanographic instruments.   My solution has been to
> use low-drift clocks and synchronize the logger clocks to
> UTC.  

I think these are easier to handle because they, by definition,
are all thinking in terms of *some* time standard.  Then it is
just a question of how you provide that same time reference
to each of them.  In my scheme of things, this just looks like
another "time bias".

E.g., the user can deliberately set the "user time bias" to be
"five minutes fast" (how many folks do this with their alarm
clocks in the morning?).  Yet, you could keep your notion
of "UTC time bias" independantly of his.  And, a "system
time" that provides a common timescale against which
both are metered.


    Reply    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
D Yuniskis  
View profile   Translate to Translated (View Original)
 More options 8 Nov, 20:06
Newsgroups: comp.arch.embedded
From: D Yuniskis <not.going.to...@seen.com>
Date: Sun, 08 Nov 2009 13:06:06 -0700
Local: Sun 8 Nov 2009 20:06
Subject: Re: Time

The executable may not be available, etc.  Yes, there
are ways around this.  E.g., create wrappers for those
things that aren't available, ensure the wrappers are
*always* available and have *them* keep getting
"reawakened" periodically *or* in response to an
event that satisfies their prerequisites (e.g., "SD
card inserted" -- perhaps this card will have the
executable that I need??).

But, as my comments (elsewhere) should indicate, it may
not even be possible for that application to *know* how
to deal with the time change.  E.g., the user's notion
of current calendar time may have changed but *relative*
time progresses at the same pace; how do you know which
times are absolute vs. relative?

>> E.g., scheduling a (doctor's) appointment happens in an
>> "absolute time context"  but setting an alarm when baking
>> *cookies* happens in a "relative alarm context".

>> I.e., this is not a *technical* problem -- I've already
>> "solved" that aspect of it.  Rather, it's a "human
>> problem"... figuring out how people *think* about time.

> Where is a problem? There are many "relative" and "absolute" qualities
> besides time. You deal with relative or absolute time just like you deal
> with relative or absolute path, so to speak.

Which ones do users routinely specify in an embedded device?
"My phone number is -32"?  "My address is +Four roads"?
"My father is -hxty"?  "My favorite color is +300"?
"My shoe size is -2"?  "I need to buy -6 apples"?  "My
car gets +1.3MPG"?

Dealing with absolute vs. relative is trivial.  *Knowing*
which is which is hard -- unless you expllicitly *ask*
the user each time he specifies a time/date:  "do you
really mean XXXX or do you mean YYYY from *now*?"


    Reply    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
larwe  
View profile   Translate to Translated (View Original)
 More options 8 Nov, 20:03
Newsgroups: comp.arch.embedded
From: larwe <zwsdot...@gmail.com>
Date: Sun, 8 Nov 2009 12:03:18 -0800 (PST)
Local: Sun 8 Nov 2009 20:03
Subject: Re: Time
On Nov 8, 1:21 am, D Yuniskis <not.going.to...@seen.com> wrote:

> However, in terms of the machine's viewpoint, time is
> (must be!) a monotonically increasing function.  The

Not at all. MET is not TOD. And you have not, in your little
discourse, defined absolute rules about what "now" or "an hour from
now" means. I might be sitting at my desk in NY at 0700 local TOD,
making an appointment to meet you in CA at 1700 local TOD; I certainly
don't mean "ten hours from NOW", I mean 13 hours from my current NOW,
which is 10 hours from your current NOW.

    Reply    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Vladimir Vassilevsky  
View profile   Translate to Translated (View Original)
 More options 8 Nov, 20:35
Newsgroups: comp.arch.embedded
From: Vladimir Vassilevsky <nos...@nowhere.com>
Date: Sun, 08 Nov 2009 14:35:01 -0600
Local: Sun 8 Nov 2009 20:35
Subject: Re: Time

This is my point:

>>>> What to do with scheduled activities if the clock was adjusted
>>>> depends on the nature of those activities. You can't make universal
>>>> solution at the system level.
>> The process tells the system that it should be notified about the time
>> changes.
D Yuniskis wrote:
>> Where is a problem? There are many "relative" and "absolute" qualities
>> besides time. You deal with relative or absolute time just like you
>> deal with relative or absolute path, so to speak.

> Which ones do users routinely specify in an embedded device?

It depends. In embedded devices there is no such thing as "routinely".

> "My phone number is -32"?  "My address is +Four roads"?
> "My father is -hxty"?  "My favorite color is +300"?
> "My shoe size is -2"?  "I need to buy -6 apples"?  "My
> car gets +1.3MPG"?

How about "if a == b and if today is Friday, then if the LED#0 was
turned on at 6:00, then turn on LED#1 in 5 minutes after LED#0 is off" ?

> Dealing with absolute vs. relative is trivial.  *Knowing*
> which is which is hard -- unless you expllicitly *ask*
> the user each time he specifies a time/date:  "do you
> really mean XXXX or do you mean YYYY from *now*?"

You can not create universal abstraction for time. Therefore each
particular process has to deal with the time explicitly; in its own way.

Vladimir Vassilevsky
DSP and Mixed Signal Design Consultant
http://www.abvolt.com


    Reply    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Mel  
View profile   Translate to Translated (View Original)
 More options 8 Nov, 20:52
Newsgroups: comp.arch.embedded
Follow-up To: comp.arch.embedded
From: Mel <mwil...@the-wire.com>
Date: Sun, 08 Nov 2009 15:52:15 -0500
Local: Sun 8 Nov 2009 20:52
Subject: Re: Time

Mark Borgerson wrote:
> Intervals can also be long or short:  From the 4-millisecond
> exposure time for a digital camera to the end of the 7-year
> warranty on your Prius battery pack.  (For intervals above an
> undefined limit, it probably makes sense to convert the
> end of the interval to an absolute time.)

The end of the warranty on the battery pack was relative until you bought
the Prius.  Then it became absolute.

        Mel.


    Reply    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
D Yuniskis  
View profile   Translate to Translated (View Original)
 More options 8 Nov, 22:32
Newsgroups: comp.arch.embedded
From: D Yuniskis <not.going.to...@seen.com>
Date: Sun, 08 Nov 2009 15:32:35 -0700
Local: Sun 8 Nov 2009 22:32
Subject: Re: Time

larwe wrote:
> On Nov 8, 1:21 am, D Yuniskis <not.going.to...@seen.com> wrote:

>> However, in terms of the machine's viewpoint, time is
>> (must be!) a monotonically increasing function.  The

> Not at all. MET is not TOD. And you have not, in your little
> discourse, defined absolute rules about what "now" or "an hour from
> now" means. I might be sitting at my desk in NY at 0700 local TOD,
> making an appointment to meet you in CA at 1700 local TOD; I certainly
> don't mean "ten hours from NOW", I mean 13 hours from my current NOW,
> which is 10 hours from your current NOW.

<grin>  You're only *beginning* to see the depth of the
problem!

NOW is always "now".  "This instant".  Everyone has a coincident
"now" -- regardless of what the time on their wall clock says.

"An hour from now" is exactly that 3600 seconds from "now".
We will all experience "an hour from now" at the same
instant in time -- regardless of where we are (on this planet).

Your NY/CA example doessn't go far enough.  If we agree to meet
at 1700 in CA, then CA local time applies.  Presumably, my
timepiece would reflect CA local time when I am *in* CA.
But, what happens if I opt not to travel to CA?  What (local)
time must I place a phone call to you if the meeting is to
be held as a teleconference?

How do we know that our individual notions of PST and EST
are synchronized?  What if I tend to set my clock 5 minutes
fast?  Etc.

The point is, time only makes sense when given a reference
along with the time.  Whether that is relative or "absolute".
But, people almost *never* express those references when
they are speaking about "times".  So, how do you *infer*
it?  Or, present an interface to the user whereby he can
specify it without feeling encumbered?

"Do you mean relative time or absolute?  Do you mean local
time or for some particular timezone?  Do you think of
that time as referenced to *your* current notion of the
'current time' or some more universally acceptable
reference?"


    Reply    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
larwe  
View profile   Translate to Translated (View Original)
 More options 8 Nov, 22:30
Newsgroups: comp.arch.embedded
From: larwe <zwsdot...@gmail.com>
Date: Sun, 8 Nov 2009 14:30:55 -0800 (PST)
Local: Sun 8 Nov 2009 22:30
Subject: Re: Time
On Nov 8, 5:32 pm, D Yuniskis <not.going.to...@seen.com> wrote:

> <grin>  You're only *beginning* to see the depth of the
> problem!

> NOW is always "now".  "This instant".  Everyone has a coincident
> "now" -- regardless of what the time on their wall clock says.

No, it isn't - precisely because the word is ill-defined. If I say I
want you to do something at 9am tomorrow, and tonight is the DST
changeover, I mean 9am.

    Reply    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Cesar Rabak  
View profile   Translate to Translated (View Original)
 More options 8 Nov, 22:49
Newsgroups: comp.arch.embedded
From: Cesar Rabak <csra...@bol.com.br>
Date: Sun, 08 Nov 2009 20:49:42 -0200
Local: Sun 8 Nov 2009 22:49
Subject: Re: Time
D Yuniskis escreveu:
> Mark Borgerson wrote:
>>>> D Yuniskis wrote:

[snipped]

>> Then there is the subset of timing problems like a desire
>> to have the alarm go off at 7:00AM every day.  The first
>> setting is an absolute time---but the following settings
>> are intervals of 24 hours.

> Nope.  What do you do when DST kicks in?  The difference
> will be 24 hours nominally but may be 23 or 25 depending
> on whether it is Spring/Fall time change.  (see my point?
> How easy it is to miscategorize time events as absolute
> vs. relative??  Imagine a machine trying to deduce what
> you mean...)

/au contraire/ the difference is 24 hours and _nominally_ will change
depending upon Spring/Fall time change.  That's why UTC is your friend ;-)

>> I guess my conclusion is that  one time system won't work
>> for all problems.  As for picking the right system---it
>> probably depends on whether the question you ask the user
>> is "How Long...."  or  "When do you want to....".   The
>> second question implies that you and the user have some
>> common time reference.

> What happens if the user answers the first question
> with a reply "until 3:00PM" (e.g., "keep the irrigation
> water flowing until 3pm" instead of the "for 2 hours"
> that your question was designed to elicit) or the
> second question with "in three hours" instead of the
> "at 2:00PM" that you were expecting?

While we're 'eliciting' requirements from the user, in its space the two
ways are interchangeable as much as we can say 19:15h or 'one quarter
past seven', once you have your _implementation_ one of them will be
more feasible or perhaps only one of them may be possible!

--
Cesar Rabak
GNU/Linux User 52247.
Get counted: http://counter.li.org/


    Reply    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Cesar Rabak  
View profile   Translate to Translated (View Original)
 More options 8 Nov, 22:50
Newsgroups: comp.arch.embedded
From: Cesar Rabak <csra...@bol.com.br>
Date: Sun, 08 Nov 2009 20:50:41 -0200
Local: Sun 8 Nov 2009 22:50
Subject: Re: Time
Mel escreveu:
> Mark Borgerson wrote:

>> Intervals can also be long or short:  From the 4-millisecond
>> exposure time for a digital camera to the end of the 7-year
>> warranty on your Prius battery pack.  (For intervals above an
>> undefined limit, it probably makes sense to convert the
>> end of the interval to an absolute time.)

> The end of the warranty on the battery pack was relative until you bought
> the Prius.  Then it became absolute.

Do the Prius battery have no shelf life related warranty restrictions?

--
Cesar Rabak
GNU/Linux User 52247.
Get counted: http://counter.li.org/


    Reply    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Tauno Voipio  
View profile   Translate to Translated (View Original)
 More options 9 Nov, 06:25
Newsgroups: comp.arch.embedded
From: Tauno Voipio <tauno.voi...@notused.fi.invalid>
Date: Mon, 09 Nov 2009 08:25:20 +0200
Local: Mon 9 Nov 2009 06:25
Subject: Re: Time

Cesar Rabak wrote:
> Mel escreveu:
>> Mark Borgerson wrote:

>>> Intervals can also be long or short:  From the 4-millisecond
>>> exposure time for a digital camera to the end of the 7-year
>>> warranty on your Prius battery pack.  (For intervals above an
>>> undefined limit, it probably makes sense to convert the
>>> end of the interval to an absolute time.)

>> The end of the warranty on the battery pack was relative until you
>> bought the Prius.  Then it became absolute.

> Do the Prius battery have no shelf life related warranty restrictions?

At least the point is moot in the current situation:
You have to wait several months, up to half a year
for a fresh Prius. Mostly, the delay is caused for
waiting for batteries.

--

Tauno Voipio
tauno voipio (at) iki fi
(two Priuses in family)


    Reply    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Mark Borgerson  
View profile   Translate to Translated (View Original)
 More options 9 Nov, 14:48
Newsgroups: comp.arch.embedded
From: Mark Borgerson <mborger...@comcast.net>
Date: Mon, 9 Nov 2009 06:48:12 -0800
Local: Mon 9 Nov 2009 14:48
Subject: Re: Time
In article <hd7b11$6m...@aioe.org>, mwil...@the-wire.com says...
> Mark Borgerson wrote:

> > Intervals can also be long or short:  From the 4-millisecond
> > exposure time for a digital camera to the end of the 7-year
> > warranty on your Prius battery pack.  (For intervals above an
> > undefined limit, it probably makes sense to convert the
> > end of the interval to an absolute time.)

> The end of the warranty on the battery pack was relative until you bought
> the Prius.  Then it became absolute.

Yes.   That's a good example of a change between relative and absolute
terms.

Mark Borgerson


    Reply    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Steve Allen  
View profile   Translate to Translated (View Original)
 More options 9 Nov, 17:44
Newsgroups: comp.arch.embedded
From: Steve Allen <sla29...@gmail.com>
Date: Mon, 9 Nov 2009 09:44:59 -0800 (PST)
Local: Mon 9 Nov 2009 17:44
Subject: Re: Time
On Nov 8, 12:16 pm, D Yuniskis <not.going.to...@seen.com> wrote:

> The only realistic way to track time is just to count seconds.
> (or some other time unit having the granularity you desire).

> Barring distortions in space-time, one real second *takes*
> one real second to transpire.  :>

Epoch-based interval time is not a solution, at least not until there
is international agreement on what is meant by "second".
Right now there are two distinctly different definitions required by
various statutes.
http://www.ucolick.org/~sla/leapsecs/epochtime.html

    Reply    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Ignacio G. T.  
View profile   Translate to Translated (View Original)
 More options 10 Nov, 16:05
Newsgroups: comp.arch.embedded
From: "Ignacio G. T." <igtorque.rem...@evomer.yahoo.es>
Date: Tue, 10 Nov 2009 17:05:40 +0100
Local: Tues 10 Nov 2009 16:05
Subject: Re: Time
D Yuniskis escribió:

> NOW is always "now".  "This instant".  Everyone has a coincident
> "now" -- regardless of what the time on their wall clock says.

Einstein showed that even that simple assumption is not true.

Some embedded systems must have into account special and / or general
relativity issues.


    Reply    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message, you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
End of messages
« Back to Discussions « Newer topic     Older topic »

Create a group - Google Groups - Google Home - Terms of Service - Privacy Policy
©2009 Google