Slides for today's Haifux lecture
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
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?
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
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
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
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
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
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(?)
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
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.
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
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
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
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
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
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
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
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.
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
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
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
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
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
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
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
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
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
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
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
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
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
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)
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
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
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
(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
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)
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)
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.]
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
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
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
(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
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
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
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]