Slides for today's Haifux lecture

2001-02-11 Thread guy keren


The slides for today's Haifux lecture are temporarily available at
http://users.actcom.co.il/~choo/dev-tools/ . Orr will probably have them
on the club's web site later today.

please note that i've left off various topics (e.g. GUI development and
Database tools are some of those) - the material's already suiteable for
one lecture, and we'll be able to cover GUI development in more details on
another lecture, sometime in the future.

besides, i've ran out of time ;)

see you there,
--
guy

"For world domination - press 1,
 or dial 0, and please hold, for the creator." -- nob o. dy





Re: Query: Fwd: What's the matter with you? Future Lectures

2001-06-12 Thread guy keren


On Tue, 12 Jun 2001, Shlomi Fish wrote:

 From what I remember Guy said he needed a break and was not going to give
 the lecture on June 18.

i was refering to not _preparing_ a new lecture for a while (i.e. the
'threads in GUI' one). the GUI design last part, as well as eli's
perl/tk showcase, will take place next week (i.e. on the 18-june-2001).
this is what we agreed upon at the end of the last meeting. my bad for
forgetting to update orr about it (again).

as for r2l, muli, you're doing us wrong - you said we have a month(!) :P~~
so we can dedicate the meeting of the 2-july-2001 to discussing r2l (orr
- this has to do with something muli brought up at the end of last
meeting, regarding an attempt to starting some programming activities,
outside the scope of Haifux's regular meetigns, and later on tafrir gave
an idea for the first program, r2l, as he also posted it on the list last
week). so unless someone comes out with an idea for a regular meeting
(i.e. a lecture) for 2-july-2001 - we'll turn it into a first programming
club meeting, and an r2l propaganda, and those who'll wish to get there -
will, and those who won't - will have a vacation :)

--
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy





Re: r2l, gnome applets and window managers?

2001-06-20 Thread guy keren


On Wed, 20 Jun 2001, Tzafrir Cohen wrote:

 If you go for the gnome-applet one, then gtk/gnome is probably the right
 tool.

that i know. i was asking about supporting non-gnome environments. i
already got a crude gnome-applet which works according to the specs (just
looks ugly - i will look at some other applets in order to find a decent
design for it).

 If you're going for omething with a smaller memory footprint, this may not
 be a good idea. although I haven't performed extensive testing to confirm
 this (e.g: how much of their bloated memory is not attributed to memory
 shared with other programs who use the same toolkit)

this is something that can be easily checked using 'gtop' (gnome's top).
you run it, select the process whose memory map u want to see, right-click
on it (context sensitive menu), choose 'Memory maps', thengo to the
graphical representation, and u get a complete memory usage breakup.
Text segments of libraries are shared, but Data segments are normally not
shared. my r2l applet (with a frame, a button and a label) appears to
consume about 800KB of non-shared memory, which is way too much indeed.

i'll try implementing some other type of dockable application and then
compare memory footprints.

 Before posting the previous post I searched for a guide afor a couple of
 hours, and found none, so I gave a link to a site with a whole bunch of
 such dock applets. Many of them are quite small, so hopefully they will
 serve as samples.

oh... i forgot to look at it (i did look at it for the specification, but
i just forgot to scroll all the way down).

 Hmmm... It seems that it is mostly me interested in this, so I better do
 something about this.

yes, bring us your version of r2l, as a Mincha le'elohei ha bidi(text)
:)

 Anyway, I heard that enlightenment epplets are easier to write (as
 enlightentment supplies most of the required code). Maybe you should check
 the enlightenemnt docs.

the same goes for gnome applets - you use the gnome_applet library, and
you copy and paste around 8 lines of code from the gnome applets tutorial, and
then you only need to write the UI itself (i.e. create your buttons and
labels and the rest). all CORBA communications done between the applet and
gnome's panel are hidden from you (and from me, ofcourse).

as for epplets - i'm now downloading epplet-base-xx.xx.tar.gz from
ftp.enlightenment.org/enlightenment/epplets/ - which contains soruces of
varius epplets, as well as the library tzafrir mentioned. ohwever, my
enlightenment is 0.15.X (as cme with redhat 6.2), while epplet-base
requires 0.16 - so i'm not sure i'll manage to actually write an epplet as
well. i'll check window maker next - i have it, but don't currently use
it due to disliking of its defualt icon policy (and icon for every
application, no matter if its minimized or not, and they're spread all
over the desktop!).

--
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy





Re: My own R2L Program

2001-06-25 Thread guy keren


On Sun, 24 Jun 2001, Shlomi Fish wrote:

 The code probably maqdim eth zmano, as I'm planning to give a lecture
 about Perl Modules and Objects, which will explain some of the concepts I
 present there.

no such thing as maqdim et zmano. there were no limitations on how to
implement r2l that related to the language used or to features of the
language, and most people would be able to read modules code without
learning it. writing the code is what requires learning - that's the way
of perl.

 In any case, if anybody wish to take a look, he can send me a letter and I
 will send him the code I have at the moment. Do you think it's a good idea
 that I put the code on the web prior to the meeting next week?

ah, no! that's against the rules :)   code is to be reviewed only next
week. after that - you're free to do with it whatever you want, thought i
think we might just place r2l programs with the biditext RPM on
linux.org.il, as as for sources - perhaps on Haifux's site ?

we'll also wish to consider fixing biditext a-la the methods emil has
suggested and implemented, to make the work complete.

--
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy





Re: Project suggestion: r2l

2001-06-25 Thread guy keren


On Sun, 24 Jun 2001, Kohn Emil Dan wrote:

 The xrefresh command can refresh not only the whole screen, but any
 portion of it if you pass the -geometry parameter, i.e.

 xrefresh -geometry wxh+x+y

ah. that sounds more promising...

 (see the man page). The idea is to cause xrefresh to refresh only the
 relevant windows. So when you get a drawable from XDrawString, you climb
 upwards in the window hierarchy until you reach the top-level window (i.e.
 the window whose parent is theroot window). You store this window id in
 the hash. When the stat() of the .rev file has changed,you iterate over
 the hash, take the geometry of the windows from there (XGetGeometry()) and
 invoke xrefresh with the right parameters.

the question is, how much will it slow biditext, to have to perform
several such queries on each drawing operation it makes? or it'll be only
once, and then it'll just look inside the hash table, hoping there was no
reparenting operation (e.g. a window manager was replaced, and thus its
likely that all top-level windows were replaced)?

 1) I have tried to implement this idea, it almost works, but there are
 some caveats. I still have sometimes problems with error messages from X
 (Unexpected async reply). Do you have any idea what this means?

no. but something else you said started giving me a clue as to your
problem...

 2) For some very odd reason, when i try to call system() from within the
 refreshing thread, the process loses its controling terminal and gets
 stuck. I solved this problem by making a refresh daemon process that
 continuously reads 4 integers from a named pipe and executes xrefresh with
 theses parameters. When the refresh thread wants to execute xrefresh, it
 just writes the parameters to the refresh daemon through the named pipe.

a-ha! so you've made it a multi-threaded application?? you're introducing
threads into an application via an LD_PRELOAD-ed library??

whats more - if you use threads, you _might_ need to call a special
initialization function of Xlib, to make it work thread safe - this
function is called 'XInitThreads()' - read its man page for more info.

as for using 'system' - skip that, and use 'fork' and 'exec' instead.
'system' is for lazy people. 'system' launches a shel in which the command
you supply is executed. using 'fork' and 'exec' you could run 'xrefresh'
directly.


 3) I think that I will get a refresh even if the window has been
 minimized. Do you have any idea how I can figure this out? One idea could
 be to hook XMapWindow() and XUnmapWindow(). If a window from the hash is
 unmapped, no refresh should be performed.

it might work, and there might also be race conditions (e.g. a window was
minimized just before you hooked this call, so you need to first hook it,
then check its state, and do all this in a thread-safe manner, cause maybe
the application in which your code runs _is_ multi-threaded...

this is getting more and more complicated :)

