From: Xavier V. <xav...@fr...> - 2004-03-14 10:20:33
|
Hello Mirtin, hi list > [...] > My suggestion (and that's the way I understood Michael as well) is to > use a "worker process/thread" for each plugin that will be slow/may > block. Memory consumption is not so much an issue, since most of it will > be marked as "shared" anyway, so memory usage on the box will only > increase marginally. Okay, I was misinformed about fork. Let's continue this way. But another question : for example eval needs the mail('unread') value, so calls a (hypothetical) mail() function in plugin_mail, which forks to retreive POP summary, and it takes, for example, 5 seconds, what does the eval do within this time ? I don't know what Michael wants on this issue. > A syscall? Care to explain? All I know so far is that the wireless > extensions API works via IOCTL calls - I never heard/read of syscalls > for that in the past (maybe this is simply about a different definition > of "syscall" - to me, a "syscall" is a function exported by the kernel - > whereas an IOCTL call is a specific syscall, that takes specific > parameters (and those parameters tell it what to do)). I don't really know what is the difference, I've not been hacking IOCTL since this week :), but read linux-2.6.4/include/net/iw_handler.h, there are a bunch of explanations there for the new API. If it's possible, I would prefer to call this [IOCTL|syscall] instead of parsing /proc/net/wireless, as it's funnier and more educative for me. > So, you _are_ working on that (or did you just add it to your ToDo > list)? Don't get me wrong - I just want to make sure we don't duplicate > work (and still get a working wifi plugin in a timely manner). I've > added plenty of things onto my ToDo list in the past (which I never > completed), so I want to make sure :-) I'll write this, but you may help me if you know [IOCTL|syscall] well, as I don't know either how to do :) Reading plugin_dvb.c, IOCTL are special adresses in a /dev node, while, as far as I understand wireless extensions have merged in linux/include/linux/netdevice.h, and "INET is implemented using the BSD Socket interface as the means of communication with the user level" Help ?!?! Bye ! -- Xavier VELLO <xav...@fr...> |