00:00:00 --- log: started osdev/02.11.12 00:00:32 and I highly doubt the military would give a shit about thie license 00:00:33 also, i wonder if i really feel that strongly - im losing my pacifist feelings for some reason 00:00:44 --- nick: kemu|school -> kemu 00:00:49 geist: i think the military has way better tools than anything i could make 00:01:09 and that too 00:01:11 but then again, maybe not 00:01:37 basically, whatever license you use doesn't mean anything unless the code it is with actually is worth a damn 00:02:04 i worked on some DoD projects - they were very confused - i hope the people i met are not in charge of anything real - like, for instance, i would be really scared if those people coded the systems that trigger nukes :) 00:02:25 geist: hehe, yah, and to date nothing in my OS is useful or innovative 00:02:48 the DoD has some cool research grants though - some of the SBIR projects look really interesting 00:02:51 same with teh DoE 00:02:56 s/teh/the/ 00:03:20 damn I wish the linker worked 00:03:34 I guess it's something bad in the way I built binutils 00:03:42 so when i think about how TCP/IP was DoD funded I start to realize my whole career is the result of military research spending 00:03:51 geist: is that binutils for your OS? 00:04:16 geist: you mean you didnt write your own assembler and linker? :) 00:04:53 not yet 00:05:22 I'm not really interested in doing that 00:05:23 not all military projects are necessarily evil - i have made the realization that i should accept the fact that everything about software/unix/etc is slightly tainted - that makes it easier for me to do DoD stuff and not feel guilty 00:05:40 hehe, ic - the linker, for me, sounds like a very interesting part of the system 00:05:48 especially since it happens at run time 00:06:02 i would love to write a dynamic linker for my little crappy os 00:07:02 ah now dynamic linkers are interesting 00:07:15 that's actually what stopped the dreamcast port a while back 00:07:22 ic 00:07:23 what happened? 00:07:28 the SH-4 relocation entries aren't documented at all 00:07:41 I couldn't quite get the elf binaries to relocate properly 00:07:49 so the kernel would load, but the user space loader would fail 00:08:14 hopefully I'll get it working finally 00:08:17 I was really close 00:08:35 * geist sees why the sh-newos-ld fails 00:08:50 I didn't quite edit the make system properly. gotta rebuild binutils 00:09:30 did you ever come across a good elf reference? ive never found anything that clearly described it 00:10:43 sure 00:10:52 one that described i386 elf at least 00:10:57 cool 00:10:59 where? 00:11:00 the relocation entries are arch dependant 00:11:01 ugh 00:11:08 I dont know, I printed it out 00:11:13 dont know where the original came from 00:11:14 ic 00:11:15 why did everyone at LL2 dis macros 00:11:21 i dunno 00:11:25 i use them in certain special cases 00:11:30 i hated the lack of macros in java 00:11:41 that's the biggest pain in our ass at work 00:11:45 no macros in java 00:11:50 i even considered using CPP to preprocess java 00:11:52 we may switch to c# as a result 00:11:59 no no 00:12:02 why not pre-process them? 00:12:05 lisp macros, not C macros 00:12:18 can't preprocess inside simulators 00:12:20 ie, ides 00:12:31 ic 00:12:46 * sleep- uses xemacs for everything and forgets sometimes that ppl use anything else 00:13:03 woohoo! binutils works now 00:13:41 cool 00:14:02 yeah, if we're going to put out an SDK, requiring that the devs use xemacs is not an option 00:14:14 man, im downloading a new JDK to start working on this java project :( im not too excited about that 00:14:21 the final builds are totally command line, make and gcc 00:14:26 we can preprocess there 00:14:30 i was happy working on C++ again - now its back to java 00:15:13 geist: i hate one thing most of all about java: theres no good way to make dependencies (that I know of) rebuilding the world happens way too often 00:15:27 geist: in c++ its real real easy to only recompile the minimal changes 00:15:31 because of header files 00:15:41 yep 00:15:50 in java, it requires a tool that can detect the difference between an interface change and an internal change 00:16:03 i suppose advanced IDEs can do that, but not linux-based tools 00:16:24 build/sh4/lib/libwin/libwin.so: undefined reference to `__gxx_personality_sj0' 00:16:25 ick 00:16:41 another one of those damn c++ exception or something functions 00:16:45 maybe i should write a java parser that can diferentiate between code internal changes and interface changes 00:16:53 geist: i never use C++ exceptions 00:17:18 geist: think of how many distrurbing things have been added to the elf format to support C++ crap 00:17:25 geist: like global constructors, etc. 00:17:34 its creepy sort of 00:17:59 it's not added to elf 00:18:07 and templates - i love using them - im creeped on the implementation 00:18:08 elf is just a container for it, but I think you know what I mean 00:18:09 geist: ? 00:18:19 i think there is a global constructor list in elf 00:18:38 its general purpose code, but it was put there to support C++ 00:18:42 if i recall correctly 00:18:45 but it's not elf itself 00:18:51 it's just a section that you have to take care of 00:18:54 that's pretty easy though 00:18:56 ic 00:19:04 well, i shouldnt really talk - i dont know elf to well 00:19:14 --- quit: cray ("Client Exiting") 00:19:16 but it seems like C++ has drivern the linker format to add stuff 00:19:27 s/vern/ven/ 00:19:47 static 00:19:47 void _call_ctors(void) 00:19:47 { 00:19:47 void (**f)(void); 00:19:47 for(f = &__ctor_list; f < &__ctor_end; f++) { 00:19:50 (**f)(); 00:19:52 } 00:19:55 } 00:19:56 and it seems like the C library format was stable - then C++ came along and made all the library formats break because they had to add stuff 00:19:57 that does it 00:19:59 yeah 00:20:03 :) 00:20:18 c++ does not work well as a library 00:20:22 also, im not sure, but template stuff must be real weird in libraries 00:20:25 it's not designed well for it 00:20:28 maybe not at all 00:20:49 i had a bug a few months ago - someone had a global constructor in a shared library - oops 00:21:12 uh 00:21:18 a global object? 00:21:22 yeah 00:21:26 what's wrong with that? 00:21:36 well, its constructor was never called 00:21:43 i assumed it was not allowed in c++ 00:21:44 except you can't rely on the order of the construction 00:21:52 it's totally supported 00:22:04 at least my linker supports it 00:22:12 whatever it was, (i thought it should be supported) i fixed it by dynamnically allocating it 00:22:15 as you load the libs, call the ctors 00:22:19 not a big deal 00:22:20 things like that scare me 00:22:45 --- quit: stormbind (Read error: 60 (Operation timed out)) 00:22:47 i thought it was legal, my co-workers said that it never works so i changed it 00:22:58 heh, probably a bug in the dynamic linker 00:23:01 it should totally work 00:23:16 geeze - how hard would be be - just iterate the list and call all the ctors 00:23:21 but no, somehow its broken 00:23:22 it's not a great idea 00:23:34 since you can't rely on the order of anything 00:23:34 well, its not a great idea, true 00:23:42 ie, the heap may not be constructed yet and other fun stuff 00:23:47 also, sometimes we load libs using dlsym() 00:25:28 we use that as sort of a loadable module component - but i think that we should make the loadable modules really clean and simple to avoid problems like the thing i mentioned - im not sure i totally trust linux's ld.so 00:26:42 the heap may not be there?!?! wow 00:26:42 --- quit: kemu (Read error: 104 (Connection reset by peer)) 00:26:54 --- join: kemu- (~kemu@168.27-238-195.dialup.skynet.be) joined #osdev 00:27:36 yeah, the heap has to come up at some point 00:27:46 and the heap code will be in a lib to start with 00:27:56 so at some point someone has to call the heap initialization code 00:28:12 and it may be after your ctor is called 00:28:14 ic - because all that new/delete shit is in the c++ standard lib? 00:28:20 right 00:28:25 it certainly isn't inside every app 00:28:25 ic - ok, that makes sense 00:28:40 * geist gets newos to link agai 00:28:46 I wonder if it'll just build 00:29:08 some things gnu tools do are real helpful to for os development, like for instance i take advantage of __attribute__(printf) in my os 00:29:20 I cross compile from linux - no native compiler yet 00:30:46 hmm, doesn't seem to just boot 00:30:52 it was too much to ask I'm sure 00:30:57 hehe 00:31:07 how far does it get? 00:31:21 youd be lucky to boot on the first try 00:31:48 god - im just now compiling a project that i started in 1999 and havent looked at in a long time 00:31:53 it's hard to go back 00:32:06 god - this C code i wrote sucks 00:32:14 and its still in production 00:32:39 * geist hooks up the serial port 00:32:48 --- quit: zhware ("Client Exiting") 00:32:52 still, its not the worst code ive ever released 00:33:00 okay it gets pretty far 00:33:06 the kernel has booted, threads are running 00:33:18 cool 00:33:23 thats pretty good 00:33:24 about to gpf at pc 0xc00145e2, excode 8 00:33:24 PANIC0: GENERAL PROTECTION FAULT: errcode 0x8. Killing system. 00:33:24 kernel debugger on cpu 0 00:33:24 > threads 00:33:24 0xc0053000 idle_thread0 0x1 READY NOCPU 0xc0046000 00:33:27 0xc0053100 page scrubber 0x2 WAITING NOCPU 0xc096a000 00:33:30 0xc0053200 max_commit_thread 0x3 WAITING NOCPU 0xc096c000 00:33:32 i released code once that broke netscape navigator 00:33:33 0xc0053300 page daemon 0x4 WAITING NOCPU 0xc096e000 00:33:35 that was a bummer 00:33:36 0xc0053400 main2 0x5 RUNNING 0 0xc0970000 00:33:43 man, thats cool looking 00:33:55 --- quit: pengone (Read error: 104 (Connection reset by peer)) 00:33:59 i should check out the code to your os some time 00:34:14 whats max_commit_thread 00:34:14 ? 00:34:36 hmm, I think it doesn't do anything but occasionally print out the max_commit var 00:34:40 ic 00:34:44 need to remove it 00:34:50 debugging type code .. 00:35:00 i want to quit work and do OS stuff full time 00:35:24 okay, so it makes it pretty far. need to see where it screws up 00:35:41 have fun, im going to do some work now - gotta pay the bills 00:36:09 k 00:36:20 btw, is the code for your OS available? 00:36:40 --- join: stormbind (~stormbind@pD9E61EC1.dip.t-dialin.net) joined #osdev 00:36:43 sure 00:36:50 geezus - this one C file is 3500 lines 00:36:54 where at? 00:37:00 newoshttp://newos.sourceforge.net/downloads.html 00:37:06 http://newos.sourceforge.net/downloads.html 00:37:34 thanks 00:37:44 ive probably downloaded it before, but never really looked 00:37:52 its cool that its on sourceforge - must be pretty far along 00:38:08 hahahaha 00:38:18 I gotta remember that one 00:38:36 it's kind of a running joke about all the 'oses' on sourceforge 00:38:39 whats the demo do - what will i see if i boot the floppy? 00:38:47 not much 00:38:49 ivc - none of the OSes on SF really work? 00:38:54 right 00:39:09 there are piles of next gen oses that never get past the 'create the sourceforge page' stage 00:39:12 ic - well, my OS doesnt do shit, maybe i should put it up on SF also :) 00:39:16 haha 00:39:20 design doc v.0.1 00:39:22 thats it 00:39:24 haha 00:39:27 yeah 00:39:31 at least i boot and have threads 00:39:38 good 00:39:38 and can probe the PCI bus 00:39:44 thats more than most probably 00:39:50 oh, and keyboard support 00:39:52 I was kind of suprised the threads even started on the DC 00:40:04 hmm 00:40:08 I sort of thought that would have been broken 00:40:20 well, time to check in and move to my windows box so I can do some real editin 00:40:25 what else - hmm - i have a real printf() 00:40:34 thats the coolest code in there, i think 00:40:38 ok 00:40:39 see you 00:42:17 matz said that ruby doesnt have macros cuz they make it hard to program when yer changing the syntax but ruby has continuations 00:42:22 damn - i leave the codebase in someone elses hands for a mere 6 months and its trashed :( 00:42:55 what did you mean by 'lisp macros'? 00:43:01 * sleep- knows not a thing about lisp 00:43:19 ohhh, lisp macros are the ultimate in power 00:43:32 is it like inlined code? 00:43:38 they let u write languages within lisp 00:43:46 im only think preprocessor stuff 00:43:52 when i hear macro 00:43:58 (function args..) 00:44:16 the compiler will evaluate the args and then call the function 00:44:33 --- quit: kemu- (Read error: 54 (Connection reset by peer)) 00:44:45 but with macros the compiler doesnt evaluate the args and passes the source to the macro 00:45:01 macros are executed at compiled instead of runtime like functions 00:45:31 ic - how can it evaluate that code if it refers to stuff in the local scope thats only known at run time? 00:46:01 magic 00:46:10 ic 00:46:13 magic stuff is cool 00:46:20 macros produce code 00:49:11 * geist goes to sleep 00:49:11 --- part: geist left #osdev 00:53:03 air: oh, so this is like 'eval' in other interpreted languages? 00:55:26 no 00:55:59 if C had macros they would be IF, WHILE, SWITCH and so on 00:56:36 hmmm....is the primary use of these lisp macros to construct code at run time, then run it? 00:57:24 the IF macro would evaluate its condition which outputs the code for it, then it would output code to test the condition and branch, then it evaluates the true block, inserts a jmp to end if there is an else and so on 00:58:12 still - whats the advantage? what does this enable you to do? 00:58:22 that you cant without them? 00:58:26 the language has no keywords 00:58:35 the language itself is made up of macros 00:58:37 ic - so you can build languages within it 00:58:46 u can extend the language with it 00:58:47 i mean build syntaxes 00:59:34 u cant get rid of the lisp parens but u can change the (func args...) method of calling stuff 01:00:24 right - without totally grokking this, it sounds like the concept makes lisp much more constomizable - much more able to be configured by the programmer 01:00:26 in crush the SET macro will accept an optional equal sign (set a = b) 01:00:43 that slightly changes the syntax from the (func args.._ 01:01:07 ic - it sounds like crush is influenced by lisp in a lot of ways 01:01:13 and some macros in crush use an AS keyword (foreach array as elt ...) 01:01:14 have you ever played with ML? 01:01:34 no but ive looked at ocaml 01:01:39 ic - what about eiffel? 01:01:58 these are things i wish i could research, but im too busy with work L:( 01:02:00 ive looked at eiffel but cant remember it 01:04:46 whats your favoriate non-crush language? 01:05:00 forth 01:06:21 ic - never used that except on Sun ROM prompts :) 01:10:57 --- quit: malenfant ("sleep...") 01:16:15 --- quit: Zenton (Remote closed the connection) 01:18:38 oh man, this java code is totally vm version dependent 01:18:41 this sux 01:22:55 * sleep- gives up 01:23:01 no java code will be written tonight 01:23:08 heh 01:23:29 the fscking interface is totally tied to a specific VM 01:23:30 fuck thta 01:23:34 i need to figure out how to get indentation parsing to work 01:23:40 ? 01:23:49 do u know python? 01:23:51 yeah 01:23:54 thats what i thought you meant 01:23:57 * sleep- hates that 01:24:05 i want code the Xemacs can auto-indent 01:24:08 it get rid of parens 01:24:24 and tabbification makes it even more difficult to see/parse the correct code 01:24:44 why? 01:25:00 because some editors display tabs differently 01:25:16 how many ' ' == '\t'? 01:25:22 oh 01:25:25 depends on the editor settings 01:25:54 but in any case, i also think the language should be able to be auto-indented 01:26:06 lastly, \n should be meaningless, imho 01:26:20 but those are my preferences - to each his own 01:26:48 a) crush has parens 01:26:56 b) i, like others, hate parens 01:27:08 ic - why not {} ;) 01:27:13 c) indent parsing gets rid of them which is "a good thing" 01:27:16 ic 01:27:36 {} are for lambdas 01:27:36 i guess im corrupted - i *actually like* C-style languages 01:27:51 even though I know its ugly in many ways 01:28:24 Nothing wrong with a lambda now and then. Just try not to get caught. 01:28:55 so, just because im curious, why not use C/java style syntax? 01:29:10 hard to use macros 01:29:16 im curious because thats what i would do - make a cleaner C++ 01:29:24 because the parsing is so convoluted? 01:29:39 do you use prefix-notation? 01:29:54 yes 01:30:06 thats another thing i cant stand - i cant read it :) 01:30:26 so my language would look like java or c++ 01:30:35 but not be anywhere near as horrible to parse as c++ 01:31:08 and i would try to reduce the amount of precedence issues - those are hard for people to remember 01:31:22 i was gonna add `a=1+2` lists but im thinking about parsing for = as the second item in a list and treating it as a special case 01:31:26 like which operator is higher on the precendence list, -> or * or +? :) 01:31:57 i dunno - my language would probably be like java without the vm 01:32:05 and with access to pointers 01:32:19 so its be like a simplified C++ 01:32:34 crush/lisp has no precendence 01:32:40 precedence 01:32:44 right, everything is in a ()? 01:32:48 yup 01:33:01 ic - isnt there an implicit precedence based on the parser? 01:33:06 or would it get a syntax error first? 01:33:35 is crush written in crush? 01:33:35 eh? 01:33:41 it will be 01:33:52 kinda hard to write it in itself until its written 01:34:10 i was just thinking out loud - if the parser has an order internally for mathing rules, thats implicitly the precendence order 01:34:13 right 01:34:13 chicken and the egg problem 01:34:22 that will be really cool - the first crush compiler compiling itself 01:35:25 do you read a lot of language design stuff, or make it all up as you go along? 01:35:38 make it all up 01:35:42 cool 01:35:42 * wli wonders what all this syntax gunk is. 01:36:02 wli? 01:36:03 how long before you estimate the crush compiler written in crush will be ready? 01:36:09 looks like it's all syntax 01:36:37 sleep-: dunno 01:36:48 air: is that because your design changes as you go along? 01:37:00 but my pills have kicked in all the way and i must sleep now 01:37:05 ok, adios 01:37:14 sleeping pills are unhealthy, dont do that :P 01:37:48 they arent sleeping pills, sleepiness is a side effect 01:37:53 ok, nm 01:38:15 they are for my schizophrenia 01:38:51 thats annoying that they have sleepiness as a side-effect 01:39:03 not really 01:39:05 but i suppose its better than not taking them at all? 01:39:17 i have problems sleeping and staying a sleep 01:39:21 ic - me too 01:39:30 i cant fall asleep until im exhausted 01:39:41 i cant sleep at night 01:39:47 can you sleep during the day? 01:39:50 yes 01:39:52 me too 01:39:57 im designed for night work 01:40:05 it makes working with other ppl on projects difficult 01:40:19 so i try to revert to daytime hours - but its really taxing on me physically 01:40:22 i could go for a week without sleep and always be tired during the day but never at night 01:40:41 ok, i cant stay up for long periods like that, but i cant sleep at night, until about 5AM 01:40:45 ic 01:41:16 i cant deprive myself of sleep, but i cant sleep on a regular schedule - i need to move to a planet with 36 hour days :) 01:41:23 anyway, have a good night 01:41:29 dont mean to keep you 01:41:29 heh 01:41:41 night 01:42:01 this conversation gave me a good idea 01:42:16 ? 01:42:21 when i make my language 01:42:34 im going to write the compiler for itself in itself at the same time 01:42:37 as i write the C version 01:43:01 doing them at the same time will save thinking time 01:43:11 and battle test the language itself 01:43:41 ive been doing a lot of code recently where i do the same thing in different languages at the same time - its fun 01:44:01 heh 01:44:10 anyway, adios 01:44:15 * sleep- goes back to work :( 01:44:18 i wouldnt do that 01:44:34 unless yer language is well designed before hand 01:44:55 i have changed crush syntax so many times while implementing it 01:45:03 ic 01:45:09 thats a good point 01:45:21 i would probably do it like you: all ad-hoc and made up while i go along 01:45:36 so changing two sets of code back and forth might get real annoying :0 01:45:43 yup 01:45:55 now im gone 01:45:59 but still, the minute its ready, the compiler is self-hosting... 01:46:00 bye 01:56:49 linux is amazing 01:58:20 * wli boggles. 01:58:22 Why? 01:58:29 because somehow it works 01:58:35 despite everything being crappy 01:58:36 oh 01:58:47 it's just ppl not really hitting corner cases that often. 01:58:47 any part of the code i read, seems like crap 01:58:57 id fire ppl who worked for me who coded like that 01:58:59 sleep-: Please, don't tell me stuff I wrote is. 01:59:04 hehe 01:59:07 what part did you write? 01:59:18 its all weird - and not really documented 01:59:19 sleep-: But feel free to LART Richard Gooch or Rohit Seth (esp. Seth, that FPOS) 01:59:31 what components did you work on? 02:00:08 i dont know enough about the ppl who work on linux to judge - just that i seem to read code in the kernel and always get a little scared 02:00:30 like "I base my whole system on *this* codebase??!?" 02:00:42 sleep-: HIGHPTE support for rmap, hugetlbfs, pidhashing (e.g. O(1) pid generation), NUMA-Q arch code, per-zone LRU lists & locks, iowait and load average accounting in the scheduler. 02:01:12 pidhashing == getting a new PID number - reclaiming PIDs? 02:01:36 sleep-: pidhashing == keeping hash tables to find process ID's of various kinds (not just real PID's) 02:02:02 sleep-: The additional accounting enables O(1) pid generation (finding PID numbers for new tasks). 02:02:05 ic - but o(1) pid generation == fast way to get a new pid that isnt in use? 02:02:12 sleep-: Right. 02:02:14 ic - cool 02:02:31 thats an important thing that should not be an expensive operation :) 02:02:49 whats highpte/rmap? 02:02:52 Well, I wasn't very concerned about PID generation itself, mostly other search algorithms. 02:02:56 page table entry? 02:03:20 rmap == PTE-based reverse mappings, that is, attaching structures to a page descriptor so one can find pagetable entries mapping a given physical page. 02:03:21 for large memory? 02:03:50 HIGHPTE == allocating pagetables from memory outside the pinned pool (i.e. virtual windowing required to access the memory). 02:03:57 ic 02:04:03 HIGHPTE was in before rmap, and rmap was incompatible with it. 02:04:08 whats per-zone LRU? 02:04:37 rmap continued to work, but HIGHPTE broke. I restore it to working order with a neat trick. 02:04:43 per-zone == per local memory region in NUMA? 02:04:49 cool 02:04:51 the LRU is the Least Recently Used list of pages for reclamation 02:05:06 * sleep- knew what LRU was, just not the 'per-zone' part 02:05:25 a zone is a region of memory that's part of a node, it's one level of subdivision down from that, into the "type" of memory (of which there are three). 02:05:37 (1) ZONE_DMA: usable for legacy I/O 02:05:51 ic 02:05:51 (2) ZONE_NORMAL: pinned (permanently mapped) page pool 02:05:59 (3) ZONE_HIGHMEM: dynamically mapped page pool 02:06:21 you seem to work a lot of different types of memory architectures 02:06:31 and on large systems 02:06:52 There are serious efficiency problems reclaiming from the pinned page pool when the dynamically mapped page pool is large. The per-zone LRU segregates the LRU lists for them all so you can immediately reclaim the right kind of memory. 02:06:58 Well, sure. 02:06:59 howd you get involved in that type of development? 02:07:25 sleep-: I was desperate, took a job with Sequent/IBM that a friend recommended me for, and IBM threw me into some really cool stuff. 02:07:31 ic 02:07:34 sleep-: i.e. pure luck 02:07:44 thats cool - i can imagine there are a lot of boring jobs at ibm and sequent 02:07:46 you got lucky :) 02:08:21 most ppl dont get to do core development of interesting OS stuff like that 02:08:35 Well, the statistics are really boring. 02:08:49 you mean the profiling of stuff you work on? 02:09:02 There isn't much to say about them except (1) I had the balls to post diffs touching kernel/sched.c and (2) they fix accounting bugs 02:09:32 Those aren't really profiling (though I do that too -- you have to) 02:09:44 Those are just standard reporting things, like uptime(1) and top(1). 02:09:48 right, ic 02:09:54 At least the kernel side of it. 02:10:18 your job is still in this area? you are getting more projects to extend linux kernel stuff? 02:10:26 or do you work on some other OS? 02:10:44 There are occasional "Other things" but they're usually relatively unusual. 02:10:56 ic - id be worried the cool projects would be finite 02:10:59 That is, they happen, but when they do, they're weird. 02:11:15 Not OS's as such. 02:11:18 Sometimes firmware. 02:11:24 unless you can think up knew enhancements and sell the idea to your managers 02:11:30 s/knew/new/ 02:11:32 Sometimes consulting hardware designers about what OS's can cope with. 02:11:35 * sleep- cant type this late 02:11:38 ic 02:11:39 And it's always weird shite. 02:11:48 im interested in performance engineering on standard PCs 02:11:49 "The firmware does *WHAT*???" 02:11:53 i know you think thats crazy :) 02:12:01 but i think its interesting 02:12:03 and "Where the Hell did you come up with that crackpot hardware design?" 02:12:05 hehe 02:12:12 * sleep- never gets to play with weird hardware 02:12:18 only standard PC servers 02:12:26 with *maybe* something like SCI or myrinet 02:12:31 but nothing fancier than that 02:12:45 Well, Sequent made PC servers. 02:12:51 * sleep- hates it when updatedb kicks in, which it just did 02:13:01 but i get they are UberPCs 02:13:04 Garden variety 64x/64GB multipath FC stuff. 02:13:06 with fancy shit on them 02:13:24 besides, i dont considere Itanium2 'PCs' 02:13:30 thats still higher end than I get to see 02:13:37 None of the really cool stuff like hardware checkpointing support or 1K+ cpus. 02:13:42 im stil like 'wow, 533Mhz bus - thats fast!!' 02:13:55 Eh? I don't work on our McKinley boxes, that's a guy down the hall. 02:14:14 i think intel 845G chipset is fast - fast in terms of the standard PC server out there 02:14:29 but i realize high-end systems are in a totally different league 02:14:57 commodity engineering is limited to what the market is currently delivering in high volumes 02:14:57 i450nx is what the PCI chipset looks like for NUMA-Q 02:15:10 im not familiar with i450nx 02:15:20 whats the CPU<->memory bandwidth? 02:15:23 NUMA-Q is something like 2 years dead. 02:15:31 Depends whether it's local or remote. 02:15:32 to local memory bank, that is 02:15:33 ic 02:15:37 local 02:15:38 i meant 02:15:40 The bandwidth to remote is 1/20th of local. 02:15:44 right 02:15:49 I think it's a 400MHz FSB. 02:15:53 you mentioned one that they were SCI based? 02:16:09 ic - so thats no different than my 2 dual AMDs connected over SCI 02:16:11 The interconnect is SCI, but it's a shared memory architecture. 02:16:19 It is different. 02:16:21 but its two years old, whereas my AMD is brand new :P 02:16:23 It's real shared memory. 02:16:24 ic 02:16:37 hardware assisted shared memory - the CPU never drives the SCI, right? 02:16:46 my SCI systems are bus limited 02:16:48 sleep-: Correct. 02:16:52 serverely bus limited 02:17:02 so its still not even close 02:17:10 but my local bus is 533Mhz, slightly better 02:17:25 --- quit: Lathiat (Read error: 110 (Connection timed out)) 02:17:32 i think this is all leading towards NUMA 02:17:33 I think it's something like 450MB/s per-node I/O bandwidth. 02:17:46 PCs will be NUMA in a few years 02:17:50 Well, these things are a follow-on to a relatively ancient NUMA line. 02:17:54 especially in the server room 02:18:02 These things have been 64G/64x since PPro 180's. 02:18:07 SMP wont scale, expecially on the PC architecture 02:18:10 ic 02:18:19 i just wonder what the interconnect will be 02:18:31 i still cant see which protocol will win 02:18:42 i just pray its not 10Gb ethernet :) 02:18:43 --- join: pengone (xtofu@p245-tnt2.mel.ihug.com.au) joined #osdev 02:18:48 that will be useless :) 02:19:02 10Gb is 128B/s 02:19:06 10Gb is 128MB/s 02:19:18 which is slow for memory 02:19:24 but the problem is more this: 100Mbp/s and 1000Mbp/s have the SAME LATENCY 02:19:34 so even really fast ethernet will still suck 02:19:55 latency will become way more important soon, so I want something designed for clustering w/low latency to become the markey leader 02:20:04 s/markey/market/ 02:20:10 AMD? 02:20:17 you mean the hypertransport stuff? 02:20:35 i think that is not scalable - its for the motherboard only 02:20:40 McKinley numbers aren't actually looking that bad but their interrupt controller is total crap. OTOH HP already has an MSI solution for SuperDome. 02:20:41 im talking what can support 1000+ nodes 02:21:03 with full bisection and low latency 02:21:30 basically, myrinet, but for cheap 02:21:48 I'm not interested in clusters. 02:21:49 i dont see a cheap version of anything like that in the near future - but the world needs something 02:22:13 well, im interested in them - for the reason that they are the only way to support high aggragate throughput on commodity systems 02:22:28 and hopefully high-availability functions as well 02:22:42 I saw real clusters and until I start hearing quorum disks and transparent load balancing and cross-clusternode domain support I'm not going to get interested. 02:22:43 fail over really requires a high performance interconnect 02:22:54 hehe 02:22:56 Failover is bunk. 02:23:08 im in the trenches dude - i have to deliver applications for cheaper 02:23:14 that pretty much means no fancy hardware 02:23:34 so i want this stuff to trickle down to the commodity level and become affordable 02:23:46 That's a trench of a different color. 02:23:52 the sad reality: some people thing fiber channel for SAN is going to be the only option :( 02:23:59 what a sad world 02:24:18 infiniband, PCI-X, 10Gbe 02:24:24 the options look bleak for me 02:24:36 but its really needed 02:24:52 The trench I'm in is ppl can't get boxen with enough capacity *period* and they pile more RAM and more CPU's in the boxen and start screaming bloody murder when the kernel craps its pants on the config or runs slower or with less capacity than a smaller config. 02:25:07 i know you are in a different world - in some ways i envy your niche - but its not deliverable to the broader market 02:25:11 And we can't get engineering samples of boxen as big as they're actually running. 02:25:22 WTF is the broader market and who gives a damn? 02:25:26 wli: you are in a real actual performance bound area 02:25:52 wli: im in the enterprise IT market - the 10,000 other business who cant afford your solutions 02:25:56 but they need something 02:26:02 erm 02:26:22 you might think thats crazy, but if you can figure out a good solution for these people they snap it up 02:26:33 I thought "eServer" stood for "Enterprise Server". If big fat whoracle databases aren't enterprise IT what is? 02:26:43 my last product ships on an int i810/733Mhz 02:26:48 whoracle is something else 02:26:52 Oracle is in the same area - but low end oracle 02:26:54 Databases in general really. 02:27:00 people who buy Sun 450s 02:27:01 They -are- the forkbombs. 02:27:04 hjehehe 02:27:22 i worked on a project at visa - they had oracle on a 64cpu SMP - what a waste 02:27:34 I had a 16GB box with 10K forkbombing whoracle FPOS's and that took 10GB of pagetables ... 02:27:36 people who spend less than $100k for a server 02:27:55 10GB of pagetableS?! 02:28:02 i hate oracle 02:28:08 its more bloated than windows 02:28:19 the only database worse than oracle is informix 02:28:28 sleep-: Linux is very stupid about pagetable management. 02:28:34 but im no expert, this is from limited experience 02:28:46 linux has a lot of stupid things, but just like commodity pcs, im stuck with linux 02:28:54 so i make due with the best that it offers :) 02:29:22 at least it doesnt freeze and never recover when it runs out of memory - linux 0.9 (when I first used it) really sucked 02:29:27 its pretty ok now by comparison 02:29:42 it seems like its got a lot of mementum now, so thats cool 02:30:21 sleep-: Depends on how you run it out of memory. 02:30:40 i used to prefer BSD, but then the linux feature set became so large and fast growing i had to give up on bsd 02:30:52 sleep-: Everyone in the VM crew knows what the 20 or 30 remaining ways to take out the kernel are. 02:31:08 sleep-: at least wrt. running the box out of mem. 02:31:15 wli: youre probably right, im just talking your basic running out of VM because of a huge netscape process or something 02:31:23 its smart enough to kill the job now :) 02:31:53 do you see any alternative to linux on the horizon? or is this the OS for everything in the future? 02:31:59 * sleep- doesnt see anything else out there 02:32:15 sleep-: hmm, well boxkiller #1 is to have 50K procs or so mmap() the same file 02:32:20 --- join: yuriz (~yuriz@rcr.teraflops.com) joined #osdev 02:32:25 i think linux is going to totally monopolize the OS market 02:32:31 heheh 02:32:39 sleep-: boxkiller #2 is to have 5K or 10K procs mmap() 10K things a piece. 02:32:45 wli: what happens - does mmap() really have a problem ? 02:33:04 sleep-: it's the internal accounting data structures, not mmap() itself 02:33:08 why? does it have to do bookkeeping somehow ? 02:33:10 yeah 02:33:12 makes sense 02:33:23 sleep-: boxkiller #3 is to have 20 or 30K open files and start doing things 02:33:26 the basic mapping wouldnt be bad, but whatever mmap keeps track of - that overdflows? 02:33:35 what about 10K sockets? 02:33:49 boxkiller #4 is to have 60K or 80K procs open files in the same directory 02:33:56 wli: is the 30K files thing an FS issue, or a buffer cache issue? 02:34:01 hehe 02:34:10 are these all ext3 things or buffer cache things? 02:34:11 sleep-: internal data structure management going wrong 02:34:15 ic 02:34:30 is there any zero copy stuff in 2.5? 02:34:39 sleep-: TX only 02:34:58 why only that? 02:35:15 sendfile() shouldnt exists - zero copy should instead 02:35:33 sendfile() is tacit admission that zero copying is missing from the system 02:35:40 Not so 02:35:43 realy? 02:35:51 sendfile() is there to assemble large transfers in bulk 02:36:10 i thought it was to avoid kerne->userland->kernel->packet overhead 02:36:14 For various reasons e.g. buffer alignment smaller requests aren't necessarily mergeable to make zero copy 02:36:33 Or if zero copy is possible, then doing it in a smaller number of packets is not. 02:36:37 i could see that, but sendfile() is primarily to avoid the trip to userland and back, right>? 02:37:07 No 02:37:15 besides, a real zero-copy system would have decent methods of indexing into the pages so things wouldnt have to be page aligned 02:37:18 Packet fragmentation due to requests not being set up right. 02:37:26 That's already there. 02:37:34 In all honesty I'm not a net expert. 02:37:36 so youre saying sendile() is to help the kernel optimize the packets it sends? 02:37:38 It's just less overhead. 02:37:42 sleep-: Right. 02:37:53 ic, i think its really for both reasons 02:38:02 the trip to userland and back must be a lot of overhead 02:38:09 Networking is not my real interest. 02:39:11 yeah, the man page even says that - but in any case, my point in general i stand by: sendfile() exists because some major architectural performance isses exist. instead of fixing the general case, they made sendfile() to solve a common problem 02:39:38 the real problems are in the whole way linux is designed, so they cant easily change that 02:39:43 There's nothing wrong with sendfile(). Little trapdoors are good. 02:39:46 wli: you should read this cool paper 02:39:55 Zero copy TX is already there with or without sendfile(). 02:40:15 http://www.cs.rice.edu/~willy/papers/tocs00.ps.gz 02:40:26 its pretty clearly written 02:40:55 all im saying is: sendfile() wouldnt be needed if the system didnt impose overhead that needed to be circumvented 02:40:58 I'm trying to get PCI bridges working off of node 0. 02:41:11 im a little unsure of pci bridges 02:41:23 but you basically have to probe through them, right? 02:41:35 to see whats behind them? 02:41:41 That's already done, the problem is code dependent on bus numbers without qualifying domains. 02:41:59 i wrote a PCI probe, but stopped after the main things worked - never figured out bridges 02:42:30 ic - whats a 'qualifying domain'? 02:42:51 The unique specifier for a device is domain:bus:slot:fn 02:43:03 things are passing around bus:slot:fn with no domain 02:43:41 take /dev/epoll 02:43:47 great trapdoor for poll() overhead 02:44:08 ok, thats weird 02:44:17 i only ever had bus:slot:fn 02:44:20 vast reduction of the event propagation traffic from kernel -> user 02:44:32 domain must be something to do with machines that have different architectures than a PC?> 02:44:32 sleep-: That's because you only had one root bus. I have 16. 02:44:36 right 02:44:55 thats because you wouldnt want to tie the whole PCI system together because it would bottlekneck? 02:45:07 well 02:45:13 different root busses - they cant share memory controllers, correct? 02:45:19 That's one way to think of it 02:45:21 erm 02:45:35 in other words, can a root-bus be on the same memory bank as another root-bus? 02:45:44 my notion of PCI bus <-> memory controller relationships is fuzzy. 02:45:48 yeah 02:45:54 same here :) 02:45:55 They can all get at all the memory. 02:46:21 all i know is that i looked at the way it chains down, to secondary busses and I realized it has performance penalties 02:46:40 i cant say for sure how bad, but i realized too many PCI busses chained together would really get noisy 02:46:52 PCI has a bus bandwidth limitation. 02:46:58 16 buses == 16x the bandwidth 02:47:59 the thing i realized was the transaction overhead is such that you really pay for the PCI bus touching system RAM 02:48:27 so things like transfers between devices on the PCI bus that skip main memory would have a real advantage 02:48:39 but, of course, findning any kind of application that can use that sort of method is hard 02:49:14 your systems must get high throughput by splitting the memory banks 02:49:18 yes 02:49:24 because theres no way 16 PCI buses could write to one memory 02:49:35 at least not getting 16x speed improvement :) 02:50:23 its funny how once you look under the hood, nothing is that cool 02:50:35 There is no magic. 02:50:38 i suppose things like vector processes would be interesting because they are different 02:51:05 but beyond that, everything is basically the same, just aggragate for higher end systems 02:51:58 thats why i think it should be possible to build real high end solutions with crap regular PCs 02:52:18 theres just the software architecture thats missing - the right combination of PCs and software can do it all 02:52:23 working set size + shared memory 02:52:28 hmm 02:52:36 There is a reason for SSI. 02:52:49 still, in NUMA dont you program the data set management to partition data? 02:52:55 i still dont really understand SSI 02:53:18 i mean - isnt the application developer forced to deal with data partitioning at some point? 02:53:32 in order to handle data sets larger than a single memory bank? 02:53:46 Single System Image 02:54:08 i know what it stands for, i just cant figure out 02:54:21 does it mean (1) same image on lots of boxes (2) single kernel instance 02:54:23 ;) 02:54:26 * sleep- is dumb 02:55:04 i think different people think it means different things, which confuses the issue as well 02:55:12 for you, what is SSI? 02:56:01 for me it's Server Side Include 02:56:04 hahaha :) 02:56:06 SSI == Single System Image 02:56:11 * sleep- slaps pengone 02:56:18 --- nick: pengone -> pengo 02:56:19 wli: right, but what does that really mean? 02:56:21 :) 02:56:44 SSI == one large shared memory machine running one kernel where apps can share memory and are talking to the same kernel and same devices and same filesystems 02:56:49 btw, google shows ads for dating services when i put in 'single system image' 02:57:02 ic - so its a single kernel instance, single system image running 02:57:04 one system 02:57:12 sleep-: lol 02:57:21 Correct. 02:57:23 ive read articles where people call it SSI 02:57:30 but they mean that theres a single disk image 02:57:34 replicated across the cluster 02:57:38 a shared nothing cluster 02:57:42 those people confused me 02:57:43 I've never seen nor heard of that. 02:57:57 im sure they were brain dead wrong 02:58:08 man sourceforge's search sucks 02:58:43 pengo: theres no excuse for that - there are tons of good, free search index things out there 02:58:59 wli: im sure your definition is correct 02:59:21 can't even search for a phrase :/ 02:59:29 it takes the quotes as literal characters 02:59:49 pengo: lame 03:00:30 no ranking for relevance.. just uses the activity percentile :/ 03:00:52 in any case, i think clustering has lots of problems, but its really a major trend in scaling up linux 03:01:04 so i find the whole topic interesting 03:01:52 sleep-: how about mesh topology networks? 03:01:57 ? 03:02:02 you mean like SCI? 03:02:07 ringlets and such? 03:02:17 i...dont...know 03:02:21 what's sci / ringlets? 03:02:30 connecting nodes together adhoc 03:02:41 3d topology on the physical interconnect 03:02:56 you have rings and some nodes join with other rings 03:03:12 or do you mean, a billion ethernet cards 03:03:24 and everyone tries to connect to as many switches as possible? 03:03:29 umm mesh just means you can have every node connected to an arbitrary number of other nodes anywhere 03:03:38 sleep-: everyone acts as a switch 03:03:40 using what hardware for the networL? 03:03:50 network 03:03:54 just using multiple network cards 03:03:56 ic 03:04:04 yeah, a bazillion ethernet cards? 03:04:09 seems people are doing it more for wireless tho 03:04:22 well, think of the cost: a good Gb NIC is like $100 03:04:25 cause then they can form a wireless mesh 03:04:28 the per-port cost of the switch, $100 03:04:36 5x $200 03:04:38 $1000 03:04:44 you might as well buy a fast interconnect 03:04:48 like myrinet 03:04:52 youre in the same price range 03:04:54 hmm 03:05:03 and there's less cabling and it has low latency 03:05:14 which those ethernet systems will never have 03:05:17 good point 03:05:23 so the throughput is the same 03:05:27 the management is a nightmare 03:05:31 and the latency not improved 03:05:38 so i give it a thumbs down :) 03:05:47 need auto-management tools for mesh :) 03:05:52 throughput actyualy is probably worse 03:06:07 pengo: but the maintence costs - the failure rate will be really high 03:06:23 failure doesn't matter cause everyone's got redundancy :) 03:06:37 an infiniband/myrinet/sci based system will be way better and more effective for about the same price 03:07:05 besides, its application dependent, but i think a lot of times latency is reallky important 03:07:11 like for checkpointing and stuff 03:07:16 and failover 03:07:34 mesh also is a way of spreading fiber around to get over long distances? 03:07:35 you know, it reminds me of this talk i saw a while ago 03:07:40 this guy from CERN 03:07:47 he has >1000 nodes 03:07:51 of white-box PCS 03:07:57 PCs 03:08:07 yup 03:08:08 it takes up a whole huge room 03:08:19 and he said he outsources to a crew of 10 people 03:08:29 10 full-time ppl - to manage hardware replacement 03:08:45 man he should change suppliers :) 03:08:46 compare that to 1000 dense nodes 03:08:50 man, not even dense 03:08:58 1000 regular 1U systems 03:09:13 that would only take 25 regular racks 03:09:28 in a blade type system, 5 regular racks 03:09:38 and maintenance would be much easier 03:09:56 so i think pushing the limits of that stuff is not a good idea 03:10:12 i think its just like mesh routing - sound cool at first, but its not really the way to go :) 03:10:14 he did normal PCs cause they were cheaper? 03:10:20 well 03:10:26 (initially) 03:10:27 'cheaper' because of how they account for things 03:10:35 space and power consumption are not an issue for him 03:10:42 and apparently labor costs either 03:10:52 but most people have different cost structures 03:10:57 yah 03:10:58 and space is key, so is maintenance 03:11:10 he said he has versions of linux going back to Redhat 2.0 03:11:12 still running 03:11:17 heh 03:11:19 2.0, 4.0, 6.0 and 7.0 03:11:25 all running in this huge system 03:11:35 I was amazed - seemed like alot of work to keep it going :) 03:11:46 the things you do when you have too much money 03:11:54 they dont network boot - they install the software on each machine 03:11:59 and they dont use dhcp 03:12:04 wow 03:12:06 they configure the network on each node 03:12:11 i couldnt beilieve 03:12:15 it's like a giant home network 03:12:17 they are just now going to a dhcp solution 03:12:18 yeah :) 03:12:46 just think how easy it would be to buy 1000 nodes in blade form and PXE boot them all 03:12:49 even i go dhcp when i get more than 4 computers on a network.. even if they're all running windows 03:12:53 then compare it to his system 03:13:02 yeah, same here 03:13:23 even before i got a router that did dhcp, i used it at home because it was much easier 03:13:34 and i could get manage my roomates boxes easier too 03:13:45 imagein editing /etc/whatever on 1000 nodes :) 03:13:48 yup 03:14:05 i cant believe it - their network must see so many garbage packets 03:14:13 he said fire hazards are his biggest fear 03:14:23 hes worried the whole thing will burn up someday 03:14:41 i dunno 03:14:43 where do you work? 03:14:48 or are you a student? 03:14:59 i've managed 40 pcs tops.. and i tell you i worked out how to write pretty sophisticated batch files for dos (nt login batch file thing) 03:15:15 i'm almost a student, and i almost work 03:15:20 and i'm almost unemployed 03:15:21 hehe - i used to do DOS batch programming at my first developer job 03:15:24 where do you live? 03:15:29 melbourne 03:15:34 ic - thats cool 03:15:39 i bet there are good tech jobs there? 03:15:44 were :) 03:15:51 were? the tech crash hit there too? 03:15:51 not really looking too hard tho 03:16:01 yeah it hit everywhere 03:16:21 if you have good programming skills, like C++ (not perl/asp) then you can still get jobs here 03:16:32 i teach unemployed people to look for jobs and set up yahoo mail accounts now :) 03:16:35 but for many lower-end programming jobs, there is no work 03:17:02 it kinda struck me today that i don't really know any non-interpreted languages very well 03:17:04 the difference now, after the tech crash, is that the available programming jobs are usually boring 03:17:22 ic - im the opposite - i hardly know any interpreted languages 03:17:26 yeah there's lots of job ads for management/team leader sorta positions 03:17:28 i mean i know perl, python 03:17:39 but im not totally an expert in any 03:17:51 well, i couldnt find any cool jobs 03:17:56 so i started my own company instead 03:18:03 yeah. i'm pretty python/java oriented and grew up on basic and know way more asp/vbscript than i care to think about 03:18:06 i had to make to cool job myself :) 03:18:23 its funny, i wrote an article about python, but i cant code in python worth shit 03:18:23 where you're working now is your own invention? 03:18:29 heh 03:18:37 yeah, i designed the product myself 03:18:45 with the help of my best friend 03:18:53 he put in the money to start the company himself 03:18:59 that was a cool article.. i got pretty confused trying to work out how/if python threads worked once :) 03:19:07 cool 03:19:07 and together were trying to build the company 03:19:13 we have 2 engineers now 03:19:14 you making money and stuff? 03:19:17 and were just trying to get an officfe 03:19:25 no, i have $0 salary right now 03:19:31 because we are really early stage 03:19:53 yup 03:19:57 pengo: im glad you made me go find that article - i read the reviews on that page - people actually *liked* it 03:20:14 heh :) that's always good :) 03:20:16 pengo: and one guy said it solved his problem hed been working on for a long time 03:20:20 that made me feel good 03:20:28 when i wrote that article it really stressed me out 03:20:35 because the i missed the deadline :) 03:21:00 but it turned out ok in the end 03:21:20 i wrote in when i was on vacation in germany - it was hard to pay attention to the article because i was travelling and having so much fun ;) 03:21:38 ah.. yeah i like writing/teaching but i want to make my own stuff so i have something worth teaching first.. tho i fear i'll turn into one of those university lecturers who inflicts their goddamn awful prototype of a language on all their students 03:21:39 it makes me want to write more stuff for publication - that was really cool 03:21:47 hehehe 03:22:01 thats hilarious 03:22:03 so i have to make something good first :) 03:22:10 like Knuths computer 03:22:26 i get that same feeling by forcing people to work within my architecture 03:22:32 at work 03:22:38 yeah 03:22:53 new people come in and they have to learn it - if they hate it, im the guy they blame :) 03:23:26 --- join: DorkPunk (dralock@cs24160124-71.houston.rr.com) joined #osdev 03:23:31 Hello, #osdev. 03:23:44 the hardest thing about programming for a living is that most of the code is not exciting and fun - its usually more boring than intellectually challenging 03:23:46 howdy, dp 03:23:55 so i try hard to make the boring stuff automatic 03:23:58 so i dont have to do it 03:24:51 sleep- - How are you? 03:24:51 dp: where do you work? 03:24:58 well i've helped a few people with their uni assignments and god.. some things they get students to work with are shocking.. my ex-girlfriend was given a visual programming language where you build a program out of flowcharting bits, but it forced it to stay procedural (i.e. no goto's).. but the editor was so limited that you had to work out your program on paper and then put it in or you might end up doing something you can't reverse.. 03:25:03 dp: im ok, im avoiding work by hanging out here in #osdev 03:25:20 sleep- - Excellent. :-) I just got syscalls working properly, so I'm celebrating! 03:25:48 pengo: how could that system possibly help ppl learn? it sounds like the system was more challenging than the concepts it was supposed to teach :) 03:26:02 dp: cool - do you use interrupts, or call gates, or what? 03:26:13 i think it forced you to go from the outside in [1st this [2nd this] ] or the otherway around or something painful anyway 03:26:18 sleep- - An interrupt. 03:26:22 dp: cool 03:26:36 dp: does it switch stacks, or use the processes stack when inside the syscall? 03:26:43 It switches stacks. 03:26:47 ic 03:26:57 what made you decide to switch stacks? 03:26:57 Each process has a different ring 3 and ring 0 stack. 03:26:58 security? 03:27:01 Yes. 03:27:17 ic - how can the userland process abuse the stack ? 03:27:24 such that switching is required?> 03:27:26 i really need to get a job some day working with real programmers :/ 03:27:47 pengo: yeah, having good co-workers that can teach you things is really valuable 03:27:49 sleep- - That part I do not understand... 03:27:56 pengo: i learned all the cool things i know from co-workers 03:28:22 dp: just wondering, because, while i have not really thought about it, i think the dual stack idea is really wasteful 03:28:27 sleep- - I don't think the Intel manual goes into much detail, but it does explain that a ring 3 process can cause a security breach if the same stack is used in ring 0... 03:28:34 dp: and I want to understand exactly why its required 03:28:39 * DorkPunk nods. 03:28:42 ic 03:29:04 well, i know maybe 03:29:09 the stack will leave just in it 03:29:13 and after the syscall 03:29:18 the procdess can see those values 03:29:27 so that might reveal protected kernel data 03:29:44 but also, perhaps the process could somehow send a bad stack that crashes the box?> 03:29:45 But that could be avoided if the syscall "erases" the data. Just zeroes it, in the stack... 03:29:46 i dunno 03:29:48 I don't think that is it... 03:30:10 right - so i still dont understand except for the possible crash 03:30:22 like point SP at 4 bytes below an invalid location 03:30:28 and call the syscall 03:30:32 Hmm, I read something before... 03:30:33 actually, since you're using interrupts 03:30:47 Yes, that could be it! 03:30:50 is the stack used for holding the return address? 03:30:58 like a CALL 03:30:58 ? 03:31:00 Yes, the stack holds the return address. 03:31:15 hmm... 03:31:21 Whenever an interrupt is called, it pushes the old ss, esp, return address, and eflags (not in that order). 03:31:26 right 03:31:40 so interrupts are really just like function calls when you think about it 03:31:50 but via an indirect function lookup table 03:32:05 so it seems to me difficult to abuse the stack 03:32:15 and also have it get to the right interrupt 03:32:29 Like you said, though... 03:32:49 If a userland process changes the value of esp to something invalid, then the system could crash, if the ring 3 and ring 0 stacks were the same... 03:32:51 i think im going to use call gates, if they will work the way i want 03:32:52 Hardware reboot... 03:32:57 and map the kernel into the process space 03:33:02 That could be a good reason to keep different ring 3 and ring 0 stacks. 03:33:05 yeah 03:33:16 im going to try and do a shared memory system 03:33:20 and use call gates 03:33:23 i dont know why 03:33:27 but i want to do it like that 03:33:32 instead of interrupts 03:34:07 and im going to actually try to use more than two levels 03:34:16 im going to have ring3 be userland 03:34:31 ring2 be able to access kernel data structures, but not access hardware 03:34:42 and ring0 be able to access hardware and kernel data structures 03:34:57 that way, i can have "shallow" and "deep" system calls 03:35:20 where shallow ones only do stuff like allocate memory and push stuff onto kernel data structures 03:35:32 i dont know why, but this seems to me to be the right approach 03:35:42 i have figured out a use for the fourth ring yet :) 03:36:03 I only use ring 3 and ring 0. 03:36:10 most ppl are the same 03:36:17 i only use ring0 right now ;) 03:36:23 i have no userland at the moment 03:36:38 so your OS sounds like its a lot further along 03:36:57 Well, maybe not... 03:37:03 do you have processes with local memory via LDT? 03:37:13 my system is single address space w/threads 03:37:19 no processes 03:37:23 I do not use the LDT. 03:37:27 I simply use the flat segmentation model. 03:37:27 ic 03:37:35 I mostly rely on paging, to do my heavy memory management. 03:37:46 I am quite proud of my paging system though. 03:37:52 Multiple address spaces (one per task). 03:37:58 hmm - ic 03:38:04 i like single address spaces for some reason 03:38:07 And also, my kernel can allocate a page in any address space, from any address space. :-) 03:38:10 i dont even use paging yet 03:38:19 Cool. 03:38:22 im not sure i want to even have processes 03:38:30 because what i have now is so simple and clean 03:38:38 i dont even use hardware for task switched 03:38:42 switching 03:38:49 i just manually change stacks 03:38:53 which is kind of fun :) 03:39:20 so im sort of dreading undoing all that and putting in real tasks 03:39:30 Ah. Yes, I use hardware (TSS) for task switching. 03:39:33 It is very convenient! 03:39:46 i think it retain the task switching i have no in order to provide threading withing processes 03:40:08 but im not sure - maybe each thread should be a task as well, like in linux? 03:40:09 i dunno 03:40:26 obviously, my system wouldnt function on SMP 03:40:29 I don't care about multithreading yet... 03:40:32 so it very limited 03:40:39 also, i think i need TSS for protection 03:40:46 so ill be forced 03:40:54 * file is now ready to head to school 03:40:57 Yes. You don't have to use the TSS for task switching... 03:41:06 dp: whats your OS modelled after? do you have an overall goal in terms of the design? 03:41:13 You will only need the TSS to store the locations of the stacks for different rings. 03:41:17 right 03:41:23 sleep- - My OS is completely original. I have not even looked at existing OS code. 03:41:25 what's TSS? 03:41:57 pengo: task state selector (or something like that) 03:42:03 pengo - Task State Segment. A data structure, defined by the Intel hardware, to store a task's information. 03:42:19 its the index into the task table that defines the details of a hardware task 03:42:33 like its priviledge level, whether or not it has an LDT, etc. 03:42:43 dp probably knows more than me, ive only read about them 03:42:50 pengo - Basically, a TSS contains the values for all of the registers for a given task, and the segment selectors, and eflags, etc... 03:43:00 dp: i want to use call gates so that system calls use a regular 'call' instruction 03:43:15 sleep- - I see. 03:43:25 dp: i dunno why, it just seems cooler 03:43:44 sleep- - Cool. :-) Do things however you want... That's part of the fun... 03:43:52 pengo: TSS is also used for call gates, where you call into a code segment that is different than yours 03:44:02 sleep- - In writing your kernel, you are limited by nothing, except for the hardware. Be creative. :-) 03:44:13 sleep- - If you do everything the "normal" way, then your OS will not be anything special... 03:44:15 dp: i wonder if its a bad idea, someone here pointed out that the CPU is optimized for the methods that windows uses 03:44:32 dp: so its actually a bad idea to diverge, i dunno if thats true or not... 03:44:44 sleep- - I don't know... Optimized for Windows or not, Linux runs better anyways. ;-) 03:44:49 hehe 03:44:52 And Linux does nothing the way that Windows does it. 03:45:02 well, i dont use windows - but linux seems ok, at least its sort of stable 03:45:15 Yes, much more stable than Windows could even dream... 03:45:25 dp: im actually impressed with linux stability - in the last few years its been really solid 03:45:51 dp: im still quite surprised M$ cant make windows stable - but i tried XP recently and it *still* crashes all the time - WTF?? 03:45:54 sleep- - Yes. In my experience, Linux is very solid. 03:46:12 dp: how hard is it - they have thousands of programmers - cant they put a couple guys on fixing the core os? :) 03:46:44 dp: actually, a few years back i worked on a project that did linux and freebsd versions - i was amazed when i realized the freebsd system was much less stable 03:46:46 sleep- - They have thousands of programmers, but most of them stand around saying words like "robust," and "wave of the future," and "infrastructure." 03:46:49 None of them really do any work. 03:46:57 dp: i had always been under the impression that BSD was the rock solid platofmr 03:47:01 I have never used FreeBSD, so I cannot comment on it. 03:47:03 dp: hehe 03:47:23 dp: well, at the time if you mmap()ed a file larger than memory and wrote 0s to the whole thing, the OS froze 03:47:34 dp: turns out the swapper daemon gets swapped out :) 03:47:37 FBSD can't even run on the boxen I'm testing on. 03:47:46 wli - Why not? 03:47:53 dp: how silly is that, the swapper gets swapped out? god. 03:48:01 sleep- - LOL! 03:49:19 dp: i cant imagine how that could be a real bug, but it was 03:49:33 sleep- - That sounds very funny to me. 03:49:42 dp: i would think any system i wrote would have the swapper in such a core part of the kernel it couldnt be swapped :) 03:49:54 dp: or at least i would remember to lock that process into memory :) 03:49:59 I don't think I will even implement swap... 03:50:05 --- join: Lathiat (trent@2001:618:4:2000:0:0:0:84e) joined #osdev 03:51:05 actually, thats a good point 03:51:08 i probably wont either 03:51:44 i want a system thats for single application devices - swapping wont even be part of the design - anything that swaps is not performing 03:51:51 re lath 03:52:15 Right. 03:52:25 I must soon go 03:52:30 see ya, file 03:52:44 school beckons... 03:52:50 im sorry :) 03:53:05 dp: do you have a file system yet? 03:53:07 I'd rather sleep and wait for my motherboard... oh well 03:53:11 or database or whatever? 03:54:47 sleep- - No filesystem yet... 03:54:56 sleep- - But I would like to implement EXT2/3. 03:54:57 Yourself? 03:55:09 --- join: acme (acme@pD9E63B89.dip.t-dialin.net) joined #osdev 03:55:38 sleep-: well it's ok if the bit that swaps things out of memory gets swapped out, as long as the bit that swaps them back in stays :) 03:56:08 dp: i will only have a database - no file system 03:56:27 um, a filesystem is a database and perhaps also vice-versa. 03:56:33 dp: cant figure it out exactly, but i know (1) it will allow hashing direct to disk and (2) btree direct to disk 03:56:54 wli: i mean i wont use regular file system semantics - because it precludes fast hashing to disk 03:57:34 sleep- - Interesting... 03:57:40 wli: and i want to help more with the integrity of the data - "file contents" are totally unprotected in most current file systems 03:57:50 sleep- - I only want to implement EXT2 support, because EXT2 seems "fairly" standard to me... 03:58:13 dp: i might implemente something like that to allow the OS to access linux and vice-versa 03:58:43 sleep- - Cool. :-) 03:58:54 dp: but im not really all that interested in regular files - more into the idea of data on the disk - data that the system can view regardless of which application created it 03:59:25 dp: whereas a file system has ad-hoc data formats inside all the files, this would be more like a SQL database or Object database - a general tool could view the data 03:59:35 * DorkPunk nods. 03:59:44 anyway, its a long long ways away :) 03:59:48 I do not have too many ideas about files or filesystems... I think I will just go with the standards there... 03:59:49 i still need to write an IDE driver :) 03:59:54 I will have to implement a filesystem soon... 04:00:08 ive read a lot of filesystem books and basically realized i hate file systems :) 04:00:13 Right now, I am working on DMA code, and the floppy driver... After that, filesystem support... Then executable support... 04:00:15 sleep-: interesting.. i'm trying to write a general tool to access all ad hoc data :) what's TSS? 04:00:16 do you have an IDE driver yet? 04:00:16 [22:42:48] pengo: task state selector (or something like that) 04:00:16 [22:42:54] pengo - Task State Segment. A data structure, defined by the Intel hardware, to store a task's information. 04:00:16 [22:43:11] its the index into the task table that defines the details of a hardware task 04:00:16 [22:43:25] like its priviledge level, whether or not it has an LDT, etc. 04:00:18 fuck 04:00:20 sorry 04:00:27 pengo - It's ok. :-) 04:00:32 pengo: damn it, stop :) 04:01:01 these things should warn you before they let you paste more than 1 line 04:01:15 hehe - that damn middle mouse button 04:01:33 pengo - I don't think your IRC client really can tell any difference between pasting and typing... 04:01:59 it can learn.. it can learn 04:02:04 LoL! 04:02:07 it can tell the input RATE, though 04:02:18 and have flood protection on the client side 04:02:22 I wish I could "teach" my programs, instead of having to "write" my programs. 04:02:31 dp: i dont, i like writing code 04:02:37 sleep- - Good point, me too. 04:02:43 dp: think of what its like to train a dog - thats annoying 04:02:47 sleep- - "Teaching" programs might be like raising children. 04:02:48 i hate it. i'm going to write a programming language i teach. 04:03:15 dp: exactly, id hate raising kids - they dont listen - computers do what their toled 04:03:16 told 04:03:17 Has anybody here written a floppy driver? 04:03:22 dp: no, thank god 04:03:26 teach { sit. i said sit. SIT SIT SIT SIT SIT } 04:03:30 I am scared. :-( 04:03:38 reward { good dog} 04:03:40 dp: and i think i never will because i think floppies are almost obsolete 04:03:45 dp: why do you need one? 04:04:00 sleep- - I would like one because I think it would be nice if my entire OS fit on a single floppy... 04:04:12 sleep- - Nobody will try my OS if they must make a partition for it on their hard drive! 04:04:13 :-) 04:04:16 ic - but the floppy is the most unstable medium - the least likely to function 04:04:20 haha 04:04:20 ic 04:04:31 dp: maybe a bootable ISO image is the right way to go 04:04:34 DorkPunk: get with the times.. it's neat when it fits on one of those mini cds now. 04:04:37 everyone has a cd burner 04:04:37 sleep- - I do not have a CD burner. 04:04:40 LoL 04:04:42 ?? 04:04:48 thats a lie, *everyone* has a CD burner 04:04:56 damn, my laptop has one built in 04:05:04 BUT NO FLOPPY in the laptop :) 04:05:06 my grandma has a cd burner and she doesn't even own a computer 04:05:06 sleep- - I am using a Pentium MMX machine, 266 MHz, 48 MB RAM. 04:05:23 dp: do you want a real PC? I have junk lying around here way better than that 04:05:24 DorkPunk: so you only have a 4x burner then, right? :) 04:05:33 pengo - LoL 04:05:33 dp: where do you live? 04:05:39 sleep- - Austin, Texas, USA. 04:06:00 until now i thought i was uncool for having only 128 ram 04:06:04 dp: ic - ill freakin mail you a real computer 04:06:24 dp: im sickened to hear an os developer is so hardware-deprived 04:06:27 sleep- - Where do you live? Postage will be expensive... 04:06:32 chicago 04:06:41 i have 30 machines here 04:06:43 mostly inventory 04:06:45 sleep- - No, it's ok. :-) This machine can run gcc and vi. That's all I need... 04:06:45 and test machines 04:06:56 but about 5-10 junk boxes 04:06:58 i could spare one 04:06:58 sleep- - But if this machine breaks, then I might take you up on your offer... ;-) 04:07:02 ok 04:07:06 sleep- - Your offer is very kind. 04:07:22 youre right, 200Mhz is really fine 04:07:26 just dont run GNOME 04:07:29 or any shit like that :0 04:07:29 * DorkPunk nods. 04:07:49 I mostly use console for everything, except for web browsing. 04:08:07 ic - i used to be like that 04:08:13 no i run just an xemacs full screen 04:08:18 s/no/now/ 04:08:25 * DorkPunk nods. 04:08:57 I decided that when my kernel takes more than 1 minute to compile on my machine, I will reward myself with a new machine. I will even steal one if I can not afford one. 04:08:58 :-) 04:09:12 Right now, my kernel takes 17 seconds to compile. 04:09:41 hehe 04:09:48 one sec 04:09:51 Ok. 04:10:12 3.6 secs 04:10:27 sleep- - Your machine is probably much faster than mine though... 04:10:37 but i have the entire PCI device/vendor list in there 04:10:41 i have a 2.0Ghz 04:11:07 sleep- - Wow, you already have PCI detection?! 04:11:26 yeah 04:11:35 i can probe the bus 04:11:41 sleep- - That's cool. I have not done that yet... 04:11:50 sleep- - Did you write your own bootloader? 04:11:50 g'afternoon 04:11:59 so the is a single useful thing my kernel does: i can boot a floppy on any machine and it tells me exactly what hardware is in there 04:12:03 dp: yeah 04:12:03 Greetings, darkito. :-) 04:12:15 sleep- - Really? Wow, I just gained a lot of respect for you. :-) 04:12:26 sleep- - I could never write a bootloader. I barely know any assembly... 04:12:30 thanks - why tho? 04:12:33 oic 04:12:35 it was hard 04:12:40 but fun 04:12:41 Yes, I can imagine... 04:12:53 I just use GRUB. My kernel is Multiboot conformant. 04:13:24 im proud of the stupid boot loader because it loads the kernel, does a kernel checksum, goes into protected mode and jumps to the C entry point - and it all fits into the 512 limit - no second stage :) 04:13:39 it was hard to fit it all in there 04:13:47 sleep- - Wow, that is impressive. 04:13:47 ive only got a couple bytes a room left 04:13:55 it was barely enough room :) 04:14:13 --- quit: acme () 04:14:16 i can store my whole kernel in /dev/null 04:14:18 Yeah, that's some hardcore assembly... 04:14:37 dp: not really, but it just took a long time to get right 04:14:51 i actually had to write a hex memory viewer 04:14:59 to allow me to see memory 04:15:01 sleep- - I can imagine... I bet that the switch from real mode to pmode in itself was a pain... 04:15:03 in order to debug it 04:15:12 dp: no, thats like 2 instructions - really easy 04:15:20 the hard part is reading the disk tracks 04:15:24 and doing the checksum 04:15:26 to validate the kernel 04:15:37 Ah. 04:15:38 * DorkPunk nods. 04:15:43 the BIOS calls are annoying and the segment management in real mode blows 04:15:51 makes life really annoying 04:16:05 sleep- - When GRUB passes control to the kernel, it is already in pmode. So I never had to even think about the real mode stuff... 04:16:22 ic 04:16:26 GRUB leaves the machine in a nice state... pmode, with the floppy motor turned off... 04:16:30 weird - i wouldnt like that 04:16:38 i wanted to set up all the segments myself 04:16:41 So I can just create my GDT, IDT, and go from there... 04:16:51 Oh yes, you are still suppoed to set the segments yourself... 04:16:54 Even if you use GRUB... 04:17:52 You are supposed to create your own GDT, and load the GDTR... In the GRUB docs, it recommends this, because the segment model for GRUB may change between releases. 04:18:00 i found the a most annoying part of that is typing out the huge hex numbers and how all the bits for each value are broken up acroos the segment descriptor - how annoying 04:18:04 It recommends making no assumptions about the bootloader. Only that it leaves you in pmode. 04:18:22 sleep- - Yes, that is quite annoying... I use a bitfield. :-) 04:18:51 all that shit is because intel still is backwards compatible with 286 code, 8086 code, blech 04:18:53 how annoying :) 04:19:40 LoL 04:20:09 wouldnt it be nice to start over with a clean slate? 04:20:16 a real 64bit system with no legacy? 04:20:19 ahh - that would be nice 04:20:49 Isn't Itanium supposed to be like that? 04:20:53 --- join: darth (~darth@130.88.157.186) joined #osdev 04:20:56 ello 04:21:03 dp: yes, but no 04:21:09 dp: im sure its got so much crap in it 04:21:13 I know that AMD's x86-64 is going to be just as stupid as IA-32... 04:21:18 Greetings, darth. 04:21:18 dp: i want a *simple* system 04:21:22 sleep- - Me too! 04:21:35 design one then, its not impossible 04:21:37 sleep- - I've heard that SPARC systems are good... Very clean RISC architecture... 04:21:39 how about mips? 04:21:51 just have to learn something like VHDL :) 04:21:56 arms ment to be good to 04:22:17 or ARM (especially in its xscale incarnation) 04:22:44 i dunno - anything clean and not totally insane would be nice 04:22:49 maybe ARM 04:22:53 i have a Zaurus PDA 04:22:58 maybe I should write code for that 04:23:00 it just needs to have a consistant architecture realy 04:23:02 i think its an ARM 04:23:08 yeah i think it is 04:23:09 ? 04:23:18 that would be cool, and its a nice little form factor 04:23:34 200Mhz - would run my shitty little OS pretty well I bet 04:23:46 I very badly want a Zaurus... 04:24:00 on a well design processor its a lot easier to optomise code 04:24:02 dp: its cool - but i never use it because i hate PDAs 04:24:11 sleep- - Why do you have it then? LoL 04:24:11 dp: the wireless CF card is cool 04:24:17 especially when you not haveing to play aroud swapping registers all the time 04:24:31 someones nicked my old palm :( 04:24:32 dp: i thought if I bought a linux based PDA i would actually use it and become and organized person - it didnt happen :( 04:24:44 sleep- - Aww, heh. 04:24:51 how much are those sharps ? theve got amiga de on em as well 04:25:00 sleep- - Well, my computer pretty much has the computing power of a modern PDA. LoL 04:25:03 dp: i tried palm, but that didnt work either so i gave it to my sister and tried the zaurus 04:25:13 dp: hehehe, i guess so - but theres no storage 04:25:26 sleep- - No storage? 04:25:34 dp: thats the problem - linux is actually too big of a kernel for this little guy - it should have a leaner OS 04:25:34 sleep- - There must be some... At least a few MB... 04:25:42 pd: only a few megabytes of on-board storage 04:25:48 I see. 04:25:48 dp: like 32 or something 04:25:56 32 MB... :-\ 04:26:17 dp: and the CF card gets used by my wireless card, so I cant stick and CF based storage in there 04:26:24 yeah but a well written operating system shouldnt need that much even 04:26:25 dp: and have networking at the same time :( 04:26:36 sleep- - :-( 04:26:46 dp: but if i got an SD wireless card, itd work out - it has an SD slot and a CF slot 04:26:48 sleep- - Are CF cards hot-swappable? 04:26:53 dp: yeah 04:26:59 dp: they work great 04:26:59 sleep- - And SF cards? 04:27:12 SD cards seem not popular, and therefore very expensive 04:27:31 I see. 04:28:01 but its ok, overall the thing is cool - and i bet if i port my os to it i could make some really cool shit 04:28:31 the specs are out there - the platform is very open - but i bet it will be dropped by sharp - cool linux products always die in the mass market :( 04:28:48 damn, this database binding im writing is fucking hard to do 04:28:49 :( 04:30:06 i though it was doing okay, i.e better then most of the pocket pc 04:30:16 havign said theat dell are launching one soon 04:30:22 what you doing the database for? 04:30:26 darth? that would be cool 04:30:33 darht: i want the zaurus to succeed 04:30:59 darth: this is a binding between the XML GUI generator and the SQL backend 04:31:04 for the system im developing 04:31:08 http://www.theregister.co.uk/content/59/28045.html 04:31:17 this is a very funny story 04:31:45 OMG, thats so funny 04:32:01 sinful instant messaging? :) 04:32:13 is it as evil as passing notes secretly in class? :) 04:32:17 sleep: for a website ? what the XML gui generator, something to do with gnome going with the svg format for widgets? 04:32:47 darth: no, this is an application abstraction - the XML files are interpeted by the application "player" 04:32:47 sleep:far far more evil, notes dont go beep in the middle of lecture making yoiu lecture sprint up to you and reply to the msg for you , .... 04:33:02 darth: same XML code runs in many different target environments 04:33:05 sleep: this part of you operating system:) 04:33:13 oh okay 04:33:19 darth: no, part of my commercial software product 04:33:28 darth: i use this tool to build the gui for my product 04:33:42 darth: the idea is to make sure im not locked into any target environments 04:33:58 thats not very gnu like now is it, thats two thousand lines and a lunch time detention for you my boy 04:34:01 so i describe the software in the abstract 04:34:05 hahah 04:34:14 DMA code and floppy driver code scares me. 04:34:27 i figure if i have the abstract definition of the software, i can emit it into any GUI system later 04:34:30 dork punk your not alone on that one 04:34:34 dp: dont do it, floppies areuseless 04:34:43 sleep- - I think I have to... 04:34:45 handy for booting off though 04:35:35 sleep: you going to write like a translator to generate say a gtk+ shell and a win32 shell from the same code and then have them link to functions in the program libary... now theres and idea.. 04:35:37 dp: why? 04:35:39 * darth goes get a notepad 04:36:00 sleep: if your qwriting an os and can devote any hard drive space to it 04:36:02 darth: what happens is that, at run time, the system reads in the XML and creates the GUI components as described 04:36:03 sleep- - Hmm, mostly because I have no CD burner... And I don't want to force my friends to have to create a partition for my OS, once it is ready for use... 04:36:17 darth: theres also an XML description of the functional interface to the data 04:36:32 sleep- - Currently, I test it from a floppy... 04:36:35 darth: the function interface also generated the scripting API, like XML-RPC/SOAP 04:36:38 oh shit yeah gcause its just a database front end 04:36:54 sleep: sounds quite impressive 04:36:58 darth: but the GUI pulls data from that XML layer and displays it - allows you to alter it , and pushed it back 04:37:19 darth: this system is already being used at another software company too - the last company i worked at 04:37:24 darth: they got it working in Java 04:37:39 darht: im doing a C++ version that does HTML and GTK so far 04:37:55 darth: once the core engine is built, app development becomes really really fast 04:38:13 dp: ic - do you have VMWare or BOCHS? 04:38:24 sleep- - No... 04:38:24 surprised you dont package or license the core engine tosomeone good little earner that would be :) 04:38:39 dp: i guess without VMWare, it would be a real pain - floppies suddenly make sense again :) 04:38:50 sleep- - My computer can't run VMWare well... And I could never get BOCHS to run properly either... 04:38:53 darth: they talked about that - but we are going to use it for a while and make it more complete 04:39:12 darth: plus the application building toolkit space is filled with big scary competitors :) 04:39:13 sleep- - I kind of don't trust VMWare or Bochs... 04:39:23 whats you companies main product line ? 04:39:24 darth: the cool thing is that i know how it all works internally 04:39:29 sleep- - I was getting unexpected results with Bochs... But my kernel was working properly on real hardware... 04:39:44 darth: my last company is called InfoBlox - they make server appliances for DNS, LDAP and RADIUS 04:39:52 dorkPunk what version were you using 04:39:55 dp: ic - its probably better to work off real hardware 04:40:04 darth: my new company is called sixfold - we do linux clustering stuff 04:40:06 darth - The latest version two months ago (I forgot the version number). 04:40:07 --- quit: pengo () 04:40:19 --- join: pengo (xtofu@p245-tnt2.mel.ihug.com.au) joined #osdev 04:40:45 well 1.4.1 pretty stable (or so ive been told cant use the bloody thing myself :() but version 2 just been released, got ia64 support apparentrly 04:40:53 ello pengo 04:41:03 hey darth 04:41:29 BOCHS w/ia64 support?! 04:41:36 or are you talking about something else? 04:42:48 sorry no its x86-64 9the amd one suppoort) 04:43:02 * sleep- has made VMWare core dump quite a few times :) 04:43:24 darth: does it run on x86-64, or emulate it as well? 04:44:21 * wli fixes PCI bridges off of node 0. 04:44:26 it just emulates it, though plex-86 was the jit compiling one 04:44:40 ic - thats cool 04:44:53 so i could write test code for x86-64 before i even have a box? 04:45:10 x86-64 sims have been out for a while. 04:45:15 sleep- - Sure. :-) 04:45:36 cool 04:45:49 when can i actually buy one of those damn machines? 04:46:02 sleep- - Next year, sometime, if you're lucky... 04:46:05 Sometime late next year. 04:46:12 I refuse to support x86-64 though... 04:46:18 I already feel cheated because I have an x86 box... 04:46:18 rly? why? 04:46:42 x86-64 is just going to be 64 bit extentions, on the same damn 32 bit architecture that we already have. :-( 04:46:46 Just adding more to the mess... 04:46:59 yeah, and the registers are named even worse 04:47:16 Hell with that. I just want something clean now. Even if it isn't fast at all. 04:47:43 was the 16-bit 8086 based on an 8-bit processor? 04:48:05 --- join: lynx (~root@pD95442A6.dip.t-dialin.net) joined #osdev 04:48:06 pengo - I think so, but I do not know. 04:48:08 havent they done the same thing that intel did to move from 16-bit to 32 bit ? 04:48:29 was based on a 4 biot processor 4004 04:48:42 yep 04:48:44 dp: thats what i was saying before - i want a CLEAN sensible system 04:48:46 same basic architecture, but they didnt go for backwards compatibility 04:49:08 hence you can work directly with nibbles on the x86 04:49:12 sleep- - Yes, me too. 04:49:25 just when intel was trying to finally do the right thing, amd came in and ruined it 04:49:34 i bet people will use x86-64 instead 04:49:43 so they can run their old crappy apps 04:49:54 and in any case, itanium is probably bloated 04:50:01 i dunno, i just am guessing 04:50:17 less hassle, and look at how intel are strulggling to get the perforance up on ia64, hp extened the PA-risc roadmap for another couple of processors 04:50:22 I am going to do a lot of research before I buy my next computer. I am going to look at every architecture I can find, and buy only the cleanest... 04:50:22 so there obviously losing fairth 04:50:23 its aweful big, awful power hungry :( 04:50:47 why is itanium such a huge processor? 04:50:54 alphas are nice 64bit cpus 04:51:00 whats the deal with itanium? 04:51:13 * DorkPunk shrugs innocently. 04:51:30 well 04:51:36 What is PPC like? Clean? 04:51:43 mips are probably eht ecleanest risc boxen 04:51:46 the 04:51:48 cleanest 04:51:54 huh 04:52:07 maybe intel is just too big of a company to make a new processor from scratch 04:52:10 PPC has a big inst set 04:52:15 ppc is , from what i heard fat 04:52:20 nearly pc like 04:52:22 not a true RISC in that respect 04:52:26 ye 04:52:31 the architecture of ia-64 rocks... predicated execution and so on 04:52:33 Does MIPS support virtual memory? 04:52:37 MMU? 04:52:38 bleh 04:52:39 course 04:52:40 YES 04:52:47 * wli has dropped 25 patches in well under 24 hours. 04:52:47 Hmm, ok. 04:52:55 ugh 04:52:56 DorkPunk : you know what sgi runs theri puters on? 04:52:59 i forget SQL 04:53:06 lynx - Hmm, MIPS? 04:53:08 DorkPunk : and what the new onyx3900 uses? 04:53:12 DorkPunk : yes... 04:53:15 * wli wonders what Michelle slipped into his morning coffee. 04:53:18 z80? 04:53:21 DorkPunk : i am using my sgi box rite now :) 04:53:26 darth - LOL 04:53:27 darrth pff 04:53:30 lynx - I want an SGI box now! 04:53:39 i want to do: SELECT * FROM TABLE_FOO WHERE PID=`SELET PID FROM TABLE_FOO WHERE NAME='someval'`; 04:53:46 i just want a risc box 04:53:49 please, someone help me with a simple join 04:53:53 * sleep- is braindead 04:54:02 well 04:54:02 lynx - What OS are you running on the SGI? 04:54:07 i ordered a PPC today =) 04:54:13 * darth id be happy with a clapped old acron archimedes, which noones probably ever heard of big in uk and south africa apparently .... 04:54:17 DorkPunk : IRIX 04:54:28 lynx - How is IRIX? 04:54:33 cool 04:54:33 lynx kick arse 04:54:37 full featured 04:54:40 nice 04:54:42 efficient 04:54:44 lynx - Stable? 04:54:49 BLEH 04:54:50 ahh - maybe a PPC would be fun to develop an OS for, but arent their MAC specs really hard to get? 04:54:59 wtf is that for a question... 04:55:06 DorkPunk : OF COURSE 04:55:16 lynx - Heh, how should I know? 04:55:25 XFS is fast 04:55:33 especially on SGI hardware 04:55:38 in the 1.5 years i have it, i use it daily and i haven?T been in the situation to reboot the box or anything 04:55:42 at least it was when i used sgi a few years ago 04:55:43 sleep- : yesp =) 04:55:50 lynx - How much does a system like that cost? 04:55:52 i worked on an onyx for a while 04:56:01 DorkPunk : a new one? 04:56:05 sleep-: are those TABLE_FOO's meant to be different tables? 04:56:07 lynx - Yeah. 04:56:13 DorkPunk : like.... 11000USD 04:56:17 :-( 04:56:17 well 04:56:26 maybe 14000$ 04:56:27 depends 04:56:27 pretty cheap secondhand 04:56:33 indeed 04:56:44 but still, sgi killerboxes are rare second hand 04:56:48 howd you get hold of one lyx 04:56:54 * lynx pets his i2 r10k MaximumImpact 04:57:12 darth : ebay... and buying several parts... etc 04:57:14 ok, im so stupid right now i cant write sql ... :( 04:57:18 steady upgrading 04:57:29 DorkPunk : you know 04:57:39 DorkPunk : if i were you i would buy the new amiga with amigaos4 04:57:50 if you ever saw a ppc amiga with amios3.5... 04:57:54 lynx - Heh. The new Macin-miga? 04:57:55 pengo: no, its one table - its a tree - each node has name and id an pid 04:58:00 pengo: pid == parent id 04:58:05 you would be sure it beats the shit out of any comparable sys/os combination 04:58:13 sleep-: SELECT * FROM TABLE_FOO1, TABLE_FOO2 WHERE TABLE_FOO1.PID = TABLE_FOO2.PID AND TABLE_FOO1.NAME = 'someval' 04:58:24 DorkPunk ... yes... 04:58:31 pengo: one table - tree in a single table 04:58:45 sleep-: oooh.. you have to give the tables aliases.. depends on your database 04:58:46 pengo: id == key, pid == parent id, name == readable name for node 04:58:48 lynx - I am not really interested, if the PPC architecture is as dirty as people say... 04:58:55 aliases? 04:59:03 i dont remember that - ive done this before with normal queries 04:59:06 sleep-: SELECT * FROM TABLE_FOO as foo1, TABLE_FOO as foo2.. your syntax may vary 04:59:11 lynx: os3.5/3.9 doesnt work on the new boards 04:59:15 sleep-: maybe just without the as 04:59:24 i 04:59:25 ic 04:59:26 thanks 04:59:30 Darth of course not 04:59:32 np 04:59:32 ill look in the sqlite manual 04:59:42 i hate sql :) 04:59:48 yeah :) 05:00:49 i worked on this mammoth of an sql project where all the processing had to be sql, tho the sql itself could be generated.. ugh. 05:00:55 but i dont really know a better data query l anguage 05:00:56 lynx iam thinking of saving up for one, you can run macosX on em :) 05:01:06 Darth : bleh 05:01:13 Darth : macos is shite compared to amigaos 05:01:14 sleep-: yeah.. why hasn't anyone made one? :/ 05:01:29 amigaos is fast and also quite straightforward concernign multimedia 05:01:38 no really mac on inux can run it if your using powerpc hardware, its just against the user agreement 05:01:40 --- join: lodda (Lothar@p508FE39B.dip.t-dialin.net) joined #osdev 05:01:43 lynx - But OSX is just... pretty... :-) 05:01:47 hello! 05:01:48 I like shiny things. 05:01:55 Greetings, Mr. lodda. :-) 05:01:55 ello lodda 05:02:04 DorkPunk : well, if it is because of that, why not stick to winXP then ;) ? 05:02:15 lynx - Because OSX is shinier than WinXP. :-) 05:02:26 dp has a point. 05:02:30 you wouldnt like IRIX then 05:02:57 hey darth &lynx &DorkPunk 05:03:45 i lodda 05:03:53 lynx i though that had some weird congnative based interface eor something 05:04:13 that just took ages to get the basic, but get the basic and its al really consistent and clear 05:04:15 inform yourself 05:04:25 why do i stay up all night? its so unhealthy 05:04:26 the interface is brilliant but not a beauty 05:04:28 hey lodda 05:04:31 except for the command line which is still as infuriating and gotic as ever 05:04:46 bleh 05:04:46 lynx surprises me considerign all the graphics work that sgi is invovled in 05:04:58 darth : boy... 05:05:01 hey pengo 05:05:02 is this an outer join that i am attempting 05:05:06 or whaT? 05:05:07 hi darkito 05:05:09 darth : it is a unix syste, what is surprising about that? 05:05:12 * sleep- is so stupid right now 05:05:15 hi sleep- 05:05:19 lodda: howdy :) 05:05:25 darth : they want a useable interface 05:05:29 and that is what IRIX offers 05:05:35 or better 4dwm 05:05:51 you dont need any freaking fancy blinking buttons to do gfx work or surf the web 05:06:07 sleep-: what do you want to get as a result? the child, the parent, or the top? 05:06:10 and all those fancy guis eat cpu power, too 05:06:10 lynx, i just dont like the command lin,e probably cause im not used to it mind 05:06:21 you should 05:06:24 it is important 05:06:31 pengo: i want, given the name of a node, its children 05:06:36 i know, but ive always prefered the old amiga cli 05:06:39 much clearer 05:06:40 pengo: so i need to map the name to a pid first 05:06:48 i feel so stupid 05:07:41 maybe I should pass the pids around 05:07:47 and make my life easier 05:07:50 i mean ids 05:07:52 sleep- now you know how it feels to be me :) 05:08:15 sleep-: yeah i think you're on the right track then.. SELECT children.* FROM TABLE_FOO1 as parent, TABLE_FOO2 as children WHERE parent.ID = children.PID AND parent.NAME = 'someval' 05:08:31 without the 1 and 2 05:08:37 Hmm, the cheapest remanufactured SGI system is 2295 dollars. :-( Octane/SE, R 120000 300 MHz, 2 MB cache, 512 MB RAM (2 GB max), 9 GB hard disk. 05:08:44 ic - let me read that and think - im really slow righ tnow 05:08:48 ic 05:08:49 ok 05:08:50 let me 05:08:51 try 05:09:27 this works if its all one table? 05:09:36 sleep-: in oracle it does :) 05:09:43 dorkpunk, 800 hundred dollars for top end amiga board, linux, and g4 processor 05:09:47 DorkPunk : and for anythign besides heavy gfx and some other special tasks it is slow, too 05:09:48 which is uprgradeable 05:09:49 icv :) 05:09:52 so keep away from it 05:09:53 fuck it 05:09:53 think its an 800mhz one 05:09:56 im doing it the lame way 05:10:00 because i just realized the names 05:10:05 arent unique anyway 05:10:07 i need the node ids 05:10:18 Yeah, hell with SGI. Too expensive. 05:10:29 Maybe I would steal one. But I would never buy one. 05:10:35 besides, this is SQLite - im sure its not super fancy SQL 05:10:55 dp:i have contemplated stealing SGI machines quite often :) 05:11:27 sleep-: nested queries are where it gets tricky and most DB's seem to konk out.. self-joins aren't too tricky i think 05:11:35 ic 05:11:48 as long as it allows aliases 05:12:19 i just realized that i need to hold the Ids in the GUI because the nodes need to be indexed in a unique fashion, but there can be many nodes with the same displayed 'name' 05:12:33 actually, i think SQLite is pretty advanced - im a real fan 05:12:34 its cool 05:12:43 cool.. i've never heard of it :) 05:12:50 --- quit: eks[Zzzz] ("going to work") 05:13:00 what's this for anyway? 05:13:23 sqlite is a sql engine entirely implemented as a library 05:13:25 you link against it 05:13:37 and use its API 05:13:43 yay 05:13:43 its backing store is a regular file 05:13:49 * lynx hugs his box 05:13:49 and its got transaction protection 05:13:54 and other nice things 05:13:59 really simple, fast and lean 05:13:59 kinda cool 05:14:01 no server 05:14:01 yeah 05:14:06 great for a little embedded database 05:14:14 for inside applications 05:14:23 ok 05:14:27 i will have a little nap 05:14:28 and its totally 100% freeware code - the license says "Do good in the world" 05:14:30 later 05:14:31 or something like that 05:14:32 --- quit: lynx ("[BX] If idiots could fly, IRC would be an airport") 05:14:32 adios 05:14:38 its great 05:14:39 sleep-: cool :) 05:14:51 better than sleepycat, which was my previous favorite database 05:16:24 Are there any non-x86, non-Apple laptops? 05:16:38 i've only ever really used oracle and mssql 05:16:39 sparc book 05:16:56 pengo: this is cool because theres nothing external to your application to worry about 05:16:59 but it is expesive, and more a mobile desktop, battery lasts abiout half hour ive heard 05:17:15 darth - SPARC book? Do they still sell those? 05:17:18 i have a notepad made from 300 sheets of paper and a spiral bit 05:17:41 hehe 05:17:57 * sleep- cant use any form of personal organizing software - it never sticks with me 05:18:05 pengo - WOW! Is it a touch-screen? Or does it require some special stylus? 05:18:11 :) 05:18:14 300 sheets is a lot of storage capacity. a lot of people get turned off by 100 sheet pads. 05:19:34 DorkPunk: it's stylus-based but it's an open standard and heaps of places sell cheap ones now and heaps of different types.. i just got myself $2 pilot 1.0. 05:19:48 i got this black folder where you can have 500 sheets of memory inserted 05:19:57 ;) 05:20:12 does it have wireless? 05:20:36 pengo - Wow, is it actually small enough to keep in your lap? 05:20:41 sleep-: no, but it connects with ordinary fax machines! 05:20:44 i make paper airplaes out of it ? does that count 05:20:51 wow - sqlite is typeless 05:20:56 im not sure how i feel about that 05:20:59 range is a bit limited mind :) 05:21:32 thats either really cool - or really bad 05:21:34 i cant decide 05:21:35 i can transfer data as fast as i can write 05:22:13 my notepad is typeless too 05:22:49 mines got a syntax colouring kit :) 05:23:07 sleep-: so how does it sort unicode names then? 05:23:35 pengo: i dunno 05:23:44 pengo: but any column can take any type of value 05:24:06 make my current task real easy :) 05:24:18 sleep-: are columns widths limited by bytes or anything? 05:24:19 but later i can imagine that might bite me somehow 05:24:33 pengo: you just create columns with names 05:24:43 any insert of a value to any column works 05:25:06 you have to do integrity checking all in code i guess? 05:25:49 like min/max sorta stuff 05:26:06 i guess - but it makes interfacing with the database simple 05:26:13 but i wonder what happens 05:26:24 how about ids/refs? does it allow you to define/check those? 05:26:25 if i say: insert into foo values('10'); 05:26:31 is that a string or an integer? 05:26:38 i put it in quotes, so i bet its a string 05:26:47 it just 'is'. 05:26:54 pengo: again, i dunno - but it concerns me 05:27:07 typelessness in general frightens me 05:27:21 typelessness is cute until you need types :) 05:27:27 hehe 05:27:47 i like data 05:27:51 or, as in this case, it creates totally abiguous results 05:27:53 i think that's about all i like about computers 05:28:26 you should hang out with my friend stu 05:28:30 my inet-conecction is horrible today :/ 05:28:34 all he thinks about is data persistence 05:28:43 and tree structured data formats 05:29:07 checking their site now.. 05:29:12 FOREIGN KEY constraints are parsed but are not enforced. 05:29:42 in SQLite? 05:29:44 thats lame 05:29:53 i cannot live with that 05:30:06 dorkpunk:http://www.eyetech.co.uk/addbar.php?Address=/NEWS/AMIGA001.HTM 05:31:07 darth - Ok, looking. 05:31:15 no Nested transactions either 05:31:30 but otherwise seems ok.. http://www.hwaci.com/sw/sqlite/omitted.html 05:31:49 darth - Ah yes, I saw this on Slashdot last week. :-) 05:32:42 pengo: thanks for the overview 05:32:43 im waiting to see what peoples reactions are to it first, its either a amiga or a brand spanking new rather orgasmic guitar 05:32:50 im not SQL aware enough to evaluate it 05:34:15 sleep-: i'm not 100% on what's actually in the SQL92 standard.. cause i know oracle and ms didn't stick to it 05:34:16 once i got the motherboard, i could cobble together a system for anoth 100 200 hundred pounds 05:36:03 class you can get an sgi o2 for a couple hundred quid :) 05:36:12 pengo: you pointed out the important missing features, thats important 05:36:18 im not sure i care about nested transactions 05:36:25 but missing foreign key support, thats terrible 05:36:30 from a data consistency standpoint 05:36:53 yeah, not difficult to check yourself tho 05:37:37 ? 05:37:54 im not sure, at least not without pulling out all the data and checking externally 05:38:04 well, yeah, that's what iw as thinking :) 05:38:06 hmm 05:38:13 or just running some queries 05:38:32 oh wait.. that'd require an outer join, which isn't supported but has little other use :) 05:38:33 ic 05:38:38 hehe 05:38:56 well, my application is embedded - i think if i debug it enough i wont have to worry even about foriegn keys 05:39:03 just would have made me feel more confident 05:39:17 yup, and by the time you're done maybe they'll have that feature :) 05:39:30 hehe 05:39:30 :) 05:39:32 hope so 05:41:42 hmm.. having two operating systems have access to the one partition might be a bad idea. maybe i should put vmware into a different mode. 05:42:23 its accessing a raw partion that is also mounted nativelky? 05:42:26 right im off to lectures c ya all 05:42:32 sleep-: yup :) 05:42:32 --- quit: darth ("BitchX-1.0c19 -- just do it.") 05:42:36 thats bad bad bad 05:42:36 :0 05:42:42 unless one of them is read-only 05:42:42 sleep-: it's fun fun fun 05:42:47 sleep-: nup :) 05:43:02 it's not very good for trying to pass data between them, i tell you :) 05:43:11 i'm amazed it works at all really 05:43:15 hehe 05:43:22 thats not the right way to do it :) 05:43:37 yeah i'll set up samba again sometime 05:44:07 you could use nfs too 05:44:11 --- join: eks (~eks@h66-38-248-194.gtconnect.net) joined #osdev 05:44:18 seems better 05:44:38 i guess i'll have to work that out next 05:45:41 man this sucks 05:45:56 brb 05:45:57 --- quit: sleep- ("Leaving") 05:46:14 Ooh! 05:46:37 --- join: sleep- (~ivan@adsl-66-72-96-115.dsl.chcgil.ameritech.net) joined #osdev 05:47:04 --- join: zhware (~stoyan@p29ec1e.osakac00.ap.so-net.ne.jp) joined #osdev 05:47:07 i had to restart X to get rid of an environment variable - thats lame 05:47:17 very 05:49:15 man.. i was 15 the last time i did anything serious with C.. what's become of me? 05:49:34 hehe - i write c/c++ all day every day 05:49:48 pengo: now ? how old? 16 ;) 05:49:56 zhware: 23 :) 05:51:01 * zhware age = reverse(age(pengo)); 05:51:33 sleep-: i remember asking my friend about these features i wanted to add to this game.. and he said wisely, "son, it is time you learnt c++". and somehow i ended up using java 05:51:34 --- quit: lar1 (Remote closed the connection) 05:51:38 zhware: you're -23!?!!?! wow 05:52:20 wow.. i wish i was going to be born in 2025. 05:52:46 pengo: c++ is fun 05:52:52 pengo: lots of people hate it, but i really like it 05:53:14 pengo: reverse = 32 ;) 05:53:30 sleep-: i read half of "the C++ programming language" by the creator guy.. i was pretty impressed. 05:53:39 zhware: yeah i know :) 05:53:46 the stroustrup c++ book? its hard to read 05:53:54 i found it a pleasure to read 05:53:58 hes not good at writing plain english 05:54:12 there is no good object languuage after smalltalk 05:54:22 but then it's up to the 1 billionth revision or something now 05:55:11 i like C++ now that its sort of stabilized 05:55:17 with things like templates actually working 05:55:19 sleep-: the book was very precise. i like that. 05:55:26 and, thanks @#$%# god, dynamic_cast<> 05:55:33 without that itd be practically useless 05:55:40 pengo: thats true 05:55:41 cool :) 05:56:12 without that sort of run time type checking, itd be really hard to use do real OO stuff 05:56:31 i seem to use dynamic_cast<> a lot - i dont know how i used to live without it 05:56:32 :) 05:56:33 actually i used to like precise manuals, now i just complain that they should just build a UI / IDE that makes it obvious 05:56:39 heheh 05:57:07 lack of templates shits me in java.. macros too to a lesser extent 05:57:32 yeah, but really: in java: why no typesafe enumerations?!?! 05:57:38 why didnt they add those? 05:57:49 really useful, really glaringly missing from the language 05:58:14 enumerations just bog down the language, and make it less.. verbose. 05:58:17 ? 05:58:25 but i want to make constant ints 05:58:29 that are type safe 05:58:35 for things like options to functions 05:58:45 its scary to not type check those 05:58:51 static final int HAHAHAHA = 2; 05:59:01 yeah, i know it sucks :/ 05:59:02 haha 05:59:12 anyway 05:59:18 it also annoys me 05:59:24 some day i'll make my own language 05:59:28 that *i* cant make overloaded operators 05:59:34 but the language designers made them for strings 05:59:35 ?!? 05:59:37 thats not fair 05:59:43 its like im not trusted enough 06:00:03 dude, you just have to join the inner circle of sun worshippers and you'll be able to make them too. 06:00:19 sing the gosling song! 06:00:59 --- join: Javanx (~javanx@host12-18.pool21345.interbusiness.it) joined #osdev 06:01:34 hmm 06:01:38 i have to debug thisw 06:01:40 bbl 06:02:01 k 06:03:48 GCC is one of my favorite programs of all time. 06:04:03 No, I take that back. GCC *is* my favorite program of all time. 06:04:53 hehe 06:05:02 its scary - have you looked at the source before? 06:05:08 sleep- - Oh god, I'm too scared. LoL 06:08:02 bbl 06:08:05 im very critical of code 06:08:12 for instance, perl is terribly scary 06:08:21 so im already biased against most things 06:08:29 but gcc codebase is very very frightening 06:08:51 LoL! 06:08:52 How so? 06:09:12 i dunno, i cant remember 06:09:17 its so horrible i blocked it out 06:09:27 LOL! 06:09:39 but even just watch gcc build - the stuff it does during the compile alone will creep you out 06:09:50 sleep- - I have never compiled GCC... 06:10:49 dp: on your box it would take about an hour 06:11:00 sleep- - Wow, only one hour? 06:11:12 dp: but it used to be more fun to build - its makefiles are more friendly now 06:11:33 dp: when I had only a 386 it would take forever - and i would always screw up like one command and have to start over :0 06:12:06 Heh, that sucks... 06:12:22 I love Window Maker. 06:14:07 man, this is sooo close to working 06:14:26 sleep- - What is...? 06:14:29 core dump 06:14:31 of course :( 06:14:50 at this phase, when its all linked and compiled 06:14:59 the core dump arrives to ruin things 06:15:49 :-( 06:15:53 i better go sleep.. tomorrow i'll relearn c. and the day after i'll work out c++ 06:16:14 adios 06:16:23 night sleep 06:16:36 --- quit: pengo () 06:18:13 man, the right data is coming back, its just dying somewhere before it gets to the gui layer 06:18:15 soooo close :) 06:21:29 --- quit: zhware (Read error: 110 (Connection timed out)) 06:38:02 * sleep- dances for joy 06:38:08 sleep- - Working? 06:38:11 well 06:38:16 no, but the data is coming back 06:38:21 i just need to use it correctly 06:38:22 Ah, cool. 06:38:30 then i need to map the mouse event to the right tree node 06:38:42 then it will all work 06:38:50 i can map a tree view to a sql query 06:38:56 that populates the tree widget 06:38:59 as you expand 06:39:32 im not sure if that sounds very exciting - but it means no programming required to map a treeview gui widget to the data 06:39:59 and it can display any data that can be queried via sql to return lists of child nodes for each node 06:40:20 Heh. 06:40:24 --- quit: asmodeus ("brb") 06:40:36 for me, it means "no boring GUI programming ever again" 06:41:53 i just say: 06:41:59 in the xml gui definition 06:44:19 dp: i know you dont really care, but for me its a victory 06:44:32 sleep- - LoL, well, I'm happy for you then. :-) 06:44:36 hehe 06:44:48 --- join: Chille (~bajs123@h36n2fls32o811.telia.com) joined #osdev 06:44:59 in the end, this is one step towards app development nirvana: no boring, repetetive code - ever 06:45:12 Heh heh. 06:46:34 --- quit: trans (Read error: 60 (Operation timed out)) 06:46:40 --- join: asmodeus (~asmodeus@h125n2fls33o867.telia.com) joined #osdev 06:51:14 --- join: zwanem (User-10371@modemcable191.130-200-24.mtl.mc.videotron.ca) joined #osdev 06:56:04 --- join: bono (~bono@host-ip20.8D.com) joined #osdev 06:56:08 --- join: kemu (~bleeit@3.38-200-80.adsl.skynet.be) joined #osdev 06:59:45 --- quit: zwane_ (Read error: 60 (Operation timed out)) 07:01:21 --- join: storm_ (storm__@dialpool-210-214-130-36.maa.sify.net) joined #osdev 07:02:38 Does anybody know where to find a good tutorial about how to write a memory manager for kernel 07:02:40 ? 07:07:30 back 07:08:58 Javanx - pavlovskii wrote a few... Are you working on paging? 07:09:52 DorkPunk: Yes, trying to get a clue on it 07:10:04 Javanx - Ok, don't give up! Let me find the URL for you. 07:11:41 Javanx - http://www.themoebius.org.uk/tutes/ 07:11:49 thanks :) 07:12:20 Javanx - No problem. 07:13:50 storm: its a legal thing in the US 07:13:57 storm: probably the same in most other countries too 07:19:52 --- part: storm_ left #osdev 07:20:54 man - i feel bad for that guy - hes using Windows ME as his dev platform 07:23:17 --- join: koi (~ziga@void.phear.org) joined #osdev 07:23:19 --- nick: koi -> oink 07:23:21 yay! 07:24:42 check this out: 07:24:54 yes? 07:25:12 http://void.phear.org/misc/softice.png 07:25:45 isn't nice ? :) 07:26:00 (softice, not gnome) 07:27:14 hmm 07:27:23 i'm not into 07:27:27 grr 07:27:34 i'm debugging windows drivers from linux 07:27:35 >:) 07:27:42 i dont care about themes - a fully maximized xemacs looks the same in all of them 07:27:42 hehehe 07:28:32 Themes are for quiche-eaters. 07:30:45 back 07:30:48 oink: the pics on your site are evil. i need 20 seconds to load them properly, but i have 768kbit down. 07:30:52 wb dax 07:31:30 ugh 07:31:33 --- join: [doos] (~cruor@hlv-4523.adsl.wanadoo.nl) joined #osdev 07:31:39 same here - real big 07:31:42 lodda: i know, i have 256Kbps upstream DSL here, uploading shit to another host and it's slow. 07:31:56 DOOS! 07:32:03 i'll mirror my website somewhere else one day 07:32:27 <[doos]> dax!!! 07:32:42 seems like the whole family is here 07:32:48 am i right ? :) 07:32:49 :) 07:32:53 wtf 07:32:56 brb 07:32:58 :))) 07:33:07 * dax slaps oink 07:33:16 hey people 07:33:22 yuriz!!!!! 07:33:23 * dax looks around 07:33:25 no people. 07:33:29 * oink smells yuriz 07:33:36 * yuriz is tracing his kernel 07:33:50 * oink traces windows kernel :O 07:34:09 yuriz: check the url i gave a few lines upper :) 07:34:19 up* 07:34:36 oink: which URL? 07:34:44 16:24 < oink> http://void.phear.org/misc/softice.png 07:34:46 :)) 07:34:53 SoftICE? 07:34:57 yup :) 07:35:03 isn't it some tool for M$-Dog 07:35:05 ? 07:35:08 yup 07:35:13 I used it 07:35:23 using the same way i do ? :) 07:35:24 they had a windoze wersion too 07:35:25 when I was silly cr4cker %) 07:35:27 i gues 07:35:32 dax: lol, it's windows-only 07:35:38 probably DOS too 07:35:54 oink: it definitely exists for dog 07:35:54 who cares 07:36:06 oink: stfu, go laugh at somebody else 07:36:13 dax:) 07:36:33 dax is in bad mood today? 07:36:34 i'm happy, a week to configure it for network debugging :o 07:36:37 yes dax is 07:36:43 :-/ 07:37:34 --- join: I440r (~mark4@sdn-ap-005tnnashP0179.dialsprint.net) joined #osdev 07:38:08 and i'm still wondering if i should pick up daxos again 07:38:43 up to you 07:39:07 guess not 07:42:17 --- join: acme (acme@pD9E63B89.dip.t-dialin.net) joined #osdev 07:48:56 --- nick: [doos] -> [doos]-away 07:51:10 oh, this sux - i was so close, then i become over tired - i cant debug this code :( 07:55:02 --- quit: DorkPunk ("[BX] Mr. Peanut uses BitchX. Shouldn't you?") 07:58:28 ugh - i was burned by a cast 07:58:33 so i got no warning :( 07:58:55 and xemacs auto-completion to the wrong variable ;) 08:03:42 --- join: HeavyJoost (~HeavyJoos@a213-84-139-110.adsl.xs4all.nl) joined #osdev 08:05:03 --- join: lynx (~root@pD9E630AD.dip.t-dialin.net) joined #osdev 08:05:13 hey lynx 08:05:28 hey honeys 08:05:30 well 08:05:34 no time for it 08:05:36 have to learn history 08:05:38 for a test tomorrow 08:06:07 how are you both going/doing/? 08:07:08 boo lynx 08:07:10 both? 08:07:16 Finefine :) 08:07:17 Hey oink 08:07:20 robert! 08:07:33 lynx: history, baah 08:08:53 --- nick: [doos]-away -> [doos] 08:13:28 --- nick: [doos] -> [doos]-away 08:14:39 --- join: sliv3r (dfghdfg@217.19.4.113) joined #osdev 08:14:53 hi 08:18:18 --- join: Mathis (~Mathis@manz-d9b94b8b.pool.mediaWays.net) joined #osdev 08:18:25 heh Mathis 08:18:38 heh all 08:22:05 --- join: trans (~trans@fatwire-201-109.uniserve.ca) joined #osdev 08:23:29 --- quit: sleep- ("Leaving") 08:23:46 --- quit: Javanx ("I don't feel a thing, and i stopped remembering. The days are just like moments tourned to hours") 08:33:37 bye 08:33:50 bye lynx 08:34:06 --- quit: lynx ("BitchX-1.0c19 -- just do it.") 08:34:36 --- join: cookin (~jrydberg@d212-151-49-48.swipnet.se) joined #osdev 08:35:55 --- quit: dax (Connection reset by peer) 08:37:42 --- join: tirloni (gpt@aline.bs2.com.br) joined #osdev 08:44:45 --- join: quantis (~darth@130.88.157.186) joined #osdev 08:44:48 ello 08:44:54 hey quantis 08:45:30 whats everyone upto? 08:52:18 not a lot then 08:52:27 * quantis thinks it time for the osdev call to action 08:52:29 MOO 08:52:47 Hi there. 08:53:28 :) 08:56:40 wohoo it worked 08:57:01 robert hows the atmel powered workstation going ? 08:57:14 Very well ;) 08:57:17 boo quantis 08:57:27 http://robert.zizi.org/~tinyvm/tinier/ 08:59:10 robert: you sure thats the adress? 08:59:51 http://robert.zizi.org/~tinyvm/tiniervm/ 09:00:20 ahhh 09:01:30 ohhh i was looking for some flashy website about it all :( 09:01:32 :) 09:01:55 Darn. 09:02:42 --- quit: cookin ("Client Exiting") 09:05:06 :| 09:05:22 --- join: corsairk8 (~Stealthy@pc-62-31-1-150-cr.blueyonder.co.uk) joined #osdev 09:07:19 ello corsairk 09:09:08 hi quantis 09:09:14 --- quit: sliv3r () 09:14:35 guess no ones been up to much then :( 09:15:39 nah, just the same old 09:16:07 --- join: Javanx (~javanx@host12-18.pool21345.interbusiness.it) joined #osdev 09:18:42 --- quit: Lathiat (Read error: 110 (Connection timed out)) 09:19:18 corsairk8 what do you do for a living ? 09:19:30 quantis: stupid question... 09:19:36 you like a sfoftware eveloper or something? 09:19:41 mathis why? 09:20:04 quantis: it's as stupid as 'what do you do in your life' 09:20:25 of course we all know the answer 09:21:04 * quantis for quantis its bugger all (hes a uni student with no focus or direction, just a good list of free porn sites. ....) 09:21:12 doh 09:21:29 speaking to myself i the third person, never a good sign 09:22:10 hrm 09:22:20 on windows, arguments passed to C functions are on stack ? 09:22:25 yeah sure 09:22:35 * oink <- dumb 09:22:42 :) 09:22:49 We know, darling 09:23:00 oink: only if greater that a specific size 09:23:04 --- join: huntrckr (~huntrckr@myr53-01-p215.gt.saix.net) joined #osdev 09:23:21 Mathis: huh ? 09:23:28 Mathis: I said 'C functions' heh 09:23:48 corsairk8: hey, how's your Omicron going? 09:24:28 a good optimizing compiler pushes only paramters onto the stack who's count is greater than a specific number 09:25:58 and how does it deal with external functions ? :) 09:26:15 I guess this applies only on local/static functions 09:26:18 give me an example 09:26:26 ah, sorry 09:26:36 also for external functions 09:26:54 (assuming...) 09:27:06 depending on the grade of optimization of that module 09:27:16 well, a call to a function which is in a shared library or dll 09:27:26 how would the function know where the arguments are ? 09:27:32 well, then all parameters are pushed onto stack 09:27:36 there :) 09:27:46 they can be only at two places... 09:27:52 the registers or the stack 09:28:50 hello 09:28:58 compiler discussion i see 09:30:37 mathis i dont think ANY compiler should be doing ANY optimizations what so ever :) 09:30:44 --- quit: kemu (Read error: 104 (Connection reset by peer)) 09:30:47 so thers no such thing a s "good optimizing compiler" :) 09:30:51 my compiler would do so... 09:31:07 "would" ? 09:31:10 yep 09:31:16 i.e is vaproware still ? 09:31:25 or... it compiles but doesnt optimize yet 09:33:29 yeah but some languages dont have the flexabilty to allow the user to optomise thing any otherway then in the design of the algorithm (which is the most important) where little tweeks to say paramter passing or whatever would surfice 09:34:06 then those languages arent worth using imho 09:34:09 well. 09:34:20 --- join: dax (~you@u212-239-165-117.adsl.pi.be) joined #osdev 09:34:41 moo. 09:36:26 :) 09:36:28 ello dax 09:36:57 hmm 09:37:01 * dax pounders on daxos 09:37:07 l440r but having such constructs to allow for the flexabilty of optomisation can cause it become cumbersome, and also unportable 09:37:21 dax dont you dare do that rm /daxos 09:37:23 dax: :) 09:37:33 wait at least untill we get the cvs up and running 09:37:39 uhm nah 09:38:34 why? 09:38:50 it's crap :) 09:40:02 hey the rest of us can learn from it :) 09:40:08 no it's crap 09:40:49 please.... 09:41:02 no 09:41:13 maybe later (working) versions will be released some day 09:41:43 --- join: kemu (~bleeit@6.144-201-80.adsl.skynet.be) joined #osdev 09:42:48 you restarting ti 09:42:50 hi kemu 09:42:55 bah can't find anything bout spring on sun.com 09:44:50 try byte, they had really good article on it once 09:45:31 theres about 5 papers about spring lurking on the site, but you have to go from them indrirectly cause the search results are full of how they have implemntexd the technology in to good ole solaris 09:48:17 try citeseer.nj.nec.com 09:48:21 think thats it 09:49:22 hmm 09:49:34 * dax is looking for new ideas 09:49:38 theres a couple on there including the ordinal 09:50:28 dax, start looking through the citeseer archive, it ontains all the worlds knowledge (well the usefull bits from the unis and research labs, you might no find out much about start trek or footaball leage there ) 09:50:43 i know 09:50:43 hmm 09:52:11 --- quit: acme (Read error: 54 (Connection reset by peer)) 09:54:37 do you know about citeseer? 09:55:25 yes 09:55:39 an idiot site on which i have already wasted ALOT of time :/ 09:56:36 whys it an idiot site? 10:05:13 ive never had a problem with it, use if for uni stuff most of the time, saves me going to libary and impresses the lectures most of the time 10:11:36 arse ive just read how the spring kernel implments its process for applications, its just like how i was going to d, it i.e seperate process for i/o etc and then the applications add threads to them 10:12:10 --- quit: gab (Read error: 104 (Connection reset by peer)) 10:12:35 --- join: gab (~prfalken@gaia.chx-labs.org) joined #osdev 10:13:13 * do[done] is back (gone 10:49:24) 10:13:23 --- nick: do[done] -> do 10:23:16 --- quit: eks (Read error: 113 (No route to host)) 10:24:59 --- quit: do ("Quit") 10:25:11 --- join: do (~green@194.85.84.244) joined #osdev 10:26:51 hmmm... i hate to say this, but Symantec are actually talking the truth 10:27:13 http://enterprisesecurity.symantec.com/symes298.cfm?JID=7&PID=397767a 10:27:57 the internet has become polluted by script kiddies using malicious software for sport... 10:28:59 bet you 95% of the hackers we ever hear about dont even know what c++ is :p 10:29:20 * huntrckr decided to stop ranting 10:31:33 --- join: eks (~eks@h66-38-248-194.gtconnect.net) joined #osdev 10:33:35 --- quit: kemu () 10:34:55 lol 10:36:23 --- nick: [doos]-away -> [doos] 10:43:24 --- join: Liesbeth (Simon@220.46-200-80.adsl.skynet.be) joined #osdev 10:43:50 hi! 10:44:07 hello 10:44:17 how is everybody? 10:44:45 --- join: revanthn (revanthn@202.9.183.139) joined #osdev 10:45:24 hi guys 10:46:02 hello 10:46:31 hi Liesbeth 10:49:18 Hoi 10:54:20 Ik ga, doei! 10:54:27 toedeloe 10:54:28 ? 10:54:34 It snows outside :)) 10:54:39 really ? 10:54:40 heh 10:54:44 Ja 10:54:47 lucky you :) 10:54:49 Bye mr oink :) 10:54:51 Yup 10:54:53 snow is way better than rain :| 10:54:53 its raining here as per usual 10:54:58 hehe 10:54:59 oink: :)))) 10:55:08 snow makes people happy 10:55:11 rain makes them sad 10:55:16 Exactly. Bye 10:55:18 rain gives ppl arithritus :) 10:55:29 bye robert 11:05:54 --- join: sleep- (~ivan@adsl-66-72-96-115.dsl.chcgil.ameritech.net) joined #osdev 11:06:23 web development sucks ass 11:06:53 that's why the chan is named #osdev, and not #webdev. 11:06:58 hehe 11:07:22 my OS is written in dynamic html 11:07:26 really ? 11:07:27 woh 11:07:46 heya sleep- 11:07:50 howdy rev 11:07:55 oink: j/k 11:07:57 huntcrkr is lookin for you 11:08:00 sleep-:) 11:08:49 i just spent all night making a treeview/grid view thingy in html w/SQL data binding 11:08:51 did you anyone chec out MINIX 11:08:51 it was hell 11:09:26 and now i realize it looks like shit in IE, only looks ok in mozilla :P 11:09:47 IE cant deal with transparencies in PNG?!?! thats so lame 11:09:58 does M$ do shit like that on purpose? 11:12:14 send feedback to M$ so that may implement it in the future 11:12:14 revanthn: it's already a known-bug 11:12:14 wait a sec 11:12:14 yeah, sure - they probably fuck up any image with 'Generated by GIMP' in the comment fields :) 11:12:14 on purpose 11:12:14 http://support.microsoft.com/default.aspx?scid=kb;en-us;Q294714 11:12:14 ic 11:12:18 its a trick for me to make M$ specifc HTML 11:12:23 :) 11:12:29 im not falling for it :) 11:13:16 --- quit: gab (Read error: 110 (Connection timed out)) 11:13:24 anyone knows softice here ? 11:13:41 oink:i tried it once 11:13:45 on win98 11:14:04 revanthn: know how to analyze stack ? 11:14:04 * do is away: brb 11:14:25 something like, x/16x $esp - 16*4 in gdb 11:14:39 no 11:14:48 hmpf 11:14:57 have you guys noticed that msvc compilers put padding in the stack 11:14:59 but doing.. 11:15:05 sub esp, 0xc 11:15:18 heya corsairk8 11:15:25 hey revanthn 11:15:44 * corsairk8 is knee deep in asm disassemblage 11:15:45 cors: whats wrong with that? 11:15:49 au revoir everybody 11:15:55 --- quit: Liesbeth () 11:15:57 hmm, sleep-, not much, but seems like a waste of space 11:16:08 --- join: lar1 (~lar1@adsl-63-203-74-92.dsl.snfc21.pacbell.net) joined #osdev 11:16:12 irs probably reserving room for a bunch of local vars? 11:16:25 nah, im pretty sure it doesnt 11:16:27 you mean unitialised variables 11:16:43 local vars are usually setup when their needed 11:16:50 oink: did you try 'help stack' in gdb? 11:17:01 --- join: gab (~prfalken@gaia.chx-labs.org) joined #osdev 11:17:04 oink: most of what you want is described there 11:17:21 cors: explain? 11:17:27 sleep-: hrm ? 11:17:31 sleep-: i'm talking about softice :) 11:17:37 cors: what do you mean 'when they are needed'? 11:17:46 i know how to do that w/ gdb 11:17:51 ic 11:17:52 sorry :)_ 11:18:15 sleep-:http://pxes.sourceforge.net 11:18:28 rex: thats a cool project, isnt it? 11:18:31 s/rex/rev/ 11:18:33 yeah 11:18:45 my only problem - its not built from source like a real distro 11:18:54 but binary ripped from red hat, i think 11:19:02 i want to make something similar that builds totally from source 11:19:15 unless im mistaked, pxes is a binary distro, right? 11:19:47 sleep-:http://prdownloads.sourceforge.net/pxes/pxes-base-0.5.1-6.src.rpm?download 11:20:12 ic 11:20:13 never mind 11:20:20 im confusing it with something else 11:20:27 if it builds from source, then its even more cool 11:20:30 those guys released so many version within a short span of time 11:21:13 yah 11:21:24 that and ltsp are interesting to me 11:22:10 and cluster linux 11:22:15 which does not really exist yet 11:22:44 --- join: Lathiat (trent@2001:618:4:2000:0:0:0:84e) joined #osdev 11:22:48 OpenMosix is a cluster system right 11:22:58 yah 11:23:05 --- quit: darkito ("indemidel") 11:23:09 very cool - it migrates processes 11:23:13 dynamically based on load 11:23:34 you can start 100 CPU bound jobs on one node, and they move all around until the load is balanced 11:23:44 you mean it executs the process on CPU A to CPU B and execute it over ther 11:23:52 that's cool 11:24:12 even cooler - an already running process can move 11:24:15 while its running 11:24:18 to another machine 11:24:28 the sockets migrate with it 11:24:37 and the file descriptors 11:24:47 sleep-:what IPC does linux use 11:25:06 rev:? i dont understand - linux has all the regular IPC mechanism 11:25:20 SysV IPC 11:25:20 like pipes, sockets, unix domain, etc 11:25:32 shm, msg queues, and sems. 11:25:35 all that shit 11:25:36 which one does it use in the kernel 11:25:42 between threads? 11:25:47 in the kernel? 11:26:02 its monolithic, so its all shared memory inside the kernel 11:26:03 between threads 11:26:07 --- quit: quantis ("BitchX-1.0c19 -- just do it.") 11:26:31 theres no protection between kernel threads 11:27:05 thats why they have all those memory corruption problems every major release of the kernel :) 11:27:15 or when they fuck with the VM too much... 11:27:47 FreeBSD has a new VM right 11:28:01 i dunno - i havent followed fbsd in a long time 11:28:11 but i used to really like it - alot more than linux 11:28:30 * do is back (gone 00:14:23) 11:29:12 http://sourceforge.net/projects/gpu/ 11:30:14 --- join: Zenton (~vicente@8.Red-80-34-35.pooles.rima-tde.net) joined #osdev 11:30:50 * revanthn is downloading peekabooty 11:31:34 did anyone tried MINIX 11:32:57 not a appropriate place to ask this question but what should i do if want to do some arthimetic on a 100 digit number 11:33:05 in C that is 11:34:31 oh 11:34:34 theres some library 11:34:34 --- join: cookin (~jrydberg@d212-151-96-162.swipnet.se) joined #osdev 11:34:36 that does that 11:34:41 * sleep- tries to remember 11:34:47 math library? 11:35:01 --- quit: Zenton (Remote closed the connection) 11:35:06 yeah 11:36:05 can you remember the name 11:36:19 i don't think the usual math libs does that 11:36:34 no 11:36:37 im trying to find it 11:36:42 theres a super large number library 11:36:44 that does what you want 11:38:01 --- nick: huntrckr -> huntrckr_zzzz 11:38:57 * revanthn is checking if dinkum libs can do that 11:39:12 hmm 11:40:34 --- quit: revanthn ("brb") 11:40:44 oh well, i cant remember :( 11:41:37 maybe gmp.h does what you want? 11:41:52 --- join: gab_ (~prfalken@gaia.chx-labs.org) joined #osdev 11:42:23 and mp.h? 11:42:50 GNU MP is a library for arbitrary precision arithmetic, operating on signed integers, rational numbers, and floating point numbers. It has a rich set of functions, and the functions have a regular interface. Freeware. (May 1999) 11:42:55 --- quit: dax (Read error: 104 (Connection reset by peer)) 11:43:01 --- join: pengo (xtofu@p31-tnt2.mel.ihug.com.au) joined #osdev 11:43:03 no man pages for it under redhat 11:43:07 but the header files are there 11:43:12 maybe thats what you want 11:43:16 --- quit: gab (Read error: 110 (Connection timed out)) 11:43:18 --- join: ChillySpy (ChillySpy@ppp137.ppp3.cleveland.nccw.net) joined #osdev 11:43:22 --- join: dax (~you@u212-239-207-248.adsl.pi.be) joined #osdev 11:43:29 --- join: revanthn (revanthn@202.9.183.147) joined #osdev 11:43:58 rev: mp.h 11:44:59 where's that 11:45:05 in my linux /usr/include 11:45:07 --- quit: cookin ("Client Exiting") 11:45:14 its gnu multiple precision library 11:46:01 thats the one i remembered 11:47:12 sleep-:thanx 11:47:26 http://directory.google.com/Top/Science/Math/Number_Theory/Software/?il=1 11:47:30 --- quit: [doos] ("BitchX-1.0c19 -- just do it.") 11:48:18 also, I found Math::BigInt and stuff like that 11:48:24 looks like perl shit 11:49:14 perl isn't good with speed math 11:49:33 and neither or any interpreted languages 11:49:43 i never was fond of perl 11:49:48 it eats a lot of memory 11:49:49 * file frowns 11:49:57 I don't think my mom will drive me to the LUG meeting... *sigh* 11:50:04 man, why not? 11:50:13 doesnt she realize you are doing a good thing? 11:50:13 your mum sux0rz 11:50:14 dunn 11:50:15 er dunno 11:50:24 would she rather you hung out at the corner 7-11 and smoked weed? 11:50:27 geez 11:50:29 she should be glad that it gets you out of the house 11:50:40 i'm like: "I was thinking about going to the Linux User Group meeting at the University over in Moncton" and then she said "well how do you expect to get over there?" 11:50:43 and constructive 11:51:25 file: tell her since you cant go learn about advanced computer skills, you're gonna smoke crack in the alley behind the bowling alley instead 11:52:01 or maybe light shit on fire in the back yard :) 11:52:02 LOL 11:52:25 sleep-: hey, a billion poor indian people can't all be wrong 11:52:31 my parents would have LOVED it if I wanted to do constructive things like going to a LUG 11:52:40 does anyone use CVS-like software for windows? 11:52:50 chilly: CVS works on windows, im pretty sure 11:53:11 sleep - ive only seen it for working on NT... even though i havnt tried 11:53:45 ic - i used to have a CVS client for windows - and an MAC one as well 11:53:53 i found it a few years ago for a consulting job i did 11:54:00 * sleep- never got paid for that job :( 11:54:03 sleep - im talking about a Server, not client 11:54:35 ic, nm 11:54:35 :) 11:54:46 install linux ;) 11:54:55 or vmware+linux+cvs server :) 11:54:58 --- quit: do (Remote closed the connection) 11:55:00 --- join: do (~green@194.85.84.244) joined #osdev 11:55:04 yay vmware! 11:56:33 eh oh well I think I'll give up 11:59:11 why would you want to go to a LUG anyway.. they're all a bunch of geeks 11:59:20 :) 11:59:27 --- quit: revanthn () 11:59:35 there has to be a winCVS... CVS has been around for ever 11:59:54 there is 12:00:17 oh, you're talking about a server? :) 12:00:23 then i'm not that sure anymore 12:00:32 yeah, i had the same misunderstanding :) 12:00:42 why must the server be windows? 12:01:10 sleep - cause i dont have linux on this box... and this is my only machine 12:01:27 that can be fixed 12:01:40 plus, if i can understand how to use it on windows, it will make more sense when i install my new HD, and get linux 12:01:57 sleep - no it cant, i have 9 gigs and 3 or 4 are for mp3s, plus any windows stuff i have 12:02:50 ic - i meant you could replace windows with linux - im just biased, so im of no help - i cant figure out what windows would be used for where you couldnt replace it :) 12:03:14 sleep - my rents need windows, not me 12:04:10 ic - that makes sense 12:04:36 maybe you can trick them with openoffice+some windows-like gnome theme :) 12:05:15 sleep - no, they arnt that stupid, plus alot of other reasons, like alot of programs arnt available (or very similar) to their windows associates 12:05:18 like AIM 12:05:23 and winamp 12:05:49 ? 12:05:56 those are all available 12:06:04 but i should shut up 12:06:12 im not the right guy to help 12:06:38 right, but they arn't exactly like their equivalents on win32, and my sister would get frusterated 12:06:50 i just hav to wait to get my 80gig in and then i can dual boot ;) 12:07:01 sounds like you need a new ide drive and dual boot 12:08:27 thats what i got... yo 12:08:30 ;) 12:08:57 maybe even a FreeBSD or NetBSD partition, and maybe AtheOS for kicks too 12:11:22 ChillySpy: winamp and aim are almost exactly the same.. anyway just get Knoppix and boot from cd :) 12:12:25 Knoppix was a week of downloading on dialup well spent :) 12:12:39 pengo - Winamp 3? 12:12:51 penog - link? 12:12:55 pengo: its pointless 12:13:17 ChillySpy: nah more like winamp2 12:13:45 http://www.knopper.net/knoppix/ 12:14:12 http://www.knopper.net/knoppix/index-en.html 12:14:32 pengo - good i hate Winamp3... for right now, too slow and bulky, its a good system, just still in Beta 12:15:04 i was kinda weirded out to see mpeg movies playing in winamp 12:15:18 ChillySpy: check out gaim 12:15:29 ChillySpy: it's even more than an aim client 12:15:44 it does yahoo, msn, jabber, icq, aim.. 12:15:48 even irc 12:16:26 oink - i tend not to like those multi-proto systems 12:16:27 ChillySpy: xmms looks just like winamp (2.x) 12:16:55 there's a winamp 3 port for linux too btw :) 12:17:05 s/too// 12:17:13 shouldn't it be called linamp? 12:17:17 hehe 12:17:19 probably 12:17:27 but nullsoft owns the winamp tm so.. 12:17:44 the port is still in alpha stage but available for download 12:18:23 oink - Winamp 3 is powerful, just really damn slow... on windows that is 12:19:54 what kind of screws do I need to buy to install this motherboard? 12:19:55 knoppix has about 1.7 gigs (i think it was) of software on one (very compressed) cd that it runs off.. including xmms + gaim 12:20:25 pengo - i take it you like it alot 12:20:30 what version of Linux? 12:21:23 pengo - i just cant get my Modem to work with any version of windows... so it sux big balls 12:22:10 ChillySpy: hang on i'll open another vmware session and run it :) 12:22:29 with linux you mean? 12:23:20 yes 12:23:41 pengo: what is your host os for vmware/ 12:23:42 ? 12:24:03 i meant what distro 12:25:18 sleep-: running win2k atm.. vmware 3.1.1 1790 12:25:35 i can't get my modem working in linux either :/ 12:25:56 oh, i assumed linux as the base :) 12:26:11 i have a good isa modem and no isa slots :/ 12:26:39 <-- lame windoze user :( 12:27:01 yeah!!!! 12:28:42 ChillySpy: there's drivers around for hcf / hsf modems.. you should try them out.. didn't work for me tho 12:29:21 hmm... i dont know what your talking about 12:29:44 hcf/hsf = winmodem 12:29:51 oh i see 12:30:49 --- join: wossname (wossname@HSE-QuebecCity-ppp81919.qc.sympatico.ca) joined #osdev 12:40:52 oh my, this codebase is warped 12:47:02 ChillySpy: knoppix is linux 2.4.19 btw 12:52:33 --- quit: ChillySpy (Killed (NickServ (Nickname Enforcement))) 12:52:46 --- part: wossname left #osdev 12:54:09 --- join: ChillySpy (ChillySpy@ppp071.ppp2.cleveland.nccw.net) joined #osdev 12:54:30 --- join: darkito (darkito@80-25-82-102.uc.nombres.ttd.es) joined #osdev 12:54:54 hihi 12:55:01 hihi 12:55:04 sup? 12:55:21 hmm.. trying to vnc back to the host os was a silly idea 12:55:37 * darkito <- fever 12:56:07 :( 12:58:45 i been sick too :/ 12:59:00 --- join: jsr (www@du-14-232.ppp.telenordia.se) joined #osdev 13:01:59 --- quit: sleep- ("Leaving") 13:02:21 --- join: lynx (~root@pD9E630AD.dip.t-dialin.net) joined #osdev 13:13:44 --- join: corsairk (~Stealthy@pc-62-31-1-150-cr.blueyonder.co.uk) joined #osdev 13:16:17 --- quit: lynx ("Read error: 1.414213562 (Excessive square root of 2)") 13:16:27 --- join: gianluca (~root@ppp-198-135.28-151.libero.it) joined #osdev 13:17:36 hello 13:18:13 how can i use segment registers with gcc? 13:18:28 --- join: cr0 (cr0@pcp01137422pcs.mtmors01.mi.comcast.net) joined #osdev 13:21:49 not? 13:22:35 gianluca: you have to insert inline assembly 13:23:03 hi. 13:23:50 hi 13:24:29 well, i can use inline assembler 13:24:34 --- quit: ChillySpy () 13:24:39 but i was searching for something more general 13:24:50 like __attribute__'s at variable declarations 13:25:10 i've seen some effort, but people (Linus Torvalds included) said it's too hairy 13:25:26 just googled it 13:25:57 if you think you need inline assembly you really need higher-level optimizations =) 13:26:15 wli? 13:27:19 Ask yourself, "Why is inline assembly supposedly necessary? What is it supposed to accomplish?" 13:27:53 isn't it simply neccessary to do "cool stuff"? 13:29:09 wli,thats why i were searching for gcc extensions :) 13:30:09 IMHO any heavy use of inline assembly indicates either excessive use of privileged operations or something that should just be done in assembly to begin with. 13:30:30 IMHO you are right. 13:30:52 but i am not heavily using it :) 13:30:53 --- quit: corsairk8 (Read error: 110 (Connection timed out)) 13:30:57 but sometimes it seems they are needed 13:31:09 aha, looking for what other kernels were thinking 13:31:44 rm 13:31:45 hrm 13:32:51 --- join: Zenton (~vicente@8.Red-80-34-35.pooles.rima-tde.net) joined #osdev 13:33:14 --- quit: jsr ("Hi, I'm a quit message virus. Please replace your old line with this line and help me take over IRC.") 13:34:04 anyone knows a better way than parsing /proc/device to get a character device major [Linux] ? 13:34:33 devices* 13:34:40 --- join: jsr (www@du-14-232.ppp.telenordia.se) joined #osdev 13:34:53 why you need a better one? 13:35:38 --- nick: corsairk -> corsairk8 13:35:46 I prefer avoid parsing in C, when there're syscalls or sysctls for that. 13:36:31 awk and grep? 13:36:46 huh 13:36:50 you want me to system() ? 13:37:10 never 13:37:22 ok :) 13:37:58 there must be a sysctl for that.. 13:38:08 if you wait i check on "linux device drivers" 13:38:15 i remember it talked just about /proc/device 13:38:25 yeah 13:38:27 there's a proc file. who need syscall for it? 13:38:37 proc is done for dumping kenrel info 13:38:47 why should one using syscall? 13:39:02 okay, not a syscall but a sysctl.. 13:39:13 oh 13:39:14 >( 13:39:16 :) 13:39:53 i could add a sysctl entry from my kernel module, but only for that.. heh 13:39:58 but what do you need to do? 13:40:20 you need to get a character device major for your driver? 13:40:25 1/ create a char device from my module (using '0' so linux uses some random available one) 13:40:50 oh and then create the entry in /dev 13:40:51 got 13:40:56 then, i need to know which one he choosed so i can mknod() my /dev/ yup 13:41:21 well 13:41:27 dumping from the book 13:41:34 parsing /proc/devices seems to be the only-solution at this time.. 13:41:39 (this book sucks btw :) 13:42:00 " to load a driver using a dynamic major number, therefore, the invocation of insmod can be replaced by a simple script that after calling insmod reads /proc/devices in order to greate the special file(s). 13:42:18 it doesnt :) 13:42:29 yep 13:42:35 yeah but the thing is, i'm not doing that with a script.. 13:43:01 C, only C, (which does the same insmod, rmmod, lsmod, do), and mknod.. 13:43:14 moooooo 13:43:30 well, so happy parser writing :) 13:43:40 blah 13:44:01 well if you would like to do soemthing complex :) 13:44:16 parsing isn't complex 13:44:17 it's just, ugly 13:44:22 yes 13:44:27 i was going to think another thing 13:44:43 but i know it's a bit too stupid :) 13:44:55 but keep you away from parsing 13:45:08 what ? 13:45:14 you could add a /proc file entry that returns the major of your file 13:45:20 s/file/driver 13:45:20 UGH 13:45:26 it's simple 13:45:28 stupid yeah :) 13:45:34 but no parsing :) 13:45:38 ok driverfs one then 13:45:40 :) 13:45:58 is driverfs alive? 13:46:10 driverwhat ? 13:46:13 what's that ? :) 13:46:27 --- join: cookin (~jrydberg@d212-151-41-174.swipnet.se) joined #osdev 13:46:31 oh well linus started complaining about 13:46:38 never heard 13:46:40 * dax kicks linus 13:46:40 /proc pollution 13:46:44 ahah 13:46:46 :)) 13:47:13 but hrm 13:47:13 so they tried to create another fs that should be in /proc/driver i guess 13:47:30 it's just .. linux's sysctl interface sucks 13:47:39 why you need sysctl? 13:48:19 be careful that driverfs != devfs 13:48:24 /proc is only good for scripts and stuff like this, sysctl() has a better use in real programs.. 13:48:27 my dad called me a retard... 13:48:46 proc is for kernel info 13:48:55 sysctl is for controlling system :) 13:49:07 i mean when it was announced the new thing is that it was writable too 13:49:09 well, look @ FreeBSD sysctl :) 13:49:27 i know nothing about *bsd 13:49:50 sysctl, sysctlbyname, sysctlnametomib - get or set system information 13:50:02 that's FreeBSD. 13:50:37 linux has a sysctl mirror in /proc/sys 13:50:46 if only 'devices' was in /proc/sys.. 13:50:59 why should it be there? 13:51:56 btw, what kind module are you doing? 13:52:08 please don't reply "a char device driver" :) 13:52:21 some kind of Kernel-hosted IDS 13:52:24 http://kiss-ids.sf.net/ 13:52:51 ok, what's ids? :) 13:53:07 intrusion detection system 13:53:30 oh yes, i am on the page 13:53:38 i guess i've heard about it... hmmm 13:58:11 --- quit: Javanx ("I don't feel a thing, and i stopped remembering. The days are just like moments tourned to hours") 13:58:59 --- quit: stormbind (Remote closed the connection) 13:58:59 --- join: acme (acme@pD9544E30.dip.t-dialin.net) joined #osdev 14:02:38 --- join: sleep- (~ivan@adsl-66-72-96-115.dsl.chcgil.ameritech.net) joined #osdev 14:03:08 re 14:04:12 i hate when 'top' says that my processor is 106% idle!!! :) 14:04:16 haha 14:04:21 is that an SMP?> 14:04:22 g'night 14:04:25 yes 14:04:33 top is broken on that architecture then 14:04:40 --- quit: sleep- (Client Quit) 14:04:44 i noticed it :) 14:04:45 --- quit: lodda ("Client Exiting") 14:04:55 --- quit: Mathis ("User pushed the X - because it's Xtra, baby") 14:05:11 --- join: sleep- (~ivan@adsl-66-72-96-115.dsl.chcgil.ameritech.net) joined #osdev 14:05:41 anyway, top used to do that on linux SMP 14:05:43 is that solaris?. 14:05:53 no, linux 14:05:57 ic - what distr? 14:06:07 gentoo 1.4_rc1 14:06:27 weird - usually linux+top isnt broken 14:06:48 so my processor is really 106% idle!!! :D 14:07:29 well, you have 106% of a CPU's worth of idle time 14:07:50 that a dual I suppose? 14:07:57 yes 14:08:01 what mb? 14:08:15 hmm, i bought it for 40 euro :D 14:08:18 i have a couple tyan dual AMDs - they're kind of flakey 14:08:27 which annoyed me 14:08:41 it's a msi 14:08:46 ic - intel then?. 14:08:53 yes 14:09:20 pentium 3 600.it's better than my old via c3 :D 14:10:11 ic - i have 2 dual AMD 1600+ boards 14:10:24 they are pretty ok, except for the flakey power management under linux 14:10:34 hmmm 14:10:37 they wont reboot for some reason, or power off 14:10:48 acpi? 14:11:37 well i didn't paid too much attention to it, but the first kernel i compiled it turned off and rebooted with no problems 14:12:09 but the actual one don't. so in my case it's just a misconfiguration 14:12:24 --- quit: jsr ("Hi, I'm a quit message virus. Please replace your old line with this line and help me take over IRC.") 14:12:25 ic 14:12:30 i think it is acpi issues 14:12:43 i have to add that - acpi is new shit right? apm is the old school? 14:12:59 yes 14:13:02 to both 14:13:11 Isn't anyone working on any OS'es here anymore? 14:13:20 i do :) 14:13:22 cookin: on occasion 14:13:25 cookin: do you? 14:13:35 well, on occasion :) 14:13:42 ;) 14:13:46 how far along is your OS? 14:14:21 it's working 14:14:25 http://rtmk.sf.net/ 14:14:45 cool 14:15:05 what do you mean 'hurd *under* the microkernel'/ 14:15:05 ?> 14:15:31 wouldnt the microkernel be under hurd? 14:15:35 i was tired when I wrote that. 14:15:38 ic :) 14:16:01 cool - how much works now? 14:16:10 almost everything. 14:16:24 cool SMP 14:16:32 is there a file system? 14:16:48 rtmk is just a microkernel 14:16:48 did you do this all yourself? 14:16:56 but i've written a small test OS on top of it 14:16:59 ic 14:17:00 sleep-: yes. 14:17:15 i guess i dont differentiate - my little kernel is my os and vice versa 14:17:20 but i think im weird 14:17:38 buy yourself a good book :) 14:18:01 ? 14:18:04 what do you mean?> 14:18:04 sleep: what are you working on? 14:18:18 gian: simple kernel/os 14:18:36 any url? 14:18:43 right now it just boots, has threading and PCI scanning 14:18:46 some other simple features 14:19:23 gian: www.microkernel.com/ivanos-HEAD.tar.gz 14:19:26 its crap 14:19:36 but it will be super cool some day 14:19:43 when you started it? 14:19:47 hmm 14:19:55 i started the long terrible process of writing the boot loader 14:20:01 some time around 1998 14:20:12 i give up for months at a time 14:20:22 but then i get re-motivated and start working on weekends 14:20:26 so the progress is slow 14:20:43 i erased the first version of the code and did this one more recently 14:20:47 to get a fresh start 14:20:56 I think I'm starting to understand PCI. 14:21:08 wli: its fun, in a painful sort of way 14:23:13 gian: are you working on an os as well? 14:23:41 --- join: geist (~geist@tkgeisel.com) joined #osdev 14:23:47 sleep: 14:23:48 yes 14:23:49 re geist 14:24:01 sup 14:24:14 but i started some month ago 14:24:24 ic 14:24:33 what do you have so far?> 14:25:14 hmm boot, scheduler, kernel memory allocator, processes 14:25:17 these things 14:25:29 is C the only common compiled languages? 14:25:31 why but use the GRUB bootloader? 14:25:33 language 14:25:36 gian: cool 14:25:37 but i am going to add kernel threads and another scheduler 14:25:40 gian: you're fast 14:25:41 ;) 14:25:45 air: Java, C++, ... 14:25:45 i do use the GRUB :D 14:25:58 C++ == C 14:26:03 java isnt compiled 14:26:04 air: c++, fortran, pascal to name a few 14:26:10 air: isn't it? 14:26:11 --- quit: tirloni ("ircII EPIC4-1.0.1 -- Are we there yet?") 14:26:15 what the hell is javac then? 14:26:20 its bytecode with a vm 14:26:20 and what the hell is bytecode? 14:26:20 java isnt compiled... java is screwed =P 14:26:25 i would say fortran is second most common if you count C/C++ as a single language 14:26:33 sleep: drex.sf.net 14:26:46 gian: cool, thanks 14:26:59 --- quit: file () 14:27:04 everyone seems to like source forge :) 14:27:10 air: From my point of view, java is a compiled language, since you do not interpret the source code, as for example Perl 14:27:30 crush can be the only compiled language but u could write a java vm in crush and then run all java code 14:27:43 air: what defines 'common'? 14:27:44 perl, php, python and so on would also run 14:27:49 air: modula3, etc.? 14:27:50 sleep-: popular 14:27:53 ic 14:27:56 sleep-: actually used 14:28:06 is pascal or fortran used? 14:28:09 then I would say: C/C++, fortran, PASCAL 14:28:10 air: yes 14:28:15 fortran is very very popular 14:28:18 C has basically no runtime which makes it ideal 14:28:25 in certain industries, like physics for instance 14:28:30 well a professor of mine says that COBOL is the most common programming language of the world :p 14:28:37 which of course was one of it's main goals as a language 14:28:44 i dont know if cobol is compiled 14:28:50 if it is, its up there as being very popular 14:28:55 but cobol is dead 14:29:17 air: it is still used 14:29:22 yeah, people dont set out to write new code in cobol unless they have to for compatibility reasons 14:29:24 Well, it has array stuff, a calling convention, and 64-bit arithmetic type support, not a whole lot else. 14:29:32 air: COBOL is used alot still 14:29:34 but no one still writes code in cobol 14:29:39 air: lots of ppl do 14:29:42 air: in banks and shit 14:29:52 wtf did they have to train ppl to use it for the y2k thing 14:29:56 air: lots and lots of cobol still being written - believe it or not :) 14:30:11 oh, so HE's RIGHT! ugh! 14:30:38 geist: Do you have a good function for reading the pentium timestamp counter? 14:30:42 (or whatever it's called) 14:30:49 sure 14:30:52 cookin: rdtsc 14:30:53 rdtsc 14:30:59 i hate SSH - its always fscking hangs 14:31:01 heh 14:31:05 it puts the 64-bit value in eax and edx 14:31:11 which is the same as the C 64-bit return codes 14:31:19 geist: eax is low bits ? 14:31:21 so you just need an asm function that's basically 14:31:25 I forget, I think so 14:31:27 basically the stuff in crt1.o 14:31:30 rdtsc: 14:31:35 rdtsc 14:31:36 ret 14:31:41 geist: ah, ok. 14:32:29 geist: do u think ppl still use fortran and pascal? 14:32:48 yes, they do - i know you dont believe it, but they do 14:33:06 more than 1%? 14:35:06 1% of what? 14:35:12 lines written per day? :) 14:35:26 --- quit: cr0 (Read error: 104 (Connection reset by peer)) 14:35:30 i think you'd be suprised - c++ vs. perl 14:35:33 which is more? 14:35:41 probably perl 14:36:00 so maybe c++ vs. fortran ratio is not what you think 14:36:04 im not worried about perl 14:36:12 perl will still work in brix 14:36:25 --- join: n0vice (~n0vice@pcp02102499pcs.towson01.md.comcast.net) joined #osdev 14:36:49 because its not compiled? 14:36:55 yup 14:37:05 ic 14:37:16 no it wont 14:37:21 it will never run on brix 14:37:27 u just port the interpreter or vm and perl and java work 14:37:37 its *impossible* to replicate perl in another language 14:37:41 perl is so fucked 14:37:50 huh 14:37:51 perl is fucked 14:37:54 you could never port it - never re-write it in crush :) 14:37:56 *ever* 14:37:58 just like clapton is god 14:38:05 its so fucked - you cant even define perl :) 14:38:17 it goes wayyyy off the fuckedometer 14:38:18 let alone re-write the interpreter :) 14:38:24 but python, yeah 14:38:29 heh 14:38:30 you could port python 14:38:35 that codebase is clean 14:39:01 i embedded perl in a database product once 14:39:06 i had to look at the source code to perl 14:39:14 i needed therapy for years afterwards 14:39:19 post-traumatic stress 14:39:24 hey, anyone can know the reason of why my grub don't load objects builded with gcc 3.2? 14:39:35 one of any millions of reasons 14:39:56 more detail please 14:39:57 gcc >3.0 seems to break everything 14:40:15 geist: the timestamp counter, is that fixed to the systembus or what? 14:40:36 valgrind - thats something way cool 14:40:37 "selected item cannot fit in memory" 14:40:45 people should use that more often 14:40:45 but builded with 2.95.3 it works 14:41:01 gian: weird - is that with a custom linker script? 14:41:12 sleep yes 14:41:32 is it the real-mode boot loader that says that? 14:41:40 at link time? 14:41:46 how does a g4-800 compare to a pentium? 14:41:51 uh? 14:42:01 gian: at what point does that error happen? 14:42:06 when loading kernel 14:42:16 gian: your image is too large 14:42:17 kernel /boot/a.out 14:42:24 hmm 14:42:33 --- join: zwane_ (User-10371@modemcable217.53-202-24.mtl.mc.videotron.ca) joined #osdev 14:42:38 so why it works if builded on 2.95.3? 14:42:40 how big is your image? 14:42:47 it might generate smaller code 14:42:53 hmm 14:43:01 well wait 14:43:07 but maybe its just broken 14:43:28 sleep: is 100k! 14:43:30 :D 14:43:43 it's broken 14:43:47 yeah 14:43:51 its just broken 14:44:21 Does anyone know if the pentiums timestamp counter is fixed to the busspeed or the cpu-speed? 14:44:21 i am building my system with gcc3.2 and i am having so many problems 14:44:28 i am back using slackware 14:44:39 slackware? that still exists? 14:44:49 gentoo 1.4 has too many problems because of the gcc 3.2 14:44:49 i remember switching from SLS to slackware 14:44:55 slackware? sure :D 14:45:01 sls? 14:45:02 SLS? 14:45:04 SLS 14:45:09 is what slackware copied 14:45:11 and improved 14:45:27 i dunno who made it 14:45:34 well i started using linux from slackware 3.0 14:45:42 but at the time, the linux faq (there was only one faq) said SLS was the best 14:46:02 but i was a rebel and joing the slack revolution ;) 14:46:14 --- quit: corsairk8 (Read error: 104 (Connection reset by peer)) 14:46:30 cookin: it's the cpu cycle count 14:46:33 i downloaded all 25 or so of those floppies :) 14:46:37 geist: oh. 14:46:47 which also means that on one of those speedstep cpus in laptops, it changes speed 14:47:17 so it's probably not that usable as a general 14:47:24 'what time is it now' counter 14:47:27 brb 14:47:29 --- quit: sleep- ("Leaving") 14:47:31 --- quit: eks ("going home") 14:47:40 beos did this and time speed up or slow down if your laptop changed speed on you 14:47:52 geist: no, i'm just doing some benchmarks to see what kind of perfomance I get.. not anything exact or so. 14:47:53 --- join: sleep- (~ivan@adsl-66-72-96-115.dsl.chcgil.ameritech.net) joined #osdev 14:48:13 to see how many cycles a rpc roundtrip takes 14:49:15 right 14:49:19 it's great for that 14:49:27 so if you know the speed of the cpu, you're set 14:49:39 right now newos uses it to tell time, but I probably need to change that 14:49:51 --- join: EtherNet (~Baxter@200-41-33-67-tntteco1.dial-up.net.ar) joined #osdev 14:49:57 Hi EtherNet. 14:50:07 Robert hi man! 14:51:08 geist: so newos requires a pentium? 14:51:12 --- quit: asmodeus ("brb") 14:51:22 --- join: asmodeus (~www@h125n2fls33o867.telia.com) joined #osdev 14:51:38 air: yes 14:51:49 geist: ah, ok. it seems that a full RPC roundtrip with some code in the server (not just a dummy) takes around ~4800 cycles. that' pretty good, isn't it? 14:51:52 does sh4 have a timestamp counter? 14:52:10 air: no, I emulate it with a pair of timers 14:52:19 ah 14:52:37 the 'what time is it' code is entirely within the arch dependant layer, so each cpu can implement in the best way 14:52:40 why not emulate for 486? 14:52:46 because I dont have a 486 14:53:00 feel free to implement send me a patch 14:53:08 * do is away: sleeping ... g'night all 14:53:12 but anyway, I want to change that eventually 14:53:26 move towards a more simple timer-increments-current-time method 14:53:29 works fine 14:53:48 thats what i do 14:53:54 yeah 14:54:09 with the timestamp counter, it's pretty easy, since you can just read the tsc and do a little math on it 14:54:18 --- part: EtherNet left #osdev 14:54:18 --- quit: zwanem (Read error: 110 (Connection timed out)) 14:54:28 but it doesn't work right on speedstep cpus 14:56:01 so what I'll probably do is keep it around as a high precision timer 14:56:18 and base real time off of the timer incrementing the counter thing 14:56:27 since you rarely need nanosecond resolution 14:59:18 geist: does that mean when i run newos in vmware and it misses a few beats every so often i'll end up having a bit of a time-drift? 14:59:30 (like with kde's clock) 14:59:48 you betcha 14:59:56 :( 14:59:57 well no actually 15:00:03 it's fine in vmware 15:00:10 rdtsc just falls through to the host clock 15:00:16 it's bochs that it messes up in like crazy 15:00:21 heh 15:00:31 since they emulate the tsc by guessing how fast the cpu is running 15:01:21 another thing I'm not taking care of is making sure all the cpus have the same time stamp value 15:01:29 most of the time it does, but you should really sync them 15:01:49 and using rdtsc for system time also screws the chance of running on a system with different speed cpus 15:01:52 whoa 15:01:56 there was just a fire 15:01:58 downstairs 15:01:59 :) 15:02:05 i was freaked out 15:02:31 yay fire alarms 15:02:34 sleep: when you started using linux? 15:02:34 hehe 15:02:44 gian: no, but i ran outside so #$% fast 15:02:45 ;) 15:03:53 it was related to your talk about sls before! :) 15:04:09 brb 15:04:22 gian: oh 15:04:36 gian: some time in around 1993 or 1994 probably 15:04:38 --- join: darth (~darth@130.88.157.186) joined #osdev 15:04:39 i dont really remember 15:04:50 i think i better enter the real world for a while so i do the things i need to do to stop myself starving and/or running out of clean underwear 15:04:51 it was kernel v0.9.something 15:05:02 pengo: good idea 15:05:14 --- quit: bono ("leaving") 15:05:18 sleep cool :) 15:05:30 i have linux journal #1 - thats kinda cool :) 15:05:37 --- nick: pengo -> pengone 15:06:14 oh yes! :) 15:06:15 gian: but linux was pretty crappy back then - hard for me to use 15:06:21 yeah 15:06:23 i think that made me learn *more* it wouldnt install 15:06:26 on hardly anything 15:06:27 I started dicking with it around 1.0 15:06:29 so you had to hack 15:06:33 then stopped dicking with it around 2.0 15:06:36 geist: what contextswitching time does newos have? 15:06:41 i switched to FreeBSD for a while 15:06:42 haven't timed it 15:06:44 then switched back 15:06:57 the only things I've timed this far are process creation/teardown 15:07:11 geist: any ruff numbers for those? 15:07:28 around 4ms on my dual P3 500 15:07:41 and the best part is removing one of the cpus doesn't make a difference 15:07:52 which is very cool, adding smp stuff makes a difference 15:07:58 that's about par with freebsd 15:08:24 that's the time it takes to start 'true' (basically a null main()) and tear it back down again 15:08:34 cool 15:08:54 which is much faster than I would have thought 15:09:05 unix is totally optimized like crazy for process creation/teardown 15:09:12 and newos isn't particularly optimized for that 15:09:32 now, I'm not bringing up nearly as much libc as they are, so my guess is it'll get slower as I add to it 15:09:45 hmmm... 15:09:56 why would shared library size hurt? 15:10:13 initializer funcs 15:10:16 ic 15:10:22 gotta bring up the heap, link in more libs, etc 15:10:27 uc 15:10:27 ic 15:10:42 seems like some of that stuff could be done once, then cached 15:10:45 but for the most part the size doesn't matter as much, it's how you use it 15:10:50 sleep-: nope 15:10:54 rly? 15:10:58 geist: what about thread creation/teardown? 15:11:00 unless you kept a cached copy of the running process 15:11:05 thats what i mean 15:11:05 haven't timed that, should be fast 15:11:12 cache it just before calling main() 15:11:15 or whatever 15:11:21 and re-link if any libs change 15:11:29 cached dynamic loading 15:11:32 or something like that 15:11:39 yep, that's some are of research 15:11:41 area 15:11:50 seems easy - 15:11:53 or at least cached copies of pre-linked binaries 15:11:54 if you can swap a process out 15:11:59 you could cache it 15:12:04 not really, where do you store the cached copy? 15:12:10 in the file system 15:12:13 how? 15:12:15 next to the real file 15:12:17 i dunno 15:12:21 ld.so could do it 15:12:37 possibly, but the mmu context is the expensive part, and it's hard to cache that 15:12:43 im just talking out my arse - but why not? why compute the same thing over and over? 15:12:48 but you can at least cache pre-linked libs 15:12:48 ic 15:13:01 that's an area that lots of people are looking at 15:13:13 --- quit: zwane_ (Excess Flood) 15:13:14 one of the downsides of user space loaders is it's hard to do stuff like that 15:13:24 but some good parts are it's simple to implement, sandboxed 15:13:25 ic - maybe the dynamic linking isnt the expensive part - as you say, maybe its the local process memory setup 15:13:33 --- join: zwane_ (User-10371@modemcable217.53-202-24.mtl.mc.videotron.ca) joined #osdev 15:13:47 relocation can be relatively expensive 15:14:05 hmmm 15:14:12 im going to try to make my OS cache that work 15:14:19 if i ever get that far :) 15:14:39 anyway, it's an optimization that I can do later 15:14:54 I've thought about it a few times, but it'd probably be easier to move the loader into the kernel in that case 15:15:07 since it can get a better global view of all the procs in the system 15:15:14 http://www.onlamp.com/linux/2002/11/07/graphics/perf-s-100000-par.png 15:15:39 yep 15:15:49 and another interesting note would be how many cpus are in the system 15:16:03 stuff like tlb flush broadcasts and whatnot dont help 15:16:23 tlb stuff annoys me 15:16:25 beos had terrible performance as cpus were added to the system 15:16:25 mmm 15:16:33 geist: why? 15:16:41 tlb flush broadcasts 15:16:53 basically when they werent needed? 15:16:54 the vm started slowing down for lots of stuff by orders of magnitude 15:17:05 especially for region deletion 15:17:12 no, it was just inefficient 15:17:35 as each page was removed, a global tlb ici was sent, and the sender cpu *waited for all the others to finish* before moving on 15:17:51 and it was always a global tlb flush, not invlpg 15:17:59 Sounds like Linux 2.4 15:18:01 goddamit - im trying to look up parallel building of the linux kernel - instead i get parallel port shit :) 15:18:10 yep 15:18:16 geist: yuck 15:18:19 geist: gee. sounds really slow. 15:18:27 --- join: eks (~eks@h24-82-197-140.wp.shawcable.net) joined #osdev 15:18:33 anyway, to help with that I have a concept of grabbing the vm_translation_map object and releasing it 15:18:41 the vm_translation_map is basically equivalent of pmap 15:18:55 so when you grab the recursive lock and do operations, it caches up tlb transactions 15:19:04 then when you release it for the last time it does them all at once 15:19:57 how many operations do you normally do? 15:20:00 can't be that many 15:20:11 sure, if you for example remove a region that covers 4 pages 15:20:26 you have to either run invlpg 4 times, or do a global tlb flush 15:20:33 true. 15:20:36 --- quit: acme () 15:21:26 it's a shame that bochs doesn't provide tlb information. 15:21:33 (or statistics) 15:21:34 --- join: DRF (Daniel@host213-121-71-114.surfport24.v21.co.uk) joined #osdev 15:21:49 but my vm is architected such that it doesn't rely on the translation_map changes to take effect before the translation_map object is released 15:22:09 I think you can get it 15:22:23 I seem to remember hacking it one day to have a huge ass tlb cache 15:22:49 which would effectively mean that if you didn't flush the tlb correctly, it's guaranteed to have stale entries 15:23:33 hmm... 15:23:44 mosix is both wonderful and terrible 15:25:00 --- join: Kurt (~kmw@gc-nas-01-s107.cinergycom.net) joined #osdev 15:26:34 sleep: why? 15:26:38 well 15:26:45 its such a cool technology 15:26:55 but its hard to find good apps that make use of it 15:27:11 the migration overhead is a little too high 15:27:26 yes, it's hard to try it fork over a 10mbps... 15:27:40 hehe 15:27:49 well, i guess maybe gigabit would be different 15:28:18 i tried launching several kernel compilations on a 486 clustered with a pentium 3 over a 10mbps 15:28:24 but it still didn't forked!!! 15:28:32 ic 15:28:36 network was too slow? 15:28:52 in general thee migration overhead was too much 15:28:59 slow 15:29:24 so, should i use gigabit with a 486? :D 15:29:39 no, 100Mbps 15:29:45 not 10! 15:30:10 well i am planning to try this new dual thing with a pentium 2 233 over 100 15:30:14 100Mbps on a 486 mosix cluster would probably migrate a lot more 15:30:27 the cost calculation is ruined because the network is so slow 15:30:34 its not worth migrating the process 15:30:45 yep 15:31:16 did mosix implemented already network ram? 15:31:33 gian: ? its focused only on process migration, as far as I know 15:32:11 well if i remember well they're planned to implement it. 15:32:18 rly? interesting... 15:32:23 is this mosix or openmosix? 15:32:24 "bring processes to data not data to processes" 15:32:32 i guess mosix 15:32:36 ic 15:32:43 huzzah! 15:32:52 well talking about cluster make me feel bit worried 15:33:02 why? 15:33:14 because a professor is still waiting a document about cluster i have to write for an exam i did!!!! 15:33:15 :p 15:33:26 haha 15:33:28 sorry :P 15:33:35 well, now i got it 15:33:38 i completely forgot! 15:34:41 should be easy - there are so many topics to write about in that area 15:34:51 well i've already talked about this 15:34:56 i should write what i told him 15:35:07 and the problem is that i started talking about SO MUCH THINGS :D 15:35:16 hehe 15:35:35 i bringed to him even the "earth simulator" photo i did last summer :D 15:36:11 sleep: you tried amoeba? 15:36:20 gian: no 15:36:23 gian: but i wanted to 15:36:32 me too 15:36:37 gian: its from a long time ago - probably inspired the mosix ppl 15:36:41 but when i wanted to, i had not enough 386 :) 15:37:03 sleep: yes, i know. yet another tannenbaum thing 15:37:13 ameoba had very limited hardware support too 15:37:27 i guess a floppy, an hd and a ne2000 :) 15:37:44 hehe :) 15:37:50 x server is external 15:39:00 well, i go to sleep 15:39:05 see you 15:39:29 adios 15:39:29 oh. 15:39:34 what are the gigabit prices about? 15:39:41 ? 15:39:46 for cards or switches? 15:39:48 gigabit ethernet cards 15:39:58 $60/card 15:40:02 $100/port 15:40:06 for a switch 15:40:13 these are for copper 15:40:13 $60 card in US, means about $100/card here. ok :D 15:40:18 fiber is way way more 15:40:55 thanks 15:41:13 would be fun to have a gigabit ethernet for lan and a 56k modem for internet :D 15:41:42 i have two duals connected via gigabit 15:41:44 and SCI too 15:41:51 i want to make a mosix across the SCI 15:41:54 sleep: you tried mosix in it? 15:41:57 oh :) 15:41:58 not yet 15:42:03 i cant get the SCI to work yet 15:42:04 mosix? 15:42:10 openmosix i mean 15:42:17 --- join: cr0 (cr0@pcp01137422pcs.mtmors01.mi.comcast.net) joined #osdev 15:42:19 yeah, openmosix 15:42:19 sleep: it sounds cool! 15:42:22 yeah 15:42:30 the SCI would be real cool if it worked 15:42:38 sleep-: what is that? 15:42:47 SCI:? 15:42:53 openmosix 15:42:55 its 10Gbp/s network 15:43:03 openmosix is a kernel addition 15:43:10 p/ ? :) 15:43:11 to linux that allows processes to migrate over the network 15:43:13 to other nodes 15:43:15 sleep: what are SCI cards and network stuff prices? 15:43:18 per per seconds ? :) 15:43:26 gian: $1500/card 15:43:29 oh :) 15:43:35 i keep with my 10mbps :D 15:43:35 oink: hehe, sorry :) 15:43:35 10Gbps.. huh, nice 15:43:50 oink: yeah, if i could make the damn thinks work 15:43:59 s/thinks/things/ 15:44:10 sleep: what problem you get? 15:44:11 but where will this card take place ? 15:44:16 heh 15:44:24 I can't believe a CPU can handle 10Gbps of anything.. 15:44:39 oink: the throughput is totally limited by the bus, not the card 15:44:55 i still can't believe i am downloading at 5k/s :D 15:44:57 gian: the drivers are broken - i gave up a long time ago in order to focus on other stuff 15:45:32 but I should try again - they are cool 15:45:45 can you use the gigabit ethernet for mosix instead? 15:45:55 gian: yeah 15:46:13 well after spending $1500 for a card, you HAVE to get it WORKING :D 15:46:25 i got them free 15:46:29 oh 15:46:29 i would never buy those 15:46:44 the gigabit cards have to be cross-overed because i dont have a gigabit switch right now 15:46:58 but if i do that, the performance is pretty good 15:47:11 pretty good? 15:47:14 gian: yeah 15:47:18 way faster than 100Mbps 15:47:23 heh 15:48:03 but aren't cross overed connection slower? 15:48:14 (i am not too much on networking) 15:48:18 gian: i dunno why would they be? 15:48:24 what about the hardware ? 15:48:26 gian would think the latency would be lower 15:48:34 oink: ? 15:48:41 sleep: i don't know :) switch builder would want this :) 15:49:01 well, where will you plug this card in ? :) 15:49:05 gian: the switch probably introduces extra latency over just two nodes hard wired 15:49:09 hrm 15:49:12 oink: dual AMD 1600+ 15:49:17 tyan 15:49:19 well, yes 15:49:46 but they dont have 64/66 PCI 15:49:55 so the throughput suffers a bit 15:50:05 760MP chipset 15:50:19 i go 15:50:20 gnight 15:50:25 bye 15:50:29 --- quit: gianluca ("ircII EPIC4-1.1.7 -- Are we there yet?") 15:50:33 you'll never reach the gigabit 15:50:37 i know 15:50:43 not on those boards 15:50:44 even with a 100 comps network 15:50:55 what do you mean '100 comps'? 15:51:14 well, the traffic generated by a single machine depends on more than the NIC (harddrive, CPU..) 15:51:27 oink: yes, the bus primarily 15:51:35 that too 15:51:48 when i did web crawling, i couldnt pull more than 40Mbps 15:51:50 with one PC 15:52:04 and that was after a lot of tuningp 15:52:16 --- quit: cr0 ("having a life") 15:52:18 and multiple nics 15:52:23 why don't you sale those cards ? :) 15:52:30 and just buy 100Mbps one 15:52:32 onink: the SCI? I like me 15:52:37 s/me/em/ 15:52:38 you like yourself ? 15:52:39 oh 15:52:40 :) 15:52:42 ;) 15:52:54 well 15:52:58 for 1.2k bucks.. 15:53:08 oh, i need them for research 15:53:10 i don't have much money right now, i guess i'd have already sold them :) 15:53:14 and i dont pay for hardware anyway 15:53:18 ah 15:53:19 ic 15:53:31 sounds boring :) 15:53:34 boring?> 15:53:36 not at all :) 15:53:37 what are you into exactely ? 15:53:42 linux clustering 15:53:47 oh 15:53:50 linux/unix ? 15:53:53 i make a network boot server 15:53:54 or just linux ? 15:53:57 both 15:54:00 okay 15:54:01 we support solaris too 15:54:12 which do you prefer ? 15:54:14 linux 15:54:20 why? 15:54:21 * oink likes sparc netboots :) 15:54:22 i prefer my own distro 15:54:23 er 15:54:28 because i know it the best 15:54:30 sun stations netboot* 15:54:35 youve done your own distro? 15:54:37 i netboot everything 15:54:39 yeah 15:54:44 its still very early 15:54:49 havent released it yet 15:54:51 but soon 15:54:55 whats special about it ? 15:55:07 its designed for clustering 15:55:17 it has a light-weight version 15:55:17 sun's netboot can load a 1MB (or even more) kernel image, while most recent intel pxe can just load 200kB.. 15:55:20 for netboot 15:55:28 with options for mosix, clustered FS, etc. 15:55:40 is lynx online ? 15:55:45 lynx? 15:55:50 the person?> 15:55:57 22:15 -!- lynx [~root@pD9E630AD.dip.t-dialin.net] has quit ["Read error: 15:56:01 1.414213562 (Excessive square root of 2)"] 15:56:01 aye 15:56:02 i guess he's offline.. 15:56:07 heh 15:56:09 ic 15:56:12 he should stop logging in as root 15:56:16 and just fix his irix box 15:56:18 hehe - yeah, thats bad :) 15:56:36 ahh just i havent fully got used to bitchx and i cant see who quits and stuff yet :(ds~te i 15:56:46 --- quit: cookin ("Client Exiting") 15:56:51 i stil use ircII or whatever 15:57:12 /msg memoserv send lynx PHIX YOUR IRIX BOX AND STOP LOGGING YOURSELF AS ROOT 15:57:15 flood him :) 15:57:33 ;) 15:58:03 i should release the linux distro soon 15:58:13 god, so much to do with so little time :( 15:59:06 i was thinking of doing some clustering, or at least attempting to have a play but some oens nknicked me swithc :( 15:59:07 yeah, the usual complain 15:59:08 hehe 15:59:58 the world needs my distro 16:00:10 * sleep- gets back to work 16:00:20 not me. i've only got two boxes and i dont use the second one. 16:01:11 i think there are 15 1U pentiums here in this room 16:01:24 im not utilizing them very well 16:01:31 it makes me feel guilty 16:01:38 --- nick: oink -> brainless 16:01:42 i have 5 pentiums.. 4 aren't connected to anything 16:01:43 just run seti on em all :) 16:01:47 darth: heheh 16:02:17 --- nick: brainless -> deadlife 16:02:56 my next door neighbor got sent to jail last night 16:03:05 that must suck :) 16:03:07 heh, why ? 16:03:15 he was driving a car with fake plates 16:03:21 uhoh 16:03:25 and he had a prior similar offense 16:03:30 that he skipped court for 16:03:39 straight to jail - do not pass go 16:03:45 : 16:03:52 (where's my mouth gone ?) 16:03:55 i think he was stupid 16:03:56 :) 16:03:57 anyone knows softice btw ? :) 16:04:06 deadlife: i know *of* it 16:04:10 thats about it 16:04:22 bha :\ 16:04:31 and no, i dont know how to examine the stack :0 16:04:46 man, USA is going to war - again 16:04:51 really ? 16:04:52 with ? 16:04:54 Iraq ? 16:04:55 iraq 16:04:57 yeah 16:04:59 ay 16:05:00 pretty much certain now 16:05:07 but why ? 16:05:08 im embarassed to be an american some times 16:05:13 heh 16:05:16 because we want to steal the oil fields 16:05:23 pff 16:05:29 because bush is an oil guy 16:05:54 its so lame - so obvious that we just want the oil 16:06:12 they said that in order for Iraq to "pay back" the money it will cost us 16:06:14 'we' ? 16:06:16 to attack them 16:06:22 that we will take their oil fields 16:06:28 yeah, bush is so direct it pisses me off 16:06:29 and give them to american oil companies 16:06:33 just say they 16:06:37 'we' as in 'us americans' 16:06:43 no, it's just bush :) 16:06:49 and other politicians 16:06:53 i feel like im to blame too - im an american :( 16:07:03 yep 16:07:09 do you think its strange - that the *one* guy who voted against the war 16:07:10 I'm the same way, totally pissed off 16:07:12 died in a plane crash? 16:07:25 * sleep- thinks that is odd 16:07:33 huh 16:07:35 when/where ? 16:07:37 very odd indeed 16:07:47 a senator died the other day in a plane crash 16:07:52 deadlife: look up 'paul wellstone' in the news 16:08:05 deadlife: he was the only senator to vote against the war 16:08:12 sleep-: did this guy had some kind of 'veto right' ? 16:08:15 deadlife: he died in a plane crash right afterwards 16:08:17 rights 16:08:24 deadlife: no 16:08:31 deadlife: but he crossed the wrong guy :) 16:09:26 i dont think the US is a democracy anymore 16:09:30 pfrt 16:10:14 anyway, i should shut up - they might be watching :) 16:10:24 sleep-: well bush wasn't even democratically elected 16:10:24 lol 16:10:28 heh 16:10:31 pengone: exactly 16:10:35 pengone: no offense, but your nick sounds like pentagone :) 16:10:36 hehe 16:10:48 the whole thing would be hilarious if it wasnt so serious :) 16:10:48 deadlife: lol :) 16:10:55 --- nick: pengone -> pengo 16:11:12 funny how many connection current policy/policy makers have with oil dont you think ? 16:11:19 no plane's gonna crash into me, baby 16:11:44 i just did a bomb scare drill at my TA centre , it was quick good fun actualyl 16:11:47 darth: yeah, like the whole executive branch :) 16:11:57 TA? 16:12:13 some guy just left for a job in exon mobile or something the other day 16:12:26 and iraq is awful full of oilo 16:12:30 it has to be said 16:13:13 also 16:13:18 Hamid Karzai 16:13:23 oil consultant 16:13:24 ? 16:13:32 coincidence? 16:13:54 why did the US put *him* in charge of afghanistan? 16:14:43 btw, what do you think of binladem ? 16:14:53 i think any terrorist is an asshole 16:14:58 oh dear, mind you the country could do with some money, and america could do with all teh oil it can get with the economy the way it is 16:15:01 you really think he does exist ? 16:15:04 just like any war mongering president is an asshole 16:15:09 dead: he's probably a CIA agent :) 16:15:13 --- part: DRF left #osdev 16:15:35 ive heard a few things about the cia probaly beening fairly closely related to 9/11 16:15:39 the US certainly paid bin laden and the taliban a lot of money 16:15:44 we gave them billions 16:15:45 in cash 16:15:58 whatever 16:16:02 we did 16:16:06 to fight the russians 16:16:19 only cause we hated teh russans, adn wanted to get back at them for vietnam 16:16:23 back when binladen was a good guy 16:16:29 same with saddam hussein 16:16:34 why am i saying we, im british, duh 16:16:37 we gave him money to fight iran :) 16:16:42 darth:) 16:16:46 how silly it must seem to other people 16:16:52 US policies are so weird 16:16:53 anything is possible 16:16:56 nowadays 16:17:02 us is weird. 16:17:24 nah it was more to with teh cold war, but now the cia got nothing else to do its doing a prety good job of ucking up the word on its own 16:18:17 US has the whole world under their control (they own medias and everything, we're easily influenced) 16:18:57 so if they decide to make us think, binladen exists and it's a terrorist, well, they will .. 16:19:00 the us is pretty high on the media censorship scale 16:19:02 ic - i wonder what it must seem like for people in other countries - does *everyone* hate the US?> :) 16:19:26 sleep-: pretty much 16:19:41 sleep-: I don't hate [the] US, it's just a 2 big nation :) 16:19:49 ic 16:19:53 sleep-: but we still seem to watch your movies 16:20:00 compare france to united states 16:20:21 france doesn't do anything cause they know they're vulnerable 16:20:43 pengo: ic :0 16:20:44 thing is if he was in afganistan and the sas knew where he was i can garrantee hes dead now 16:20:48 it's just a little country in the west of europe 16:21:00 i think pre-9/11 people hated the US.. now they more just hate the US govt. 16:21:34 france , little country big ideas for neuclear deterents :( and smells of garlic 16:21:52 only joking :) 16:21:52 (btw, I don't think bush takes all decisions, he's influenced by its advisers which are influenced by others etc..)_ 16:22:03 darth: lol 16:22:03 bush is just a puppet 16:22:07 yeah 16:22:43 4/clear 16:22:46 doh 16:22:47 grr 16:22:50 most presidesnt/prime ministers in ¨democratic governments are 16:22:59 whats up geist ? 16:23:20 it's 01:22, I have stores closed and I still *THINK* daylight is here 16:23:26 01:22am 16:23:27 * darth was going to finish his above sentence [democratic countries are puppets] 16:23:48 deadlife wher aer you? 16:23:53 darth: France :) 16:23:56 --- nick: n0vice -> n0vice-dinner 16:24:19 i'm fscking disoriented 16:24:21 France is socialist 16:24:24 Socialism is evil 16:24:27 Therefore, France is evil 16:24:35 i get to bed at 5am, and wake up at 5pm huh 16:24:44 socialism is cool 16:24:53 australia is pretty socialist 16:24:55 politic sucks :) 16:25:04 politics* 16:25:11 socialism would be good ecept people natural greed 16:25:15 talking politics, even. 16:25:29 hey im apparently running for local government next may w 16:25:45 The fundamental ideals of socialism (the subjugation of the individual to society, punishing of success and risk-taking) are evil 16:25:46 only found out last week :( 16:25:47 hrm 16:25:49 politics sucks but the end of the day if you try to be apolitical you end up supporting something. 16:25:50 Therefore, socialism will always be evil 16:26:05 wow, what an interseting osdev discussion 16:26:11 Really. 16:26:16 * deadlife . o O ( .. i could have my own island.. my own gvmt.. i'd be the king of my own country.. heh, i love myself .. ) 16:26:34 --- quit: Kurt ("Connection reset by deer") 16:26:36 kurt: you dont neccessarly have to punish it, you jsut iminsh the rewards by sharing them with teh community at large rather then oneself 16:26:43 Besides, Kurt is a fanatic "capitalist" (using his own definition). He's quite insane. 16:26:54 * deadlife confirms Robert's sayings. 16:26:58 I remember on #ypn.. 16:27:00 socilsm - beuracracy would work, and where teh leaders changed every couple of years, stops rot setting in 16:27:19 deadlife: You've been there? Hmm.. Can't remember your nick. 16:27:24 Robert: i'm oink you idiot :) 16:27:29 Bah. 16:27:35 i like socialism but im in teh conservative party, i.e the one that broke all teh unions and privatised everything here in teh uk 16:28:02 You're evil. :) 16:28:05 whats #ypm? 16:28:13 Don't go there! :P 16:28:15 conspiracy.. conspiracy.. 16:28:22 Yes... 16:28:24 darth: DON'T GO THERE, PLEASE, DONT! 16:28:30 robert: im a half breed, half socialist hlf raging capatilst 16:28:34 darth: we will never see you again if you do so :) 16:28:36 Yay. 16:28:47 hmm tempting, ...... 16:28:51 Yes :)= 16:28:55 Try to resist! 16:28:58 darth: ever tried drugs ? 16:29:01 is it on openprojects ? 16:29:04 yes, 16:29:17 brb..... maybe.... 16:29:21 but it's just a whole gap of underaged kids :) 16:29:33 (sorry robbe) 16:30:04 doesnt seem to be any one tehre 16:30:09 huh 16:30:21 deadlife: /names #ypn 16:30:25 01:29 [OPN] -!- #ypn 17 YPN - www.youngprogrammers.net - Stop playing! 16:30:35 I did /topic :) 16:30:42 17 peoples.. 16:30:46 peeps 16:31:13 deadlife: That's from before I left, heh. They started to behave really bad. 16:31:31 ahah 16:31:31 --- join: darth_ (~darth@130.88.157.186) joined #osdev 16:31:35 so you left ? 16:31:36 AHAH 16:31:37 ello 16:31:39 :')) 16:31:43 hmmm 16:32:00 im me and yet........ 16:32:04 im me..... 16:32:10 confusing as hell 16:32:13 you're in yourself ? woh. 16:32:28 duh 16:32:32 comes from being very very well endowed.... 16:32:33 i still think it's daylight outside 16:32:39 i should open the stores a bit.. 16:32:51 am i in ypm? 16:33:00 darth: /sv 16:33:04 deadlife: Yes... 16:33:04 try this ? :) 16:33:19 Robert: but i'm lazy:) 16:33:29 i'll have to walk on three meters 16:33:38 --- quit: darth_ (Client Quit) 16:33:39 --- quit: darth ("BitchX-1.0c19 -- just do it.") 16:33:41 that's too much for a poor little boy like me. 16:33:44 uhoh 16:33:45 bitchx 16:33:55 ay 16:34:45 crunches time! 16:34:47 bbl 16:35:05 deadlife: Try what? 16:35:08 Hm 16:35:27 --- join: quantis (~darth@130.88.157.186) joined #osdev 16:35:47 ello again im in ypn at last i was typing ypm :( 16:35:57 Heh. 16:36:08 --- nick: gab_ -> gab 16:36:09 young programmers metwork!@# 16:36:13 Paste a /names from within. 16:36:16 Robert: yes, I was talking to quantis 16:36:26 cya :) 16:36:29 #ypn pengo Shadowie SilentStrike bpt Neu[Mann] tastyburrito Mookeen kage-chan_ HeavyJoost Smerdyakov devusb svara madsie kewl JadraX Rico DonneX geqo 16:36:31 (and hello gab) 16:36:38 maybe it was a metrowerks usergroup i didnt know.... 16:36:45 --- mode: ChanServ set +o Robert 16:37:25 --- join: devusb (~devusb@12.34.76.200) joined #osdev 16:37:32 * Robert invites some pepole from #ypn to here. 16:37:38 Robert: yes? 16:37:38 :) 16:37:43 (In case someone wonders why I opped myself) 16:37:47 --- mode: Robert set -o Robert 16:37:50 Hi devusb 16:37:57 this is one of my last two channels I can join ;) 16:38:04 Just wanted to make you leave your cave. 16:38:10 Hehe. 16:38:14 but what a nice cave it is 16:38:20 better wall paper then in here 16:38:24 beers better as well :) 16:38:57 devusb: You're an OS developer, aren't you? :) 16:39:06 Robert: define that :) 16:39:45 :D 16:39:57 Hehe. 16:40:05 If HeavyJoost is, then you are too :P 16:40:17 lolz 16:40:21 I don't even code, am I still? :P 16:40:32 OS Developer, n. one who develeps OSs and makes them more developed. 16:40:35 devusb: Sure...ehmm...yep. 16:40:40 Robert: yayee! 16:40:43 [lol 0x100] 16:40:45 :P 16:41:09 excitable fellow 16:41:16 hehe 16:41:18 its like a little tea party where you invite teh neighbours over 16:41:33 Heh. 16:41:36 Sure. 16:41:56 mov si,señior 16:41:59 ;P 16:42:10 heh 16:42:31 Heh. 16:42:31 --- join: beefcommando (~beefcomma@spkdsl-116-101.cet.com) joined #osdev 16:42:36 Hi there. 16:42:45 hallo beef :P 16:42:47 gn all. 16:42:55 weltrusten :D 16:43:05 hello 16:44:49 Night Zenton. 16:45:00 any one vever played with teh flux oskit? 16:48:12 --- join: tirloni (~gpt@1-178.mganm700-1.telepar.net.br) joined #osdev 16:49:00 No. 16:49:11 any one ever heard of it ? 16:49:46 why don't you write your own ``kit'' ? :) 16:49:50 back btw :) 16:50:19 kind of want to, liek as a libary function as part of compiler 16:50:33 but im not sure quite how to implment it yet 16:50:49 going in bed w/ laptop.. 2 tired brb :) 16:50:51 heh 16:50:53 know what ? 16:50:57 I love softice 16:51:05 gto two ideas, but im going to wait and see how i implment the rest of it before i decided 16:51:19 i can debug windows kernel from linux in my bed w/ VNC & Softice remote thingie :) 16:51:26 deadlife: :) 16:51:31 --- join: Javanx (~javanx@host12-18.pool21345.interbusiness.it) joined #osdev 16:51:32 ¨_ lazy bugger 16:51:34 Robert: saw my screenshot ? :p 16:51:39 deadlife: Er, no. 16:51:42 http://void.phear.org/misc/ndis.png 16:51:44 deadlife: With what on it? 16:51:53 gnome, and softice :) 16:51:58 --- quit: Chille ("nite all") 16:52:04 debugging ndis driver 16:52:47 How..nice. 16:53:02 yes, very nice :) 16:53:07 a week to configure it for this 16:53:12 Heh. 16:53:19 had to plug a 3c509 in it. 16:53:20 * Robert thinks oink is wasting time :P 16:53:44 Robert: no.. no.. i'm reversing a driver so i can then, use my 802.11g wireless card w/ my laptop :) 16:53:53 that's not a waste of time 16:54:33 i'll be able to IRC FROM TOILETS!@$#!@ 16:54:34 Reversing drivers is always a waste of time :) 16:54:40 Heh. 16:54:52 How nice. 16:54:53 :) 16:54:56 very nice :) 16:54:57 deadlife: I can already do that, it's called a long ethernet cable ;) 16:55:14 devusb: heh.. i'd need a 50 meters long cable :) 16:55:20 my toilets are downstairs 16:55:33 so? what's your point? ;0) 16:55:39 ;) even 16:55:47 i'm not gonna pull cat5 to my toilets!@$#!@ 16:56:03 and it costs a lot here 16:56:11 so i better reverse this shit :) 16:56:22 hehe 16:56:29 brb, seeyou in bed :) 17:00:19 It's 2am here, school tomorrow. I'll go to bed soon. 17:00:26 back 17:00:27 hehe 17:00:28 night Robert 17:00:30 school.. :) 17:00:36 deadlife: ;) 17:00:50 i have exams in the end of the year 17:01:35 and i didn't even start working on it.. 17:02:03 --- nick: n0vice-dinner -> n0vice 17:02:23 deadlife: Nice. 17:02:36 hrm 17:02:37 i mean 17:02:40 the school year 17:05:58 That is, in June or something? 17:06:05 yup 17:06:10 we call it baccaleaureat 17:06:11 er 17:06:15 baccalaureat 17:06:19 don't even know how to spell it... 17:06:23 some latin word :) 17:06:57 It sounds like a frenchie word. 17:07:07 it's not :) 17:07:09 You like to say ugly words like that. 17:07:12 Bah. Lies. 17:07:13 bacharelado or something :) 17:07:18 AFAIK - english use it. 17:07:27 They suck, too :P 17:07:36 * Robert goes to brush his teeth 17:07:41 graduation :) 17:07:49 baccalaureate 17:07:49 n 1: a farewell sermon to a graduating class at their 17:07:49 commencement ceremonies 17:07:53 2: an academic degree conferred on someone who has successfully 17:07:53 completed undergraduate studies [syn: {bachelor's degree}] 17:08:02 just a bit different from the french one.. 17:08:26 i think the French one comes earlier 17:08:48 i though it was like a high school qulification 17:09:01 uk universities take them as equivilent to alevels 17:09:35 quantis: comes just before university/college/high school, here, in france 17:10:09 yeah thats what i thought 17:10:16 alevels come before uni here 17:10:20 :) 17:10:25 heh 17:10:27 and the uni accept them as roughlyu equivilent 17:10:28 Robert: know what ? :) 17:10:32 --- nick: n0vice -> n0vice-gone 17:10:40 :) 17:12:26 what do ppl think of l4? 17:13:05 l4? 17:13:09 what's that ? 17:13:18 Robert: you're gone ? :) 17:13:41 but i am here 17:13:46 but you're trans 17:14:03 :)) 17:14:04 Nah 17:14:09 Robert: !! 17:14:13 Tell me 17:14:17 Robert: guess what 17:14:22 Tell me! 17:14:29 Robert: i'll turn 17 in a few hours 17:14:32 >:) 17:14:34 in two days. 17:14:40 deadife : its a micro kernel, jsut a good one apparently 17:14:59 some one was creaming the pants over it earlier today so id though id go an hvae a proper look at it 17:15:13 happy birthday to tyou... 17:15:20 ...stick you head down the loo... :)) 17:15:21 oh 17:15:24 a microkernel 17:15:26 heh :) 17:15:31 hznakxt! 17:15:32 dunno much about it yet 17:15:35 er 17:15:36 thanks! 17:15:41 deadlife: Nice :D 17:15:49 deadlife: You're soooo old :P 17:15:53 Robert: yes dear :( 17:15:56 * Robert is a little 16 year old kiddie 17:16:15 my apologies. 17:16:17 eh 17:16:31 * deadlife would like to best 16, for the rest of his life :\ 17:16:35 be* 17:16:42 (where does this 'st' comes from?) 17:16:53 bah 17:16:56 got work to do 17:16:57 bbl :) 17:17:01 I should write a microkernel 17:17:12 I was thinking it might be kind of fun, but do a super pure one 17:17:15 Byebye oinkie 17:17:19 Congratulations :) 17:17:27 ie, vm outside the kernel, thread creation/teardown outside of the kernel 17:17:36 * Robert wouldn't mind staying 16 either. 17:20:28 --- quit: zwane_ (Excess Flood) 17:20:39 geist: is newos mono? 17:20:50 you betcha 17:20:52 --- join: zwane_ (User-10371@modemcable217.53-202-24.mtl.mc.videotron.ca) joined #osdev 17:22:43 geist: ive played with that idea, but i couldnt think of how to interface teh hardware with the vm :( 17:23:00 * quantis think he does to much thinking and not enough coding 17:23:16 * quantis deciedes hes going to do some coding right now 17:23:23 I've seen it done, it's interesting 17:23:46 but in general I think it's taking it too far (putting the process/thread management and vm code outside of the kernel) 17:23:47 i like the way the virtual processor is implemnted in amiga de 17:24:11 gives you a lot more flexiability, and apparently you can reduce the performance hit qutie a bit 17:24:26 what's amiga de ? 17:24:28 an HLE ? 17:25:07 [while this stands for, high level emulator] 17:25:26 --- join: malenfant (~malenfant@142.179.56.190) joined #osdev 17:25:28 high level environment? kind of, its a machine abstraction, thats ultra portable 17:25:32 ahh i was close 17:25:40 no it has a virtual processor 17:25:51 im trying to fidn the ibm papers about it hand on 17:25:53 hrm, is it software ? 17:26:49 an HLE generally translates instructions from an ISA to another and catches interruptions (and simulate a desired OS) 17:26:51 it's usually fast 17:27:03 (cf: PSX/N64 emulators) 17:27:13 nah this is near native performance 17:27:27 argh.. what can i use to download a realplayer stream? 17:27:35 heres one http://www-106.ibm.com/developerworks/linux/library/l-amiga3/index.html?dwzone=linux 17:27:44 pengo: hrm, vcr something 17:28:16 another not so good one http://www-106.ibm.com/developerworks/library/amiga2/ 17:28:38 deadlife: found it. streambox vcr.. thanks 17:28:52 holy shit 17:28:56 quantis: sounds cool 17:28:57 and a random one with a bit of background on the whole thing 17:29:03 http://www-106.ibm.com/developerworks/library/amiga.html 17:29:12 british as well :) 17:30:05 seems to be one of the few things were any good at tehse days, innovate coding stuff (im half irish so i dont include myself in the innovate coders bit, barely a coder it would seem) 17:30:32 will our next generation server run amiga ? :) 17:30:35 hmm :) 17:30:51 the whole amiga de system is based on a system called tao 17:30:58 no, i guess they target the end-user/developper atm. 17:31:05 heh 17:31:09 pretty much tao with a few support libarys from teh looks of it 17:31:15 what about the source availability ? 17:31:21 * deadlife reads ``SDK'' 17:31:29 deadlife, microsoft are going to ship it wih pocket pc now apparently 17:31:40 DOH 17:31:43 dunno havent bought it myself 17:32:14 might do if i get that new amiga board, think its part of amigaos4, but thats probably just hte player, youll have to getteh assembler compilers seperatly 17:32:48 so the whole stuff isn't free.. 17:32:58 you have to pay for everything ? heh.. 17:33:10 even the SDK, doh 17:33:53 Java :( 17:33:56 yeah $99 i think 17:33:57 * deadlife kicks amiga in nuts 17:34:03 players $19.99 17:34:11 hey they need teh moeny 17:34:24 thever allready sodl a few thousand copies 17:34:26 yeah... but JABA! 17:34:26 uh 17:34:29 can't even spell it right 17:34:31 wonder if you can pirate it 17:34:36 it scares me so much 17:34:45 ? 17:34:47 what 17:34:50 java 17:35:05 the new amiga is all around java 17:35:35 no it isnt 17:35:36 Amiga Everywhere! 17:35:37 Amiga based applications can run unchanged on x86, PowerPC, M Core, ARM, StrongARM, MIPS R3000, R4000, R5000, SH 3, SH4, and NEC V850 processors. The Amiga OS can run hosted on Linux, Embedded Linux, Windows 95, 98, 2000, NT, CE and QNX4. 17:35:43 how do you think they made that possible... 17:35:52 big difference in implmentation 17:35:53 Java 17:35:54 The new Amiga boasts one of the fastest Java Virtual Machines available. Because of Amiga\x{2019}s unique translation mechanism and architecture, Java Byte Code executes at near native speeds. 17:35:58 here is the answer.. 17:36:10 we've all heard that one before 17:36:16 goto www.tao.co.uk 17:36:28 wli: hey 17:36:38 wli: tell me, you know what /proc/devices is ? :) 17:36:40 quantis: kay 17:37:04 quantis: and ? :) 17:37:13 deadlife: yes 17:37:30 the technology started using there own virtual processor technology years ago (think it was developed on amiga) then when java blew they found they could make money selling fast embedded java machines, itthe same technology only difference isthe virtual processor stuff can run a lot faster then java bytecodes 17:38:02 wli: do you know any other way to get the major of a char device ? :) 17:38:08 other than parsing that /proc entry.. 17:38:14 sysctl or .. 17:38:20 stat 17:38:28 no, i don't have any /dev/ entry 17:38:38 thats what the intent system is amiga de technology applied to java 17:38:46 --- quit: tirloni ("ircII EPIC4-1.0.1 -- Are we there yet?") 17:39:07 quantis: ohh.. kay 17:39:23 well, bbl 17:39:26 phone :) 17:40:30 Then what way do you have of knowing there is a device? 17:40:35 actually amiga de technology is jsut whatever amiga license from tao, and have altered slightly to make it more amgiga ish 17:41:18 (wli: what I do is, I load the module, the module registers the device using '0' as major (so the kernel chooses the major), the major appears in /proc/device and then, i need it in user-land to mknod the /dev/entry) 17:41:53 bbl 17:42:04 mind you it looks liek he java has to be target to the intent/amiga de platform rather then run in its own jvm, that makes sense hence the near native speeds 17:43:51 geist: have you ever worked with teh flux oskit? 17:44:40 deadlife: Sounds like you need a /proc/ entry. 17:45:46 quantis: nope 17:48:55 any views on it ? 17:49:25 looks like it could add lots of needless bulk on the system, on the otehr hand you can get a very usable system pretty quickly 17:51:32 better to design things your own way 17:53:04 suppose 17:53:46 just lazy, want to design things my ownway but its jsut asll teh device drivers it seems like the same thing over and over again 17:55:20 brb, just going to sort out my ports dirctory once and for all hopefully 17:55:28 --- quit: quantis ("BitchX-1.0c19 -- just do it.") 17:56:39 --- quit: malenfant ("Client Exiting") 17:58:26 --- quit: Zenton (Remote closed the connection) 18:00:30 --- join: file (lan@mctn1-2364.nb.aliant.net) joined #osdev 18:00:35 * file stares at his new box 18:00:40 made me delete all my stuff... 18:01:46 we're sorry, file. we thought you'd outgrown it 18:01:55 woot! 18:02:14 i took my "free coke" cap down and got a free coke and won another free coke 18:02:20 neat air 18:02:31 cool air :) 18:02:36 im on a winning streak, time to go to vegas 18:02:43 nah 18:03:53 why not? 18:03:57 --- join: tirloni (~gpt@1-178.mganm700-1.telepar.net.br) joined #osdev 18:04:26 that's where you lose luck 18:06:58 heh 18:07:52 omg, mrs fields has job openings. i wonder if they have any cookie taste tester openings (my dream job) :) 18:07:52 if this don't work... I will kill this machine 18:09:12 and it didn't work 18:11:02 * file runs a surface scan on his hardrive 18:15:25 air: thats the best job idea ive heard so far 18:15:46 * pengo thinks air wouldn't think that was a dream job after having it for a year 18:16:23 --- quit: Divine (Read error: 60 (Operation timed out)) 18:19:00 i hate real :/ 18:26:04 --- quit: eirikn (Read error: 104 (Connection reset by peer)) 18:26:08 --- join: eirikn (~eirik@a217-118-47-173.bluecom.no) joined #osdev 18:28:42 sleep-: do u know if mrs. fields cookies taste good? 18:29:16 the first one is great, the second one ok, third+ makes you ill 18:29:27 hmmm 18:30:33 pengo: i love cookies 18:31:18 and when i eat several dozen in a sitting it gives me the runs so i dont gain weight 18:33:30 --- join: zhware (~stoyan@lemon.silveregg.co.jp) joined #osdev 18:35:26 --- quit: huntrckr_zzzz (Read error: 110 (Connection timed out)) 18:41:44 --- quit: tirloni ("ircII EPIC4-1.0.1 -- Are we there yet?") 18:41:45 that's pretty goddamn disgusting 18:41:59 --- quit: n0vice-gone ("Client Exiting") 18:43:12 "so, what do you do for a living?" "i eat cookies and shit a lot" 18:44:26 heh 18:44:30 "are you cookie monster?" "yep, catch me ;)" 18:45:32 ~ c is for crapping, that's good enough for me ~ 18:48:15 --- quit: file (Killed (NickServ (Ghost: file[2]!lan@mctn1-2013.nb.aliant.net))) 18:51:14 --- quit: Javanx ("I don't feel a thing, and i stopped remembering. The days are just like moments tourned to hours") 19:11:30 --- join: zwanem (User-10371@modemcable217.53-202-24.mtl.mc.videotron.ca) joined #osdev 19:16:54 back for a min :) 19:17:03 wli: well, a proc entry only for that? 19:17:31 that was what someone here suggested me.. but i prefer parsing /proc/devices then 19:17:54 hrm, 04:15.. 19:17:57 time to sleep 19:18:04 * geist shudders at the thought of /proc 19:18:04 good night everyone 19:18:17 nite 19:18:42 (BSD sysctl was the way to go) 19:19:07 (linus was probably drunk when he had the idea to grow the /proc capabilities) 19:19:14 yep 19:19:15 s/the// heh 19:19:43 gutten tag! 19:19:46 oops 19:19:51 that doesn't mean good night 19:19:53 whatever 19:19:56 bye 19:19:57 :) 19:20:02 --- quit: zwane_ (Read error: 60 (Operation timed out)) 19:24:34 --- part: devusb left #osdev 19:24:51 /proc? 19:24:59 deadlife: whats a better option? 19:25:46 he's out 19:26:06 i actually find /proc very handy 19:28:14 --- quit: trans (Read error: 110 (Connection timed out)) 19:42:04 --- quit: sleep- ("...bbl") 20:07:06 --- join: Divine (~john@12-246-112-182.client.attbi.com) joined #osdev 20:18:39 --- quit: I440r ("Reality Strikes Again!") 20:24:03 --- nick: eks -> eks[nap] 20:37:53 --- join: mrd (~skdjfjksj@pcp201472pcs.uprtnw01.nj.comcast.net) joined #osdev 20:45:47 --- join: SHYT (y4ru12h8@ip64-75-150-64.dial.aloha.net) joined #osdev 20:45:52 --- part: SHYT left #osdev 20:50:53 --- quit: zhware ("Client Exiting") 20:51:47 --- join: trans (~trans@fatwire-201-109.uniserve.ca) joined #osdev 21:18:38 you don't check your email for a couple of weeks and BAM! 271 new spam 21:19:28 haha 21:20:37 u should install rblcheck, my badmailfrom and badmailto filters and spam assassin 21:21:59 only 3 spams per day 21:22:41 but spam assassin throws 2.9 of them away 21:23:21 yeah i should 21:23:58 i've already got my email partially filtered.. changed email addresses and the old one is 99% spam now 21:24:04 it doesnt catch those damn viruses tho 21:25:02 and if i was to add .*\.kr to badmailfrom i would only get 1 spam a day 21:25:33 where the hell is .kr ? 21:25:39 korea 21:26:16 it seems wrong to wipe out whole countries 21:26:33 thats why i havent banned it 21:26:46 nods :) 21:26:58 and some day a korean will be thankful :) 21:27:08 do north and south korea share the one domain? 21:27:08 a while back i went crazy and banned the class B and C for everyone that spammed me 21:27:23 probably 21:32:27 --- quit: Lathiat (Read error: 110 (Connection timed out)) 21:36:51 --- quit: trans (Read error: 110 (Connection timed out)) 21:40:39 wow.. my friend who unexpectantly dropped in on me from another city actually sent me an email 4 days beforehand 21:48:03 hi everyone! 21:48:08 ASL? 21:50:08 hehEHe U R LAM3R!!!!!! i m l337 l1nux us3R 21:50:18 --- quit: mrd ("http://mrd.knows.it") 21:53:50 oops 21:54:18 i think i faux pas'd 21:54:35 yep 21:56:14 heh 21:57:02 heh 21:59:08 * wli detects a "YHBT" coming on =) 21:59:17 okay, back to dcdev 21:59:34 * geist ponders "YHBT" and it's meaning 21:59:59 it's another UAMF 22:00:24 YHBT == You Have Been Trolled (c.f. VERA) 22:00:55 gotcha 22:02:05 do u guys remember phuxor? 22:03:43 heh, no 22:04:14 At IBM the PBC and the IDP are more of an AR than the ECCC, but LVG used to PDT the AVP's hence PTX being EOL'd. 22:04:25 he IM'd a few days ago and did that ASL crap, freaked me out 22:04:39 HTIFILTHH 22:04:50 hehehehehe 22:05:13 --- quit: beefcommando ("Client Exiting") 22:06:19 * wli ftso PCI 22:07:47 * geist ftso sh-4 cache 22:08:09 on these boxen, port I/O space is implemented as a group of 256KB memory regions, each containing 64KB of port I/O space per-node... something is refusing to use anything but the first 64K of the 2MB available. 22:08:54 heh 22:09:07 * geist ftso I/O space 22:09:19 (So I can't see 90% of my devices) 22:14:19 ftso 90% of your devices 22:14:26 hehehe 22:14:36 wli: who does the 'magic' forwarding? 22:15:02 zwanem: Someone's calling the non-segment-aware bus scanning calls, looks like some of the "fixup" code. 22:15:25 zwanem: I'll rip it a new arse momentarily after the scsi scanning failure dies. 22:16:31 as a 'check out how much linux sucks' example 22:16:32 http://linux.bkbits.net:8080/linux-2.5/anno/arch/i386/kernel/suspend.c@1.9?nav=index.html|src/.|src/arch|src/arch/i386|src/arch/i386/kernel 22:16:49 see the bottom of do_magic() 22:16:56 see the loop that does the copy? 22:17:12 geist: that's Pavel Machek's code -- nobody can stand his crap. 22:17:25 notice the __flush_tlb() at the inside of the loop *every time it copies a single byte* 22:17:25 wli: a bit of noodles and fruit juice and i'm awake again ;) 22:17:56 obviously it was fucking up before, and he stuck the tlb flush in it and it magically started working 22:18:00 morning 22:18:05 I betcha if you remove it it starts screwing up 22:18:31 so instead of figuring out the problem, he just stuck the *global tlb flush* code in and it started working 22:18:34 geist: pavelcode is known to be broken 22:18:47 geist: swsusp is royally fucked 22:18:48 geist: it doesn't work on 90+% of extant machines to begin with 22:19:09 (and those where it appears to work it only works some of the time) 22:19:20 heh 22:19:32 anyway, someone from another channel posted that turd of code earlier today 22:19:36 thought I'd share it with you 22:20:28 geist: its as diseased as drivers/ ;) 22:26:33 gah 22:29:23 giest: If you think pavelcode is funny you should check out Richard Gooch and Rohit Seth. 22:29:59 linux is cool if you don't look too close 22:30:04 yeah 22:30:17 well, they all have a dark side 22:30:34 nah, I'm just talking about crappy code, not darkness 22:30:48 well that's kind of what I mean 22:30:59 believe me, there was some terrible code in the beos kernel 22:31:05 though all in all it was very clearn 22:31:08 er clean even 22:31:22 Gooch is beyond crap, i've never seen such intentional shittiness 22:31:24 zwanem: I found some instances of non-segment-aware scanning calls in NUMA PCI code. 22:31:43 wli: probably dragged in from vanilla-i386 by someone 22:31:51 wait a minute 22:31:55 zwanem: mtrr.c is a horror ... viro's exposure of the hwgraph and directory mangling crap was horrific. 22:31:57 what are you guys calling segments? 22:32:08 segments/domains "roots" 22:32:20 ah 22:33:07 I need to get a new type 6. 22:33:07 that one is losing keys? 22:33:16 No, it's sort of wearing out. 22:33:44 my favourite keyboard (cherry) had lost 3 keys and had a sticky backspace before i gave up on it 22:35:28 ok sleep for real now 22:40:21 goddamn I wish I could use visual studio to debug cygwin apps 22:40:25 but that just dont work 22:40:34 * geist ftso gdb 22:40:38 my fav keyboard was an imac usb.. but it wasn't water resistant, as i discovered when i had a glass of water on my desk and it collapsed. 22:42:32 --- join: zhware (~stoyan@lemon.silveregg.co.jp) joined #osdev 22:43:13 you can have mine as far as I care 22:43:20 the mac usb keyboard is terrible 22:43:41 I'm very fond of Type 6 keyboards. 22:45:16 sun type 6? 22:45:21 yep. that's what I use on my mac 22:45:54 oic 22:57:11 --- join: trans (~trans@fatwire-201-109.uniserve.ca) joined #osdev 23:05:23 new info at brix-os.sf.net for anyone that cares 23:12:20 air: dude, you still don't have screen shots. the only things that matter are screen shots and feature lists! 23:15:51 --- join: Lathiat (trent@ipng-gw.balhalla.irc-desk.net) joined #osdev 23:24:36 hah 23:25:31 the only thing that matters is me putting up enuf info so that someone else can steal it and make an OS like brix 23:25:33 --- join: zwane_ (User-10371@modemcable217.53-202-24.mtl.mc.videotron.ca) joined #osdev 23:27:01 maybe i should write some xlib code that generates brix-like windows and put screenshots of those up :) 23:27:08 heh.. i've been thinking about putting up all my ideas... (since looking at your site again 5 minutes ago) 23:27:51 heh 23:36:28 brix? that sounds like a stupid little alternative os written in a stupid little language. 23:39:37 * air puts a foot in Rico's face 23:41:03 heh 23:41:15 ah, it's one big happy family here 23:42:40 --- quit: zwanem (Read error: 110 (Connection timed out)) 23:56:08 --- quit: pengo (Read error: 104 (Connection reset by peer)) 23:56:13 --- join: _pengo (xtofu@p113-tnt2.mel.ihug.com.au) joined #osdev 23:57:32 <_pengo> ,,,,{{.........}}}}}}}}}}||||||||:::{{{{{{{{{{{{\\\\\\\\\\;;;>>>>||||||||||||||||;;;;;;;;;;;...++++++++////////////;;;;;;;]]]]]]]]"/////////{{{{{{{{{{}}}},,,,,,,,.....;;;;;;!!!!!!!////////////////::::::]]]]]]]]]]]]!!!!!<<<<><<<<<<<<<>>,,,,!!]]]>\\\!!!!!!!,,,,+++++++++,,,,,,,,"""""||||>>\\\\\\\|||||||"""<<<::::::::::++++++++++<<<<<<<]]]]]]]]]]}}}}}}]][[[[::;;;!!!!!!!!!!!!////"""""""",,,,,,///////////,,,,,,,:::::]]]}}}}}+>>>>>>;;; 23:57:45 air: how to avoid find_init.php ? there is not php on my development box? what to extract with awk in core.init? 23:58:17 hmm 23:58:58 air: is it just the second colums from core.list? print $2 ? 23:59:30 --- join: lodda (~lothar@p508FDFD6.dip.t-dialin.net) joined #osdev 23:59:32 splat 23:59:59 --- log: ended osdev/02.11.12 23:59:59 --- log: ended osdev/02.11.12