btw, there seem to be a problem with using xrefresh - what if the window
you're in is not fully exposed, but rather overlapped by some other
window? then, you'll refresh part of this window (the exposed part) plus
part of the obscuring window(s) - again, that won't look too good.

btw, this threads issue might help you solve the problem of the code you
used without 'xrefresh'.

--
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy




Re: Project suggestion: r2l

2001-06-25 Thread guy keren


On Sun, 24 Jun 2001, Kohn Emil Dan wrote:

 (btw I used an STL set (i.e. binary tree)
 instead of hash) as soon as they get destroyed.

STL? that means C++? not a good idea, since the code will eventually also
be placed inside C applications.

 BTW: What is the rightr way to invalidate an window in XLib?

 Is XClearArea(dpy,w,0,0,0,0,True);

 OK?

looks like the least worse solution.  for some reason, there seems to be
be no Xlib API to force redrawing a window (like you have in various
toolkits). however, this might result in some flaky behaviour of teh
window.. you could also try to unmap and map it (but that'll ruin windows
stacking order) or resize it by 1 pixel and then resize it again to its
original size (again, might be a bit flaky). or you could use XSendEvent,
to send an 'Expose' event for the top-level window (but for that you need
to know exactly how to fill all of its fields - a task i found a bit
problematic in the past, due to lack of proper documentation of all fields
of an XEvent).

--
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy




'r2l' continuation

2001-07-02 Thread guy keren


after throwing mud at each other at today's meeting (what do you mean
what are these plugins for? they're the ultimate way to do r2l! ;) ),
we should come up with how to conclude things up, so we can get a working
multi-desktops r2l with an auto-refreshing biditext.

i talked to ilya (who currently maintains biditext) and ofcourse he sees
things quite differently then we seem to do, and i suggested he joins the
mailing list for the coming month, to influence the development process.

i think what we should do now is:

1. combine the r2l efforts.
2. take out the 'file manipulating' part into a seperate library, that
   will be used by all programs (biditext, r2l and any relevant daemon
   process, if any).
3. modify biditext itself to contain the auto-refresh enhancements,
   instead of keeping two seperate libraries.
4. decide how the GUI should look and behave, and make it the same on all
   desktop environments.
5. clean up the sources, write simple documentation, and pack everything
   up in RPMs, to be loaded to iglu.org.il (where the current biditext
   parts are found).

i think the file manipulating library (or rather, biditext communications
library, since in the future we might replace the usage of files with
another mechanism) should be defined first, to allow the work on biditext
and r2l to continue without having to rewire them to a new library later
on.

--
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy




Re: 'r2l' continuation

2001-07-07 Thread guy keren


On Fri, 6 Jul 2001, mulix wrote:

  oh! but thus you have defeated tzafrir's original purpose of using the
  file size - so the data can be taken with a single fstat() call, rather by
  using fstat(), open(), read() and close(). remmeber this codewill be
  invoked on each XDrawString* function call inside biditext.so ...

 is this absolutely necessary? if we add polling, in whatever sort, the
 value can be cached until we get a notification that it has changed. if
 we assume no polling, however...

we don't rely on notifications for now. you should either use the file's
size, or the file's mode (fstat() returns the file's permissions as well.
there are various commands that use file permissions for various checks,
for example comstat() and talkd check the permissions on the user's tty
file to see if the user enabled/disabled getting new mail messages, or
talk requests, respetively. 'biff y' and 'biff n' is merely a chmod on
/dev/tty . the same goes for 'mesg y' or 'mesg n'.

  i suggest you switch back to reading file sizes.

 i dont like this way. it's a hack. let's see if we can find a better
 hack :)

biditext as a whole is a hack! it should be as little  intrusive on
applications as possible.

 at first i thought of using mmap, but if we use mmap, as guy has
 mentioned, we cannot know that when a file has been erased. so i took
 things to the next logical conclusion, shared memory.

what? shared memry now? you have any idea how problematic usage of shared
memory is? also, you cannot delete a shared memory page if any process has
it attached, so you cannot rely on its existance - only on its contents.

you'll also have problems if you want many copies of biditext in memory,
each usign a different shared memory segment - OSes limit the number of
shared memory segments that can exist (OS-wise) at any given time.

its hard to clean up shared memeory segments, since you have to explicitly
erase them.

 comments? i'm in favor of trying the shm approach, falling back to files
 if it doesnt work out.

if you wish to make a private version of the library with shared memoery -
do so. but first - release a version that does the simple thing we asked
for - using files, and using tzafrir's hack (file size) to check for bidi
mode. then we could start working on ther others parts (putting the lib
into biditext, and into r2l programs) and you can meanwhile play with it.
please, lets be focused on having something working in 3.6 weeks from
now..

--
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy




r2l update + TODO(?)

2001-07-10 Thread guy keren


i took some time today to modify my r2l plugins to use muli's r2llib
library instead of my r2l_ctrl.[hc] sources. i also modified the winmaker
dockapp to statically link to libdockapp, so i could distribute a binary
that people can use without installing libdockapp. the resulting binary is
almost 200KB with debug info, but goes down to 15KB after a 'strip'.
if anyone wants to have  alook, download
http://users.actcom.co.il/~choo/r2l-2.tar.gz   .
this file contains muli's r2llib library (v0.04) as well as my old plugins
(r2l-plugins-0.1) and the modified plugins (r2l-plugins-0.2). the '0.2'
version includes also 3 binaries - cmdline, gnome applet and winmaker
dockapp (their UIs are unchanged from what i showed in the meeting). note
that i tested the cmdline and the gnome applet, but didn't test the
dockapp after integration with r2llib (was too lazy to switch to window
maker), so perhaps it doesn't work.

as i see on the things we're yet to do:

1. emil - what's the status of your code rewriting? is it in any
   consumeable state? please try to modify it to use r2llib.

2. we'll then make a version of biditext that uses r2llib as well (anyone
   wants to do that? just take latest biditext's source, and make the proper
   change there). in fact, this can be done before emil releases any
   sources.

3. after emil has a working source, we can do the merge between his source
   and biditext. since his soruce adds threading the IPC, i think it'll be
   best to make the 'biditext' library compile into 2 different versions -
   one that uses emil's code, and one that does not. anyone up to this
   task?

4 meanwhile, we could try working on making the auto-refresh code less
  intrusive, e.g. try to get rid of the extra thread. also make it be
  able to stand crashes of the daemon process (if it crashes or just gets
  stuck, then the writes into the named pipe would be problematic, and
  might cause biditexted applications to hang).

5. still looking for someone to write a kde dock app (for kde2, but maybe
   one for kde1 is still relevant?)

6. still need to define a consistent interface to be used on all desktop
   environments. note that it needs to support both enable/disable
   of bidi, as well as setting the base directionality (rtl, ltr or
   neutral).

7. finally, we'll need to tackle the handling of several biditext
   instances via a single r2l instance (not to be confused with several
   top-level windows for a single biditext instance).

btw, anything going on with the usage of X properties for the
communications medium? tzafrir? nadav? anyone?

--
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy




Re: request to postpone the r2l project discussion on 30/7

2001-07-17 Thread guy keren


On Tue, 17 Jul 2001, mulix wrote:

 i just saw the date and a huge brick dropped on my head - i wont be here
 then, i'm going to be making a spectacle of myself in club med at that
 date.

 what do you guys say we postpone it in one week, so i could attend too?
 i'll be bringing the promised pizzas then, so there's an incentive :)

