16.Mär.1999
C.S. Bridge Deady per eMail
|
KOSH summary Nr. 11
KOSH [Kommunity Orientated Software Hardware]
Weekly Summary
Week Commencing: 6th March 1999
Number: 011
Mailing List: kosh-general
In the mailing list this week, the following items were discussed. Please do
not email the scribe regarding any of these topics, it is not his job to answer
these questions but merely to report the topics of conversation. If you have
any queries about this summary, please email ben@kosh.net, stating the Summary
Number, and Mailing List Name, and he will try to answer your queries.
a)
Subject: Virtual Memory
Summary of debate: For decent virtual memory support in KOSH processors will
probably need some form of Memory Management Unit. This
could cause problems if running KOSH on EC versions of 68k
chips. VM could still be implemented without an MMU but
would be unable to trap page faults which could cause
problems. Amiga programs such as Photogenics often have
their own VM implementation that may not require an MMU -
raw images are stored on disk and only the bits that are
being processed are loaded into physical memory.
A good scheduler could allow certain idle processes to be
swapped to disk until needed.
An alternative would be to run a machine directly from the
HDD but via a big memory cache so you would not have to wait
for it to catch up all of the time.
b)
Subject: Memory protection
Summary of debate: Memory protection is essential in full-blown KOSH - however
some hosted versions may not be able to support this.
c)
Subject: Database systems
Summary of debate: KOSH should feature a good base services for database
systems. This could include both RPG and OOP.
d)
Subject: Icons
Summary of debate: A number of people like the idea of having the icon
information for a particular file in a separate .info file
(aka Amiga-style) as previously mentioned. However when
copying or moving a file the appropriate icon file should
automatically be copied/moved as well (unless OFC the user
selects otherwise).
However it was suggested that to the end-user icons should
exist as a representation of the file and not be a separate
object themselves. It should still be easy to manipulate the
icons if the user desires to do so.
Perhaps animated or active icons could be used. When you
move the cursor over them the icon animates, or it plays a
tune or gives a brief snippet of its contents, etc. If you
don't like this feature you could just turn it off of limit
its effects (eg: audio limited to 5 seconds of play).
Icons could be set to "pointer mode". This would allow it to
be set up so that one user saw one set of icons but another
user could see a completely different set.
The image pointer for each file could instead of pointing to
an individual icon point instead to a big database which
contains all of the possible icons.
e)
Subject: Group locating objects
Summary of debate: Should we have all related objects in the same place, eg:
all applications in applications/ etc?
f)
Subject: Object Synchronisation
Summary of debate: By being able to synchronize two or more duplicates of the
same object at different locations this would allow
trans-internet games (and presumably any other type of
application) to handle everything in-system (not at a server)
and simply synchronize a world object between each player.
g)
Subject: Application-Objects as drawers
Summary of debate: If we setup application-objects to be a form of drawer,
executing it would run the application, but right-click (or
alternate key press) on the app-object would actually open
it up so that the component objects were visible.
On the subject of drawers how about defining a drawer as a
physical directory with a folder being a grouping of
files/documents (eg: files composing a project) treated as
one discrete entity? Or just stick with Objects and object
groups.
h)
Subject: Cloning output
Summary of debate: If a window's output could be shown on another user's
machine by using a form of object cloning there could be
immediate benefits for training and network management by
allowing you to use the tools of your choice on network
whiteboards.
QNX Photon GUI has a concept doing this.
The KOSH booklist (scribe's note: thanks again John and yes
you can have another free plug) at:
http://www.snowcrash.u-net.com/kosh/booklist.html contains
references to the QNX system book which covers the above.
Perhaps synchronisation (as mentioned above) would be more
use as this would allow constant communication from source
to destination as opposed to cloning which is more to do
with a one-shot duplication of an object, its state and
data.
i)
Subject: Settings Working Group
Summary of debate: Marcus Peterson has suggested that it may be time to form a
Settings WG to define such things as visual design,
functional design, bindings between objects, containers and
settings, and hot to deal with import/export and multi-user.
j)
Subject: Accessing the OS
Summary of debate: As individual people each have individual preferences as to
how to access and use the OS (eg: desktop workspace, file
manager, DOS, etc) we should have an object manager and an
application manager as a minimum. We could then begin to
allow for any desired way of accessing and controlling the
OS.
k)
Subject: Studying systems as a whole
Summary of debate: See: http://pespmc1.vub.ac.be/ASC/Cybernetics.html re
studying systems as a whole in relation to cybernetics.
l)
Subject: ANDF Url
Summary of debate: A company that makes ANDF stuff can be found at:
http://www.ddci.dk/news/brief_andf.html
and at:
http://www.npac.syr.edu/projects/hpsin/hpandf.html
m)
Subject: Supporting formats
Summary of debate: With an object based system supporting any particular type
of format (image, sound, text, etc) could be achieved by
coding the relevant object for it and inserting this into
the relevant part of the Object Sea.
The OS could provide a configuration utility for this that
allows programs and classes to only have a "form" for the
utility to fill out which could include things like image
and sound formats.
n)
Subject: Root object & filesystems
Summary of debate: A "root" object in the file system would be the thing that
exports methods for allocating and freeing data blocks and
perhaps dealing on a very basic level with navigation. A few
basic classes (such as "entity" (eg: a disk), "name", "date)
would be manipulated by the roots file system.
A "foreign" file system could be supported by creating a
filesystem object to represent and interact with it.
o)
Subject: Avatars and KOSH
Summary of debate: An Avatar/personality system was suggested and debated that
would represent the defaults setup in a system. A hierarchy
could serve well here.
A media preferences editor would set these things up as a
standard chart object. A program wishing to ask you would
query the object sea for a list of media types of the
specified class, but one wishing to simply write the default
would query the media defaults chart for this. Chart objects
are nothing more than a standardized way to create class
interections with caching (eg, you ask the chart for a
specific class pointer by token, not by fully specified path
name/URL).
p)
Subject: Novice users and system settings
Summary of debate: For the system to "know" you're a novice, would imply some
some intelligence in the recognition. This could break down.
Could a series of sets of settings starting at basic and
expanding up to advanced with progressively more detail where
you could explicitly request that the next time the settings
opens it does so at the level previously selected.
However KOSH needs to go beyond improving the range of
features or grouping them into fixed expertise levels to
allow a greater and more accurate degree of response to user
ability and desires.
The worst case would be what is generally apparent in systems
at the moment with every user being presented with the same
identical set of options to deal with, and the path that the
person must traverse to use these options is rigidly fixed at
the software factory
KOSH needs to be able to learn to present the user at the
very first request those options which the user is most
likely to need. This is really the only question the user
ever has. "How do I get the machine to do what I want it to
do?" A good set of defaults and thoughtful design is helpful,
but only as a starting point.
Directory requesters usually come up with the system default
path or an app-specific pre-configured path, but a few
programs are intelligent enough to remember what path the
user picked when performing a save (for example), and give
that as the first option the next time that function is
requested
We might want to consider an AI lister that, by use of some
artificial neural network for instance, tries to predict what
path the user's trying to reach. Eh, well, that would be nice
anyway.
Inherent within decent file requestors we should have an
intelligent form of word completion. As with all such things
it should aid usage of the computer and not hinder the user
by making unfounded assumptions.
User-defined menu structures are something else we should
implement.
The little personal AI that each Koshan will be growing,
training and nurturing (or leaving dormant) should be able to
recognise potentially interesting objects and organisms that
exist in the wider sea and bring them to the attention of
their owner.
q)
Subject: Standardised configuration
Summary of debate: The OS could provide a global configuration utility. With this
programs or classes shouldn't have to bother with their own
configuration, but just provide a "form" for a standard
configuration utility to fill out.
r)
Subject: More on KOSH helpers
Summary of debate: A KOSH helper will have to remember a number of things to be
successful in KOSH: Smart Dirs requestors, Version tracking,
smart menus, macro building and semi-automated software
updates, Data-KnowledgeBase updates, an option to revert to
previous Configuration settings, tracking of software
failures and semi-auto bug reporting etc.
By standardizing formats (instead of the current system with
each application type having its own formats), the helper
could then use the prefs and habits of any application the
user uses to form its own particular knowledge-base.
Even without AI this sort of standardisation would simplify
user control over the whole range of options involved.
However helpers/AIs/etc have -always- in the past ended up
annoying people because they "learn" and make assumptions
about what we want to do.
s)
Subject: KOSH hotkeys
Summary of debate: When you have set a hotkey locally lots of times in different
applications there could be an option to make it apply
globally. At this point a settings editor could pop up and
ask you which applications should explicitly keep the chosen
hotkey and which should make it the same as the global one
which presumably would update automatically.
t)
Subject: Waterproof KOSH boxes
Summary of debate: Suggested that we make KOSH boxes waterproof to avoid damage
from spills of coffee that are unfortunately all too common.
However a waterproof box may have problems with a fan based
cooling system. Solutions could be to pass the internal air
current to the edge of the case away from the hot chips, or
better still make a fanless system that uses good case
design and materials to dissipate heat as it is generated.
This could be coupled with using chips that naturally do not
get too hot.
Heat dissipation to the case would have to be spread out
evenly and the temperature regulated to prevent the case
from becoming too hot.
Could Peltier elements be used to directly transfer heat
from one area to another with no moving parts? However they
use power and therefore generate heat themselves. An
alternative would be heat pipes. They are just a normal hose
with a cooling medium and fluff on the inside. It carries
heat better than for example a metal bar but can still be
bent and curved.
How would all this affect radio interference?
u)
Subject: 1999 USENIX Annual Technical Conference
Summary of debate: To be held on June 6th to 11th 1999 at Monterey Convention
Center & DoubleTree Hotel, Monterey California. Registration
by May 3rd. See the program at:
http://www.usenix.org/events/
v)
Subject: Paper on Task Migration
Summary of debate: Greg Webb and Clash Bowley (and possibly others by the time
you read this) have volunteered to produce the paper on Task
Migration that your humble scribe asked for.
(Scribe's note: Thankyou!!)
w)
Subject: disk space and scheduling
Summary of debate: With KOSH we presumably will release some form of disk
tools. With a defragmenter could a small area of disk space
be kept free so that scheduled tasks (eg: RC5 clients) could
run unimpeded. Could it be dynamic as the task was being
performed? Could the system tools pause such scheduled tasks
if needed and let them continue when possible?
With a filesystem that is well constructed to minimise the
need to defragment and have the ability to defragment
automatically as and when needed with little/no interrupts
(configurable by the user as usual) this problem would be
minimised.
In the object-based file system idea for KOSH, the
root object for any file system includes methods for
allocating and freeing blocks, which can be optimised
independently of the higher level file system objects. This
should make it fairly simple to incrementally de-frag.
x)
Subject: Accessing the system
Summary of debate: Rather than the standard downwards (or sideways) accessing
of menus we could use a pie system moving out from a central
point. As the pointer moves away from the center, the
"target" to select increases. In essence you are allowing
the user control over the size of the pop-up menu at each
instance.
Other alternatives could include using a hexagonal system
either emanating from a central point or providing a more
fluent way to pick sub-menus with more choice available at
each step. However this may not be easily accepted by people
who have been trained to expect 2D groupings in a
rectangular grid of some sort. Therefore for unfamiliar
users how intuitive would this system be?
A graffiti painting mode could provide an interesting option
for those that would like this. However painting can often
be frustrating to replicate with a mouse so this would have
to be kept simple.
If we implemented pressure sensitivity in the input device
we could perhaps remove the need for mouse buttons when
accessing the system in this GUI based manner (unless
someone preferred mouse buttons or keyboard shortcuts of
course).
A further suggestion is that the pointer could appear
somewhere other than at the top of a menu, perhaps
determined by the last or most frequent selection.
y)
Subject: Disadvantages of the Windows interface.
Summary of debate: See: http://www.iarchitect.com/msoft.html (NB: this was from
Greg's memory so it may not be quite this URL - ask him if
you get stuck) for a detailed analysis of the problems with
the Windows 95+ interface. (ps)
[Meldung: 16. Mär. 1999, 08:00] [Kommentare: 0]
[Per E-Mail versenden] [Druck-Version] [ASCII-Version]
|