another option is to have shlomi's 2nd part of the gimp lecture - and
postpone the r2l meeting by 2 weeks, or this doesn't feet the time table
(e.g. shlomi won't be eary in time, or this change will not go well with
the lecture currently planed for 4 weeks from now?

--
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy




Re: Quickcam Web under Linux.

2001-07-17 Thread guy keren


On Tue, 17 Jul 2001, Idan A. wrote:

 Do any of you happen to have any experience with installing
 Logitechs Quickcam Web camera or any other camera under Linux?
 Is there a kernel module for it?

i suggest you first try to STFE for such a module (try
www.google.com/linux with keywords like 'Logitech Quickcam kernel module',
for example).

if you fail to find an answer - try asking on a larger mailing list (e.g.
linux-il's mailing list, find its address and subscription info on the
'mailing lists' section at www.linux.org.il). but ask there only after u
tried STFEing.

good luck,

--
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy




Re: r2llib-0.10 and biditext-0.05 cycling dolphins released

2001-07-28 Thread guy keren


On Sat, 28 Jul 2001, mulix wrote:

 diff -ur biditext/ImText.c biditext-prof/ImText.c
 --- biditext/ImText.c Thu Jul 12 03:12:35 2001
 +++ biditext-prof/ImText.cSat Jul 28 20:16:00 2001
[stuff deleted...]
 +  struct timeval tv1, tv2;
 +#include common8.h
 +  gettimeofday(tv2, NULL);

profiling is better done by checking CPU time consumed by the process,
with getrusage(), and not by checking real-world time, since that will
cause non-pesistent results, due to other activities run by the machine.

--
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy




r2llib interface change requests

2001-08-03 Thread guy keren


i'm integrating the base directionality support into the plugins code, and
found some inconsistencies and inefficiencies:

1. BT_ERROR should be renamed 'BT_BASE_ERROR' to be compatible with the
   other constants of its enumeration.

2. there should be a single function that gets both r2l mode and biditext
   base directionality - using a single stat() call. having to call 2
   seperate functions is inefficient - especially inside biditext's string
   drawing code...

--
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy




Re: Project Proposal : Simulators for the MAYBE and the G-Machine

2001-08-03 Thread guy keren


On Fri, 3 Aug 2001, mulix wrote:

  I have a proposal for the next project the Haifux' programming club may
  wish to take after r2l and I'd like to present it here.

 i seem to recall guy having a pretty neat project proposal. guy, care to
 post it and explain what it's about?

i'll write something up after the coming meeting on monday. i want to
first get some version of r2l packed out the door, before moving to
another thing. just in general, the idea was to write a set of utilities
that allow you to detach a process from the current terminal, and later
on, attach it to another terminal. this'll be a very simple version of
screen, but unlike screen, won't require you to prepare in advance for
detaching.

  The internals and behaviours of the MAYBE and the G-Machine are described
  in the book, which is still in print and available in Sifriyath Hadikan.
 
  My question is: do you think it will be a valuable project to write these
  simulators so they would be able to run on Linux, but would also have a
  back-end that is portable enough to run on any other 32-bit and 64-bit
  system? This project has the advantage that those who take it will become
  familiarwith the internals of a full-fledged computer, which would be a
  good experience in digital electronics.

 i'm not sure how worthy a project it would be, if you consider the
 following points:

 * how much hack value does this project have? or to putit another way,
 how much fun will we have doing it?

 * will it be usefull to anyone, excepts students taking this class?

 since i haven't read the book (though i probably will, based on your
 recommendation), i have no idea what is the scope of the work required,
 which is another issue to consider.

and in this case, it seems like a too large project. look how long it took
(takes?) us to work on r2l - it's been about 2 month already. how long
will we work on the project you're suggesting? a year or 2? :) i don't
think _i_ am willing to commit to something of this size right now. and i
don't think there are enough of us to make writing such a project faster,
so far. perhaps if we'll have 20 active programmers, it'll be feasible.

lets stick to small things for now - we saw that it works, more or less.

--
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy




updated r2l-plugins

2001-08-04 Thread guy keren


i updated the r2l-plugins to support r2llib v0.09 (i know, i'm a little
lagging) and the biditext base direction feature. also added some fixes
based on muli's suggestions. a ~150KB file is available at
http://users.actcom.co.il/~choo/r2l-3.tar.gz, including the sources of
r2l-plugins-0.3 (and older versions too) and the relevant r2llib version.
the usual 3 binaries are found in the plugins dir - r2lcmdlin,
r2lgnomeapplet and r2ldockapp. files were also sent to orr for the club's
site.

note the strange interface with r2ldockapp (window maker dock app) - click
left mouse buttont to disable biditext. click right mouse button to enable
RTL in neutral biditext text mode. click middle mouse button to toggle
biditext base mode between neutral, rtl and ltr.

in the gnome applet, note also that whenever you disable biditext
(clicking the left button) - the base direction label changes to
'neutral', so when you re-enable biditext, it still remains neutral. this
issue will be fixed once the encoding of biditext modes is changed
(hopefully soon enough?).

--
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy




[Haifux] haifux site's design

2001-09-15 Thread guy keren


just on a general note - this threads seems to take the same route as many
threads. someone suggest to do something. someone else does that thing.
everyone else goes on telling said someone that they did bad and start
suggesting alternatives. someone else couters the counterers with another
idea which will be even harder to implement. eventually - nothing gets
done.

so i suggest that unless you can show some alternative that you prepared -
don't come up with negative-only suggestions. you were given the source
code of the new design - take it, improve it, and give it back.

if you don't intend to do anything constructive - don't force others not
to do things either by discouraging them.

thus, unless someone else does anything - the new site will probably have
frames in it, for the simple reason that no one is suggesting other
alternatives.

(btw, this route was almost taken when working on r2l, in case some of you
 forgot. some people suggested jumping way over their heads with features
 and complete model changes - eventually, they never did a thing).

--
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy


--
Haifa Linux Club Mailing List (http://linuxclub.il.eu.org)
To unsub send an empty message to [EMAIL PROTECTED]





Re: [Haifux] choo's take on the site

2001-09-17 Thread guy keren

On Mon, 17 Sep 2001, Kohn Emil Dan wrote:

  3. regarding the logo (tux-at-home.gif) - i wish to write 'Haifux' along
  [...]

 GIFs!?? As far as I know, GIF is proprietary format whose use requires
 license from UNI$Y$. As a group promoting open-source and free software (I
 think we are that, aren't we:-), we should not use it. PNG is a free
 replacement of GIF. Does anybody know if all the popular (both broken and
 less broken ;-) browsers support it?

actually, i intended to generate a png, not a gif, but my gimp (one that
comes with rh6.2) kept having a 'plugin crash' when i tried saving a png
file, so i decided not to bother with it for now. this icon isn't final
anyway.

--
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy


--
Haifa Linux Club Mailing List (http://linuxclub.il.eu.org)
To unsub send an empty message to [EMAIL PROTECTED]





Re: [Haifux] Another lecture suggestion

2001-09-21 Thread guy keren


On Sat, 22 Sep 2001, Etzion Bar-Noy wrote:

 I just had an idea.
 Assuming there will be total of 40 or 50 different people in this entire
 w2l thingie (assuming you won't improve your marketing abilities, you
 techies... :-) ), and assuming half of them will install Linux as a
 result of the w2l, there will be about 20-25 machines with low security,
 in the optimal scenario. It means these lectures can also be called w2h
 (Welcome 2 Hackers).

didn't mamma teach you the difference between 'cracker' and 'hacker'?
you're talking about crackers, not hackers.

 Bottom line: Security for the newbie. There should be such a lecture. As
 a paranoid (non halusinating) person, I would like to offer myself as a
 lecturer.

no need for this as a seperate issue - we will mention this issue on the
networking lecture in a receipe-manner (i.e. you should disable any
daemons running on your system, and you should make sure the software you
do run is up-to-date. in fact, part of this is more relevant for the
basic administration lecture). if you're talking about setting up
firewalls - that's a bit different, and not necessarily a topic that'll
be good for a w2l series. we could, however, schedule such a lecture as a
regular club's lecture that will be given after the w2l series.

--
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy


--
Haifa Linux Club Mailing List (http://linuxclub.il.eu.org)
To unsub send an empty message to [EMAIL PROTECTED]





Re: [Haifux] Welcome To Linux newbie material.

2001-10-18 Thread guy keren


On Tue, 16 Oct 2001, Sivan Green wrote:

 I understand that Orna is going to speak about high performance
 computing and other power usage related to linux on the W2L lectures and
 that there are going to be usage how-to's lectrues.

its going to be a ~10 minute talk, during the _first_ W2L lecture, which
is titled 'why linux?'. there are supposed to be a few other people to
show other reasons for 'why linux' during that lecture.

 I just wanted to ask
 (and please forgive me if I'm not updated with latest news regarding
 this or didn't check the site) Do we have someone to speak to the simple
 people (e.g. those for example coming from a company wanting to know if
 they can use Linux as their desktop machine, for everyday usage, doing
 some simple talking to the people not getting too technically, providing
 some background and whys for linux, again for the everyday windows
 users common people that is,giving people reasons more then Linux is
 much more suitable for heavy proccesing  or Linux is the best server
 platform and so on ?

well, forgive me if i ask you, but did you look at the web site for the
already defined schedule of the various W2L lectures? its not 'latest
news' - the format was defined several weeks back, and is available on the
web site - along with all the planned content. if you look at it, you'll
find the answers to all your questions, and:

 Orr, I am willing to run such a lecture (completely non-technical) which
 would be an express for the enthusiasem attempting to transmit it over
 to push as manyusers to check what the alternative can do for them. Am
 not sure howI am gonna do it yet, but I can feel the proficy within me
 strugling to go out and be heared ((-:

then you'll see why your idea is like a hitpartsut ledelet ptucha.
however, since you have s nicely vulenteered (*evil grin*), how about
preparing a 9-10 minute talk that will get into the 1st meeting, in which
we want to have 5-6 people talk about 'why linux, and what did linux do
for me'. if you're all in to this, then please write up shortly what you
intend to talk about, so we'll be able to make sure that not all 5-6
people come up and say the same things. you can write this directly to me,
and i'll coordinate a meeting of all people involved in the first lecture
to handle this.

thanks,

--
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy


--
Haifa Linux Club Mailing List (http://linuxclub.il.eu.org)
To unsub send an empty message to [EMAIL PROTECTED]





Re: [Haifux] Website contest

2001-10-21 Thread guy keren


On Sun, 21 Oct 2001, Ido Diamant wrote:

 Orr, Can I see all the websites in the contest? I wanna vote :)

http://linuxclub.il.eu.org/#new_site

(orr mentioned that in his original post, or rather alon mentioned that on
behalf of orr)

--
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy


--
Haifa Linux Club Mailing List (http://linuxclub.il.eu.org)
To unsub send an empty message to [EMAIL PROTECTED]





Re: [Haifux] Linux day site: new map

2001-10-08 Thread guy keren


the new map is quite blur and hard to read. its also layed out in a
confusing manner (e.g. i'm used to seeing the main gate on the right side
of the map - not the left).

i think what will help (regardless which map is chosen) is more
annotations (in the style of the annotation you mde for the rifkin farm -
i.e. the red title and arrow). good annotations would be for:

1. main gate.
2. CS faculty building.
3. rear gate (nesher gate).
4. possible the entries on both sides of the path that crosses the
   dormitories in which rifkin resides - althought this might clutter the
   map.

(ofcourse, the rifkin farm annotation is a must).

this will allow people to quickly get focused on the map.

also, there are various spelling mistakes in the map's pages. if you could
pack and send over a copy of the pages, i can go over them and erturn the
fixed pages back.

--
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy


--
Haifa Linux Club Mailing List (http://linuxclub.il.eu.org)
To unsub send an empty message to [EMAIL PROTECTED]





[Haifux] regarding the 1st lecture

2001-10-14 Thread guy keren


in order to have the first lecture (preachery? :)  ) working out in a
non-boring way, we should coordinate whateach of the people that will
preach there is going to talk about, so we can avoid repeating ourselves.

also, in order to not be boring preachers, i think we should introduce
various features of linux during the process. i'd like it that when people
walk out of the hall room, they will:

1. have a general idea what linux is (philosophically and technically).
2. have a general idea of why they want to install it and use it.
3. have a general idea of what linux can do, and what linux is actually
   used for - in israel and outside of israel.
4. have a general idea waht the rest of the lectures will be like.
5. have a wish to come to the next lectures as well.

i think a good way to do that will be indirectly. for example, one talks
about how they installed linux at home in order to learn programming, and
then got alot of help over the internet, and explain how that goes well
together with linux's philosophy of open source and distributed
development.

so i suggest that each of us prepares what they have to say, write down
the points they intend to cover, and send it over, and then when we see
colissions (i.e. repeating ideas) we solve them. i suggest we do that
until this weekend, so we can have some updates by monday, and then can
settle colissions at the end of the meeting.

--
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy


--
Haifa Linux Club Mailing List (http://linuxclub.il.eu.org)
To unsub send an empty message to [EMAIL PROTECTED]





[Haifux] ANN: syscalltrack version 0.64 released

2001-12-01 Thread guy keren


Haifux, the Haifa Linux Club (http://linuxclub.il.eu.org) is proud to
present 'syscalltrack-0.64', the third _alpha_ release of the
system-call-tracking linux kernel module and user space
utilities. syscalltrack supports both versions 2.2.x and 2.4.x of
the linux kernel. The current release is mostly a bug-fix release, althought
it contains partial coding of features that will be properly integrated in
the next alpha release.

* What is syscalltrack?

syscalltrack is a linux kernel module and supporting user space
environment which allow interception, logging and possibly taking
action upon system calls that match user defined criteria
(syscalltrack can be thought of as a sophisticated, system wide
strace).

* Where can i get it?

Information on syscalltrack is available on the project's homepage:
http://syscalltrack.sourceforge.net, and in the project's file
release.

You can download the source directly from:
http://prdownloads.sourceforge.net/syscalltrack/syscalltrack-0.64.tar.gz

* Call for developers:

The syscalltrack project is looking for developers, both for kernel
space and user space. If you want to join in on the fun, get in touch
with us on the 'syscalltrack-hackers' mailing list
(http://lists.sourceforge.net/lists/listinfo/syscalltrack-hackers).

* License and NO Warrany

'syscalltrack' is Free Software, licensed under the GNU General Public
License (GPL) version 2. The 'sct_ctrl_lib' library is licensed under
the GNU Lesser General Public License (LGPL).

'syscalltrack' is in early _alpha_ stages and comes with NO
warranty. If it breaks something, you get to keep all of the
pieces. You have been warned (TM).

Happy hacking and tracking!

Major new features for 0.64 (mostly a bug-fix version)
---

* Filter expressions are now fully supported, and are the prefered method
  to define filtering criteria for rules. This includes better error
  messages, and full parameter/variable type checking.

* Added support for pointer parameters in system calls, and printing the
  address they contain when logging them.

major bug fixes for version 0.64:

* Unary operators ('~', '!') didn't work at all - now they do.

* Fixed a bug in 'sct_config' that could cause crashes, due to a missing
  copy constructor/assigment operator for a struct that was pushed into
  an STL container.

* Fixed a potential crasihng bug in filter expressions evaluation in the
  kernel.

* Fixed a few potential memory leaks while evaluating filter expressions
  or while failing to get locks in system call stub functions.


--
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy


--
Haifa Linux Club Mailing List (http://linuxclub.il.eu.org)
To unsub send an empty message to [EMAIL PROTECTED]





Re: [Haifux] Re: Call For Lectures

2002-02-12 Thread guy keren


On Tue, 12 Feb 2002, Orna Agmon wrote:

 My idea of the goal of the lecture, is that we can go home understanding
 how to harness several computers to do one task in a shorter time, knowing
 that most of us have more than one computer at home.

 Now, as i said, I have not really programmed using PVM, but i think giving
 a lecture about it might be a good incentive to learn.

if you build it - they will come. how long until you can give such a
lecture? if it'll be realy technical, with live code and running examples,
it could be good.

--
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy


--
Haifa Linux Club Mailing List (http://linuxclub.il.eu.org)
To unsub send an empty message to [EMAIL PROTECTED]





[Haifux] correction syscalltrack's URL

2002-02-24 Thread guy keren


i made a mistake with the URL for downloading the file. it is:

http://prdownloads.sourceforge.net/syscalltrack/syscalltrack-0.70.tar.gz

(i.e. '70', not '7').

sorry,

--
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy


--
Haifa Linux Club Mailing List (http://linuxclub.il.eu.org)
To unsub send an empty message to [EMAIL PROTECTED]





[Haifux] ANN: syscalltrack v0.7 released

2002-02-24 Thread guy keren



syscalltrack-0.7, the 6th _alpha_ release of the linux kernel system call
tracker, is available. syscalltrack supports both versions 2.2.x and 2.4.x
of the linux kernel. The current release contains some major enhancements,
and various bug fixes and code cleanups. See details below.

* What is syscalltrack?

syscalltrack is a linux kernel module and supporting user space
environment which allow interception, logging and possibly taking
action upon system calls that match user defined criteria
(syscalltrack can be thought of as a sophisticated, system wide
strace).

* Where can i get it?

Information on syscalltrack is available on the project's homepage:
http://syscalltrack.sourceforge.net, and in the project's file
release.

You can download the source directly from:
http://prdownloads.sourceforge.net/syscalltrack/syscalltrack-0.7.tar.gz

* Call for developers:

The syscalltrack project is looking for developers, both for kernel
space and user space. If you want to join in on the fun, get in touch
with us on the 'syscalltrack-hackers' mailing list
(http://lists.sourceforge.net/lists/listinfo/syscalltrack-hackers).

* License and NO Warrany

'syscalltrack' is Free Software, licensed under the GNU General Public
License (GPL) version 2. The 'sct_ctrl_lib' library is licensed under
the GNU Lesser General Public License (LGPL).

'syscalltrack' is in _alpha_ stages and comes with NO warranty.
If it breaks something, you get to keep all of the pieces.
You have been warned (TM).

Happy hacking and tracking!

===

Major new features for 0.7
--

* Support for dynamic-cast of 'struct' syscall parameters when filtering
  based on them, and for logging. See the relevant section in
  doc/sct_config_manual.html for how to use this feature. Mostly useful now
  for checking struct parameters in socket calls, so now its possible
  to check if a client prorgam tries to connect to a given port or IP address,
  etc.

* Support for 'fail syscall' actions - allows you to specify that a matching
  syscall invocation will prematurely return a given error code (or '0')
  before the system call is actually performed. Handle with care, as failing
  the wrong syscall invocations might render your system unuseable. Good
  usage example: TODO

* Support for convenience-macros in rule config files. Currently supported
  macros include:

- ipaddr(127.0.0.1) - translates an IP address to an unsigned long
 in network byte-order.
- htons(7) - host to network byte-order for 'short' numbers.
- usernametoid(root) - translates user name to UID.
- groupnametoid(wheel) - translates group name to GID.

* Experimental Device-driver control support - the syscalltrack kernel module
  can now be controlled via a device-file interface - specify -c device_file
  when running 'sct_config' to use it. The interface is currently
  functionaly-equivalent to the existing 'sysctl' interface - but it will be
  enhanced in the future to support logging via a device-file interface,
  getting rule list via the device-file interface, etc.

* Support for 'log_format' definition per rule, to override the global
  'log_format'.

* Initial correctness-testing script added. Currently only runs 2 tests -
  will become more functional on the next release.

* Support for new system calls - waitpid, close and creat.

major bug fixes for version 0.7:

* Fixes for white-space parsing in 'sct_config'.

* Fix small memory leak when deserializing 'log' actions

* Fix bug in the kernel module that would leave dangling function pointers
  in case a user cleared only the 'before' function pointer. This bug
  wasn't triggered, since sct_config always erased _all_ rules, causing this
  code path to remain yet unused.

===

--
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy


--
Haifa Linux Club Mailing List (http://linuxclub.il.eu.org)
To unsub send an empty message to [EMAIL PROTECTED]





Re: [Haifux] Python Lecture

2002-03-12 Thread guy keren


On Tue, 12 Mar 2002, mulix wrote:


 first draft[1] of the lecture slides available at
 http://vipe.technion.ac.il/~mulix/python-lecture/html/index.html


slide 8, give a concrete example of an 'if' command, like you did
 with the 'while' command.

 regarding 'range': state if the ends aer inclusive or exclusive. it
_looks_ like the start is inclusive, while the end is exclusive
(.e. up to one before the given number). or perhaps its not the
last number in the range, but rather the number of elements in the
range to generate for the list?

slide 10, definition of function 'f' lacks a parameter:
def f:   -- def f(a):

when showing filter, map, 'for' and 'del', write a comment stating
   what the output is, like you did in the rest of the examples.

slide 11, part after 'more conditionals' - what is conditional about these
 assignments?

slide 15: you run a perl script from a python function? blashphemy! :)

general: 'upload.py' is too long to serve as a first script example, and
 introduces too many library functions for a first script
 (REs, OS APIs). better put the googler.py first.

  googler.py might go against the terms of use of google ;)

  also good to put the compile_test.py before upload.py .

  you won't have time to go over all the examples - the tutorial
  part will take more then an hour, in my opinion.

--
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy


--
Haifa Linux Club Mailing List (http://linuxclub.il.eu.org)
To unsub send an empty message to [EMAIL PROTECTED]





[Haifux] slides for monday's lecture

2002-04-06 Thread guy keren


the slides for monday's lecture (posix threads - part 1 - threading
primitives) are ready. sent a copy to orr to put on haifux's site.
meanwhile, the '.tgz' file is temporarily available at
http://users.actcom.co.il/~choo/posix-threads-1.tar.gz

just for info - the first lecture assumes knowledge of C, but no knowledge
of multi-threading or of posix threads. the 2nd lecture will build on top
of the 1st lecture, and will deal with threading models (thread pools,
command queues, active objects, futures) as well as with issues
specifically related to the linux kernel and LinuxThreads's
implementation.

see you

--
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy


--
Haifa Linux Club Mailing List (http://linuxclub.il.eu.org)
To unsub send an empty message to [EMAIL PROTECTED]





Re: [Haifux] Re: syscalltrack developers meeting

2002-04-09 Thread guy keren


On Tue, 9 Apr 2002, Shlomi Fish wrote:

 I believe switching to Lex and Yacc will allow adding new features much
 more easily. So it may be a good idea to invest a lot of time now, only so
 one can later make sure that easy changes easy. It's like trying to
 portably build a DLL without using GNU libtool. Doable, but much easier
 with the latter.

ok. so where is the code?? if you just want to have a meeting in order to
convince us to write it - spare the time for something else. if you so
want to see it done - you'll have to do it. now, lets break this loop - i
don't see a point in such a meeting - convincing the convinced is
pointless.

i do see a point to a lecture for the _club_ about lex and yacc - but you
already stated you won't give one. i might think of giving one myself,
then - though i'll have to re-learn the subject... and it'll have to wait
until sometime after the multi-threading session.

--
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy


--
Haifa Linux Club Mailing List (http://linuxclub.il.eu.org)
To unsub send an empty message to [EMAIL PROTECTED]





[Haifux] Re: Re: syscalltrack developers meeting

2002-04-09 Thread guy keren


On Tue, 9 Apr 2002, Shlomi Fish wrote:

 Fine, let's just have a meeting. We'll discuss lex, yacc, syscalltrack in
 general, the SSSCA (Orr, do you intend to update your U.S. Laws lecture),
 Life, the Universe and Everything.

then what's the purpose (read: focus) of such a meeting? are you
suggesting a 'haifux get-together'?

 Maybe I can take a look at the code and
 actually hack something in Perl/Lex/Yacc that will compile the
 configuration file into a C code that loads it, compiles it with gcc and
 run the compiled file. That's my plan for the initial release, as I'd
 rather not create bindings for everything that sct_ gives me.

ofcourse this relies on the existance of gcc on the target machine.

 My demo was just a suggestion. It may actually attract more people (like
 Orna) who wish to see how those two tools work.

perhaps. thought i thing a more thorough lecture about it will be more
reasonable.

  i do see a point to a lecture for the _club_ about lex and yacc - but you
  already stated you won't give one. i might think of giving one myself,
  then - though i'll have to re-learn the subject... and it'll have to wait
  until sometime after the multi-threading session.

 Agreed. I can help you with that. My constructive suggestion is for you to
 use Perl because writing a compiler or interpreter in Perl isso much
 straightforward than in C. (that's one of the things I don't like about
 the Dragon Book, which I read at present) And Perl supports Lex and Yacc.

if _i_ prepare the lecture, then _i_ will demo it in C, not in perl.

 You can later demonstrate a small project in C, just to show how to use it
 there, but demonstrating everything in C would be insanity. Don't take it
 wrong, but I think it made your Gtk+ lecture, much less effective.

i'm not sure most people agree with you. you find it less effective for
_you_, cause you're used to perl. most of the audiance seems to be more
familiar with C then with perl, and the code was simple enough (IMO).

 I hate giving C code as an example. That's what Perl or Python or Lisp (or
 Haskell? Sorry could not resist) and other fast protoyping languages are
 for. To demonstrate things. Maybe writing vertical applications is better
 in C in the long run. But not demonstrating stuff.[1]

you've got a fixation which you keep voicing on every opportunity. i've
got a fixation about fixations, and thus i'll keep voicing my anti-opinion
every time you voice your opinion :) and i think there's one thing you
don't seem to grasp (which is why you keep preeching to me about perl) - i
_love_ perl. i just don't like advocating it so loud, and am not blinded
too much to be able to see its problems and where it doesn't fit, for
various reasons.

 [1] - It reminds me of someone. He studies in an English university with
 Java, so he wrote a funny pseudocode in it. I corrected his code and
 generally told him that it was a bad idea to do it with Java. Java may be
 a good language to teach programming courses in, but again, any language
 where you have to type System.out.println to print a string to the screen
 is not a fast prototyping language.

shlomi, by your implied definition, any language that is not perl is not a
fast prototyping language. ;)

--
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy


--
Haifa Linux Club Mailing List (http://linuxclub.il.eu.org)
To unsub send an empty message to [EMAIL PROTECTED]





Re: [Haifux] Re: RFC: Sys-call-track Meeting

2002-04-09 Thread guy keren


On Mon, 8 Apr 2002, Shlomi Fish wrote:

 I'm not going to fill a two hour lecture explaining a technical tool such
 as Lex and Yacc. O'Reilly can fill a book about those two, but I have more
 exciting things to do. I just see it as an absurd thing that the SCT
 configurator is still not written using Lex and Yacc and that those tools
 can make it so much simpler and easier to understand.

its not absurd - its just laziness on behalf of people. we already had 3.5
people who vulanteered to do this (you were one of them, in case you
forgot) and none of them did it eventually. code is still not created by
talking about it, i'm afraid ;)

--
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy


--
Haifa Linux Club Mailing List (http://linuxclub.il.eu.org)
To unsub send an empty message to [EMAIL PROTECTED]





Re: [Haifux] Re: Re: syscalltrack developers meeting

2002-04-10 Thread guy keren


On Wed, 10 Apr 2002, Kohn Emil Dan wrote:

 snipped
  ofcourse this relies on the existance of gcc on the target machine.

 Just for curiosity, does anyone anyone know a machine without gcc on it?
 OK, besides Sinclair Spectrum and C64 ;-)

yes. any system on which gcc wasn't _installed_. this could be an embedded
system (no space to install gcc there), or a dekstop machine on which gcc
wasn't installed for some reason, etc.

--
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy


--
Haifa Linux Club Mailing List (http://linuxclub.il.eu.org)
To unsub send an empty message to [EMAIL PROTECTED]





[Haifux] user-level threads: Signal Handler (fwd)

2002-04-15 Thread guy keren


i saw this email on the linux-kernel mailing list - its a guy trying to
implement user-level threads on linux, and encountering problems with
making them pre-emptive. this looks similar to what emil was talking about
during last monday's club meeting about Posix threads.

the reply this guy got, btw, was:

Look at how OpenAFS handles this, or use GNU pth.

so i guess anyone interested in seeing user-level threads implemented in
linux should look for the above two things on google, or just:

GNU pth (http://www.gnu.org/software/pth/) -- NON-preemptive threads.

the LWP implementation in OpenAFS seems to be non-preemptive as well
(OpenAFS is a branch of IBM's AFS - Andrew File System).

-- 
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy

-- Forwarded message --
Date: Mon, 15 Apr 2002 18:31:46 +0530
From: Alpha Beta [EMAIL PROTECTED]
To: [EMAIL PROTECTED], [EMAIL PROTECTED]
Subject: [Haifux] Signal Handler

i am trying to implement a user level thread package with preemption between threads.

There is provision for threads relinquishing the processor themselves (ie without 
preemption): this is peacefully implemented using setjmp() and longjmp().

For preemption, I set a timer using setitimer() and install a signal handler to catch 
the signal SIGVTALRM this timer generates.

When a thead is executing and the timer expires, i enter the signal handler.I want to 
save the state the currently interrupted thread had before coming into the signal 
handler into a structure similar to jmp_buf(which setjmp() and longjmp() use), so that 
signal handler saves this state(to be resumed later when scheduled) and passes control 
to another thread.
The important point is that I MUST SAVE THAT STATE OF THIS INTERRUPTED THREAD THAT IT 
HAD AT THE TIME OF
GETTING INTERRUPTED BY THE SIGNAL__AND__  __NOT__ THE CURRENT STATE ( the state 
inside the
signal handler).
{{ As i think, the reason for this is :
The implementation of signal handlers in linux is done by creating a seperate stack 
etc for the signal handler's text
and stack regions, such that at the end of the text region some code is added etc. to 
make sure that the signal handler
returns by executing the system call sigreturn (this is required so that the kernel 
can do some posix required
book keeping before continuing with the execution of the interrupted process by a 
ret_from_sys_call). if i save the context of this interrupted thread in the signal 
handler and longjmp() to some other thread's saved state,  when i later resume the 
execution of this interrupted thread, i'll in effect be resuming execution in this 
signal handler and since the signal handler's return address will NOT be valid then : 
i won't be returning to the place in the program where i got interrupted earlier, 
rather i will return with the sigreturn system call into the kernel, .. and 
everything will turn upside down.
}}

So the problem boils down to how can i find in the signal handler the state of the 
process when the signal was received so that i can put it in a jmp_buf struct and 
resume execetion from there.


so much for it.
tell me if u can implement preemptive scheduling of C code in a user level thread in 
some other way.

thnx
Abhishek



See Dave Matthews Band live or win a signed guitar
http://r.lycos.com/r/bmgfly_mail_dmb/http://win.ipromotions.com/lycos_020201/splash.asp
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



--
Haifa Linux Club Mailing List (http://linuxclub.il.eu.org)
To unsub send an empty message to [EMAIL PROTECTED]





[Haifux] slides for this monday's haifux meeting

2002-04-20 Thread guy keren


i've finally gotten the slides for this monday's haifux meeting (posix
threads, part 2) ready. until orr places them on haifux's web site, they
are available from http://users.actcom.co.il/~choo/posix-threads-2.tar.gz

(slides are in html/gifs format).

what i'll probably cover on monday (after finishing the slides regarding
thread termination synchronization i didn't manage to get to, last time),
is probably the first part of the 'threading models', i.e. thread pools
and the like, with some (small) potential of getting to active objects -
depending how slow it'll be going over the source code found on the
slides.

see you,

-- 
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy


--
Haifa Linux Club Mailing List (http://linuxclub.il.eu.org)
To unsub send an empty message to [EMAIL PROTECTED]





[Haifux] Can't make it to tommorow's lecture

2002-05-05 Thread guy keren


i know its a bit late now, but i realize that i'm overly pressed with work
right now, and i won't be able to give the lecture tommorow - i'll have to
postpone it till 2 weeks from now (that is, 20-may) - after teh current
pressure at work hopefully settles down :)

sorry for the late notification,

-- 
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy


--
Haifa Linux Club Mailing List (http://linuxclub.il.eu.org)
To unsub send an empty message to [EMAIL PROTECTED]





[Haifux] YOM IYOON: call for participants

2002-05-29 Thread guy keren


(as i've got a few yes-es already, i'm moving to the 2nd part of
 helping to set up a yom iyoon for linux enthusiasts).

based on gilad's plan of twisting hetz's original idea, we are planning to
have a 'linux day' on some friday morning, 1-2 month from now (that is,
sometime in july, most likely).

The current plan include:

1. renting the small cinemateque hall (in Tel-Aviv) for about 3 hours on a
   friday morning.

2. having a public showing of the 'Revolution OS' movie (for those who
   didn't hear yet - its a documentary movie that tries to gather (via
   interviews) the story of the free software/open source movement).
   the movie is 85 minutes long.

3. carrying between 2-3 _technical_ lectures about various aspects of
   linux. currently, gilad suggested to give a lecture about using linux
   for embedded systems. we'll see what other lectures to present as
   things materialize - we promise to make them technical.

this event has costs coming with it, and we intend to pay it from our own
pockets. due to that, anyone that wishes to come would pay 50 NIS as their
share of helping pay for the hall (2000-2500NIS) and the movie screening
rights (~400$). if due to some miracle, there'll be enough people to cover
all costs, the ammount of money per person will be reduced - but i don't
expect to have so many people (over 80) there anyway.

before we go and make the actual ordering of the movie, the hall and
lectures preparation, we want to make sure there is enough demand.

Thus, i would like everyone that rely intends to come to the event, to
send me email (in private, to [EMAIL PROTECTED]) with your name (full
name, so i'll be able to sort the list properly), and write that you want
to come _with_ your 50 NIS bill (cash, we have no means to handle credit
cards - we just collect the money on behalf of everyone, to pay for the
expenses).

when we get enough people on this list (20 people being the minimum),
we'll make the formal preparations and ordering required. i hope we'll
reach that number (or surpass it) in 1-2 weeks.

if there are any questions which were _not_ refered to in this email,
please write directly to me. if a question would seem to be of public
interest, i'll write about it to the list.

feel free to forward this letter to people who are not subscribed to
linux-il (or haifux) - every 50 NIS bill is allowed to bring with it one
human companion ;)  (and don't get smart - its 50 NIS per person, not per
two).

ok. enough talking. waiting for your letters to pile up now ;)

-- 
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy


--
Haifa Linux Club Mailing List (http://linuxclub.il.eu.org)
To unsub send an empty message to [EMAIL PROTECTED]





Re: [Haifux] Re: Sys-Call-Track Developers Meeting

2002-06-09 Thread guy keren


On Sun, 9 Jun 2002, Muli Ben-Yehuda wrote:

  Unfortunately, I realized that I have a test in the course Internet -
  Architecture and Protocols at that day and time. I see too options: make
  the meeting without me or postpone it by a week. I will support both
  verdicts.

 Postponing it by one week is fine with me. Who is planning to come,
 though?

the question is - what exactly are we going to do in that meeting? 'a
syscalltrack hack fest' is too vague. i dont' realy see what content we
could pour into this title.

-- 
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy


--
Haifa Linux Club Mailing List (http://linuxclub.il.eu.org)
To unsub send an empty message to [EMAIL PROTECTED]





Re: [Haifux] Some real message (for a change)

2002-06-11 Thread guy keren


On Tue, 11 Jun 2002, Orr Dunkelman wrote:

 I've put an alpha version of the lecture I'll give in the Introduction to
 OS lecture next week at http://vipe.technion.ac.il/~orrd/lecture.ps
 comments are welcome and appriciated...

there are a _few_ language issues (imo) in a few slides, and a few
semantic issues:

slide 2 - might wish to replace the richard stallman's GNU with richar
  stallman's GNU - i _think_ the 'the' there is redundant.

slide 3 - another field linux has evolved greatly is - might to change
   to another field linux has greatly evolved in is.

slide 4 - the title where can you do with linux? doesn't fit well.
  perhaps what can you do with linux?  ?

  regarding linux being used where stable OS-es are requiered -
  this is only half of the true, and might be question by people.

  why not solaris/aix/hpux...? - they are much more expensive,
  run on less hardware - mostly proprietary. solaris on PC has
  less drivers then linux. they are closed source - harder to
  customize/modify/fix/debug.

  why not freebsd/netbsd/... ? - they have much less driver
  support then linux, and much smaller industrial support - even
  if they are somewhat more stable.

slide 5 - mosix is not alone - there are many clusters that work using MPI
  or PVM - the 'beowulf' (spell?) clusters work using one of
  those.

slide 7 - in DOS, COMMAND.COM is the shell, not part of the operating
  system per ce (well, at least i think it is). the other two
  files are indeed the operating system itself.

slide 8 - in the end 'this program handle over the computer to' should be
 this program hands over the computer to or
 this program hands the computer over to

slide 9 - for a x86 intel processors, the 'a' is redundant. should be:
  for x86 inter processors, or for a x86 intel processor.

slide 10 - the bios can be used as a hardware interrupt handler - this
   is just half of its I/O services. the other half is to send
   commands to the hardware. so better just state the BIOS
   can be to access the system's basic hardware.

that's it for now.

waiting for the rest,
-- 
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy


--
Haifa Linux Club Mailing List (http://linuxclub.il.eu.org)
To unsub send an empty message to [EMAIL PROTECTED]





Re: [Haifux] Some real message (for a change)

2002-06-13 Thread guy keren


On Wed, 12 Jun 2002, Kohn Emil Dan wrote:

 I would like to make a brief technical comment regarding a slide. Since it
 is not about your English, I think it's OK to post it online.

 The processors of the x86 family when powered up and/or after reset start
 running from address

 F000:FFF0

 which will point to address FFF0 (see the Intel manual at

and how are they set to start from this address? its hard-coded inside the
processor? can't it be controlled by the user?

in the X86 days, it used to be external wiring (why would the CPU
manufacturer enforece a system memory layout on the user, after all?). i
wonder when they started hard-coding it in the CPU.

 So it's not an external circuit which supplies the address, it's the ROM
 BIOS code.

no its not. the ROM just makes _another_ jump. the ROM does not determine
the CPU-s _initial_ start address.

-- 
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy


--
Haifa Linux Club Mailing List (http://linuxclub.il.eu.org)
To unsub send an empty message to [EMAIL PROTECTED]





Re: [Haifux] Summary for the Presentation [was Re: Perl Lex+YaccExample.]

2002-06-21 Thread guy keren


On Fri, 21 Jun 2002, Muli Ben-Yehuda wrote:

 As for the upcoming syscalltrack ( this is how it's written)
 developers meeting, here is the tentative agenda with very tentative
 times. If anyone wants to talk about anything else orhear about any
 other subject, let me know.

all in all - you plan for a 135 minutes meeting - assuming a 5-10 minute
break in the middle, that's around 2.5+ hours.

so it'll be 18:30 - 21:10 or so?

btw, regarding gen_syscalls.pl - i could give a few minutes of
explanations about how it works, and what i think we should do with it. i
sugest we concentrate on how to design it, regardless of language, so
we'll be focused, and not delve into language fights.

 - syscalltrack demonstration in the wild. (15 minutes, Muli)

10 minutes would be enough - it was already demonstrated a while back, in
the syscalltrack lecture.

 - technical discussions (30 minutes each)

 - the old device file design and the new device file design, with
   explanations of linux special device files. (Muli).

 - shlomif's demonstration of lex  yacc (Shlomif)

 - redesign of gen_syscalls.pl (30 minutes, everyone, brainstorming)

 - the future of syscalltrack - features and requisites for a 1.0
 release. (15 minutes, Muli).

 - the far future. (15 minutes, Muli).

these 2 could take 15 minutes together - unless a discussion (read:
argumentative fights) will develope ;)

-- 
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy


--
Haifa Linux Club Mailing List (http://linuxclub.il.eu.org)
To unsub send an empty message to [EMAIL PROTECTED]





Re: [Haifux] Administrative notice

2002-06-25 Thread guy keren


On Tue, 25 Jun 2002, Gabor Szabo wrote:

 Is there a way to partially subscribe to a list meaning:
 I can post but I only get responses to my own post not other posts ?
 (whatever that might be: based on thread or subject line or ?)

i doubt such a feature exists, for several reasons:

1. when people reply to a post, they don't always keep the same subject.
   thus, relying on it would constitute a broken design.

2. it takes more resources from the mailing list server, to keep the lists
   of all(!) postings in order to do that appropriately - requireing it to
   keep a database of sender + subject (not only the original post - each
   post, including those replying to an older reply, should be accounted
   for). for very large mailing lists, this is extra overhead.

 ps. do you read linux-il or shall I announce the Perl meetings here as
 well ?

who exactly did you refer _this_ question to? orr? a virtual 'joe average'
reader? or are you asking if this is appropriate? i think its _somewhat_
appropriate, thought i think it won't win you any new participants, since
you do all those meetings in tel-aviv, while we'll are mostly in haifa.

however, i guess that unless anyone raises an objection to such posts (i
can think of some, which are marginal) - go ahead and try. note that this
is just _my_ opinion - the list as a group never manages to get to a
single unified opinion ;)

-- 
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy


--
Haifa Linux Club Mailing List (http://linuxclub.il.eu.org)
To unsub send an empty message to [EMAIL PROTECTED]





[Haifux] YOM IYOON - detailed schedule

2002-07-01 Thread guy keren


christhoph bugel pointed out we forgot to mention when the linux day ends,
and i promised to send the detailed schedule to the list, so here it is:

9:15 formal gathering time. have your 50s handy ;)
9:30 actuall beginning, carrying opening notes (duration: 5 min.)
9:35 first lecture begins (duration: 50 min.)
10:25 short break. (duration: 10 min.)
10:35 second lecture begins (duration: 50 min.)
11:25 break. (duration: 20 minutes).
11:45 movie begins (duration: 85 min.)
13:10 movie ends.

note: this schedule might change a bit, depending on 'local issues'. if
there'll be a _planed_ change, we'll send a note to the list, and
personally to all the people who confirmed their arrival (37 people so
far).

-- 
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy




--
Haifa Linux Club Mailing List (http://linuxclub.il.eu.org)
To unsub send an empty message to [EMAIL PROTECTED]





[Haifux] 'valgrind' - a successfull purify-like application

2002-07-01 Thread guy keren


(for those who don't know - 'valgrind' is probably the most advanced
open-source software for detecting memroy corruption and leaks bugs in
C/C++ applications, on linux/X86).

i've seen a mention of 'valgrind' made by muli a while back, regarding a
bug he fixed for syscalltrack. i re-checked 'valgrind' today, and it looks
like it had improved alot since 1-2 month back - it now supports linux
2.2 kernels (and not only 2.4 kernels) and glibc 2.1 (and not only 2.2),
so it runs on redhat 6.2 and up.

actually, it had some problem on my machine, but a small code change fixed
the problem. and it works. and works quite well. i tested valgrind on a
small (around 40K lines) gtk application we're developing, and managed to
find varius memory leaks and memory corruption bugs using it. the
application works quite well, and althought it has a noticeable impact on
the execution speed of the tested  application, the application is still
able to operate. for anyone who was looking for something that could match
the abilities of purify/insure++/boundschecker on linux, without paying
the monopoly-prize to parasoft, you must check out valgrind.

the URL is 'http://developer.kde.org/~sewardj/', and version 1.0 is rather
near.

-- 
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy


--
Haifa Linux Club Mailing List (http://linuxclub.il.eu.org)
To unsub send an empty message to [EMAIL PROTECTED]





Re: [Haifux] Re: Never say Yuck about yacc

2002-07-16 Thread guy keren


On Tue, 16 Jul 2002, Shlomi Fish wrote:

  Another thing that got me stuck, is the list-like recursion, such as
  (yacc!):
 
  chunk: { $$ = ; }
|item chunk { $$ = $1.$2; }
  ;
 
  Now, note the first line, representing that chunk could be nothing. It
  also says that nothing should be nothing (that is, $$ = )! It took me
  some time to find out that the $$= is necessary, otherwise we get
  previous garbage in $$, and I mean GARBAGE.
 
  Now, I guess that the compiler freaks among us will notice, that I made
  a right recursion, as opposed to the glorious left recursion, which
  would be saying chunk item { $$ = $1.$2; }. (Right recursion forces
  the parser to read all the chunk into the stack before starting to
  chew).
 
  The reason I stayed with right recursion is that left recursion didn't
  work :(. I got empty strings. Anyone got any idea of why?

 I think Yacc imposes some limitations on its grammar and does not accept
 left-recursive grammars. Better check the Dragon Book to be sure.

to be exact, yacc will accept any grammar you give it, but is guranteed to
work properly only for LALR(1) grammars. the reason that us 'compiler
freaks' use left-recursions, is because this usually solves conflicts with
the grammar that make it non-LALR(1) grammar. yacc is not capable of
properly handling all context-free grammars - only the LALR(1) subset.

ofcourse, if you want to know what the hell LALR(1) stands for (its
pronounced El-Ei-El-Ar-One, btw) - indeed, get yourself a dragon, and read
chapters 1-4 (or just chapter 4, which i think deals with grammar-based
parsers, and with yacc specifically). you'll learn to appreciate handles
;)

-- 
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy


--
Haifa Linux Club Mailing List (http://linuxclub.il.eu.org)
To unsub send an empty message to [EMAIL PROTECTED]





[Haifux] lecture topic suggestion - strace and the anatomy of a C application

2002-07-28 Thread guy keren


looking hard for a new topic for a lecture, i came to think about strace.
a lecrture about it will cover the anatomy of a C application on linux, as
seen via strace, and the use of strace for debugging purposes and problem
solving, for programmers and sys admins alike.

in fact, i already demonstrated strace once in a lecture (long ago) - this
one (if it takes place) will go deeper into strace's magic ;)

if i get 2-3 'yei' sayers, i'll prepare it to follow the current last
lecture (auto-tools? or the 3 years celebration? or what ever is now the
current last)

-- 
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy


--
Haifa Linux Club Mailing List (http://linuxclub.il.eu.org)
To unsub send an empty message to [EMAIL PROTECTED]





Re: [Haifux] lecture topic suggestion - strace and the anatomy ofa C application

2002-07-29 Thread guy keren


On Mon, 29 Jul 2002, Orr Dunkelman wrote:

 yes, and I forgot to schuedule one fo mulix lectures, so you get the slot
 after Sukut...

ok. i got more then 2-3 'yes'-es, so i'll go for it. and i'll also cover
'ltrace', as some people suggested (ltrace traces calls to library
functions - i think only libc's, but i'm not sure. will check until the
lecture ;)  ).

-- 
guy

For world domination - press 1,
 or dial 0, and please hold, for the creator. -- nob o. dy


--
Haifa Linux Club Mailing List (http://linuxclub.il.eu.org)
To unsub send an empty message to [EMAIL PROTECTED]