This would have been a lot more impressive
by
pcx
·
· Score: 3, Informative
This would have been a lot more impressive if they had actually used java to animate the schematic instead of a static movie. Something along the lines of this...
http://www.visualthesaurus.com/index.jsp
Still cool, just not _slashdot_ cool.
Re:This would have been a lot more impressive
by
MoogMan
·
· Score: 2, Funny
No no no.../. cool would be telnetting into their server and getting an ASCII-version of the movie(s)
-- If Mr. Edison had thought smarter he wouldn't sweat as much. --Nikola Tesla
Now available in P2P
by
10Ghz
·
· Score: 3, Informative
I shared the files in Kazaa. Look for "Linux Kernel 3D"
-- Lesbian Nazi Hookers Abducted by UFOs and Forced Into Weight Loss Programs - -all next week on Town Talk.
Gnutella mirror
by
Henk+Poley
·
· Score: 2, Informative
The server will fade out sooner or later, so I put up a gnutella mirror of the first linked video "A guided tour of Linux-2.4.5: 9 MB MPEG (384x288, 2000 frames)."
Re:Rather Interesting Concept
by
njdj
·
· Score: 4, Interesting
I think that since Linux is very clean, streamlined code
Perhaps you didn't actually read the page referred to in the story?: ---start quote---
The following code demonstrates exciting
features of GNU C used in Linux:
int a, b;
typedef int t, u;
void f1() { a * b; }
void f2() { t * u; }
void f3() { t * b; }
void f4() { int t; t * b; }
void f5(t u, unsigned t) {
switch ( t ) {
case 0: if ( u )
default: return;
}
} ---end quote---
This kind of code is CRAP. I don't know who wrote it, I don't care if he/she is a genius kernel guru. Hard to read, hard to maintain.
A large poster?
by
Elphin
·
· Score: 2, Informative
>P.S. Does anyone else think that it would be nice to have such a map printed in high detail on a large black poster?
You can get something like that here http://www.thinkgeek.com/cubegoodies/posters/techi e/3884/
I'm not a programmer (BASIC doesn't count, right?:p ), but I have observed the development of a few open source projects and have seen the effects of code being introduced by programmers who have valuable contributions, but interact poorly with the rest of the source (usually novices). So, veterens, could this type of map, applied to the project in question, drive home the point and help mold the newbie into better practices, or are we better off oohing and ahhhing now and moving on to the next article?
Finally a true clear picture of the kernel! With this concise clear and stunning graphical 3d image I can finally progress beyond the Hello World modules. Lost in a function? Not sure how the kernel works? I'll just look at the wonderful lines and dots buried in the haze of blue and hey presto! All is revealed. Thank you for the amazing contribution to the world of computer science! Next up: a graphical representation of all the source code bits after mangled through a blender..stay tuned!
(or not)
-- ---
Damn my feeble editing skills
by
Elphin
·
· Score: 2, Informative
I'll keep them there for some hours, depending on the load induced to my puny 384 kb/s (<48 kB/s) bandwidth.
So far it seems though that the actual site is enduring pretty good too.
I mirrored 1 meg of files from a/. article once and I got hit with 1GB of data transfer. There are 24Megs worth of video on that page...
-- Who are you? The new #2 Who is #1? You are #617565. I am not a number, I am a free man! Muhahaha.
visualizing complex data
by
fiiz
·
· Score: 5, Interesting
Yes, that is interesting indeed.
I think in general there may be interesting research to be done in the area of mapping/visualization of complex data: for instance this project of mapping the internet.
Does this really help in general? Are there many cases where such visual maps would help understanding of complex data? Think for example, it may be interesting to produce such a map of everything2, which is a sort of hyperlinked online encyclopedia, to see where the clustering is.
In astrophysics, 3D maps of the universe have been produced for some time, and the human-eye understanding of large-scale structure was at first more direct than statistical analysis--for instance, people would see the famous filaments, but stats wouldn't.
A post above quoted the possible use in spotting "usefulness" of code contributions, by looking at their interdependencies for example.
easy....
`tar -cjvf kernel.tar.bz2/usr/src/linux && cat kernel.tar.bz2 >/dev/dsp`
this is actually quite pleasant to listen to while working as it is soothing like classical music.
Re:Rather Interesting Concept
by
jejones
·
· Score: 2, Informative
It doesn't do much of anything; it just shows off some of the more perverse corners of C, and that you can't get away with writing a minimalist parser to pull off something like this project--you have to go nearly whole hog, including at least enough of a symbol table to tell whether a * b; is a pointless expression or a declaration of a pointer to some typedef-ed type.
Mod parent down!
by
Anonymous Coward
·
· Score: 2, Informative
Geez!
That's not actual code from the kernel source. It's an example of what kind of code gcc compiles and why it's hard to write a gcc-C parser.
The real kernel code is mostly easy to read for humans (because they have no problem with context recognition).
watching the bits on an Atari ST
by
Anonymous Coward
·
· Score: 4, Interesting
My first computer was an Atari ST. The MWC (Mark Williams C) compiler that I bought with it came with an amazing little C demo program. It must have been 15 lines of C code tops. The Atari ST has an 680x0 cpu chip, and a linear memory model. A chunk of that memory was set aside for video, and a separate chip pumped that video memory out to the monitor. With the C demo program, you could change the base video memory pointer to point anywhere in memory, including low memory, where the operating system (TOS/GEM) resided. By doing this, you could actually WATCH the operating system in action, because each pixel on the video monitor represented one bit! You could see counters counting up, flag bits flip-flopping on and off, chunks of bits being read in from the floppy disk, etc. It is, by far, the coolest thing I've ever seen done with a computer. =) Wish I could figure out how to do it on my linux box.
Re:watching the bits on an Atari ST
by
StormReaver
·
· Score: 3, Informative
Tandy's line of CoCo computers worked the same way with video. Set a couple registers to tell the video generator which part of system RAM to treat as video and watch the operating system state displayed on-screen.
It was mildly amusing from time to time.
My workplace recently bought all us programmers new Gateway systems where the integrated video card (a GeForce model) uses the same technology for video as the CoCo from the past. Figure out how to tell the board which part of system memory should be treated as video, and the same effect could be had.
GCC is a compiler. It shoulldn't be a probllem to construct a local cross reference from the symbol information that it produces, especially if debugging is enabled. The advantage is that GCC would be used in the same way that it is to compile the kernel.
I can't remember if GCC assigns attributes to symbols so it is possible to keep track of code references but to forget the data references, but that would mean chasing through the debug symbol format.
Interesting, but flawed...
by
Junta
·
· Score: 2, Informative
At least the evolution animation was flawed. The evolution would imply the linear progression, but at fork points, stable releases with lower numbers were released well after development versions of higher numbers. For it to be the most accurate, you would have to only follow a kernel series to the fork point, then switch to the newer fork and ignore releases in the stable fork. 2.0.38 was released well after 2.1.0, though the animation suggests 2.1.0 as the immediate succesor to 2.0.38
I know, it's just eye candy, but thought I'd call them on it since no one else has...
-- XML is like violence. If it doesn't solve the problem, use more.
3D Programming
by
garyebickford
·
· Score: 2, Interesting
I have whined for a long time that programming is the last engineering discipline that isn't automated. We still essentially write prose.
Back at CMU in the late 1980's I played around with SPICE (an electrical CAD package), attempting to build a graphical programming environment for Pascal. Eventually I hypothesized a 3D model, with axes for data & types, control flow and I/O. Using SPICE I defined software IC's and was able to connect them together. Then the output could be parsed into Pascal source. I never took it to the point of anything working, although I did get some pretty nice looking graphical 'programs' that woulda worked - for sure!!
IMHO there is still a strong potential for something like this - perhaps the advent of the "Web Services" model (which separates applications from interfaces) will encourage design of at least large scale systems using methods similar to those used for designing chemical plants (for example).
-- It's easier to be a result of the past, but more fun to be a cause of the future! http://www.spacefinancegroup.com/
Interesting project...
by
Ahotasu
·
· Score: 2, Interesting
This is really a neat project. Makes me think of all the times when our managers are breathing fire down our necks and demanding to know what we've been doing all the time.
Take this project, make it generic for any (C, for now, then extending to other languages) code, add in CVS/RCS/[insert your CM tool here] hooks, then slap a 20-30 MB MPEG on the boss' desktop when he goes off.::)
Seriously, though, I think this could be a useful tool in evaluating complexity (risk) in a large project or just for managment of the software development in general. "Geez--looks like this corner is really dynamic. What's going on there?" or "Wow. This group over here hasn't been touched in ages. Are we falling behind here?" The CM tool hooks are the most blazingly obvious needs in my mind for such a project to work--it's the best way to get a time history of the development.
It would be nice to see major errors identified and then fixed in the movies as well.
...You should have seen some of the "sex on campus"
seven degrees of separation white boards from my college days!
(Yes, my "small patch" was rejected as too small to bother including)
I'm going to go ahead and test my university's bandwidth by mirroring the movies at http://www.public.iastate.edu/~omikron/linux3d/
I'll leave them there for 2 hours. Good luck.
http://somacore.com/slash3d/
NightmareDNS =)
http://mynetpad.com/mirror/perso.wanadoo.fr/pascal .brisset/kernel3d/kernel3d.html
I like to build things and wire stuff together.
fixit! writes "Have a look at this cool 3D animation of the Linux kernel source. This is how a source browser should look like!"
;-)
That's all nice and cool, but could we have a 3D shooter next where you can use a BFG#### to go bughunting?
People replying to my sig annoy me. That's why I change it all the time.
I caught a glimpse of Johnny Mnemonic in there!
This would have been a lot more impressive if they had actually used java to animate the schematic instead of a static movie. Something along the lines of this...
http://www.visualthesaurus.com/index.jsp
Still cool, just not _slashdot_ cool.
Tetsuo? is that you? what happened?
If Mr. Edison had thought smarter he wouldn't sweat as much. --Nikola Tesla
I shared the files in Kazaa. Look for "Linux Kernel 3D"
Lesbian Nazi Hookers Abducted by UFOs and Forced Into Weight Loss Programs - -all next week on Town Talk.
The server will fade out sooner or later, so I put up a gnutella mirror of the first linked video "A guided tour of Linux-2.4.5: 9 MB MPEG (384x288, 2000 frames)."
magnet:245.mpg
gnutella://245.mpg
ed2k://245.mpg"
More to follow?
I think that since Linux is very clean, streamlined code
Perhaps you didn't actually read the page referred to in the story?:
---start quote---
The following code demonstrates exciting
features of GNU C used in Linux:
int a, b;
typedef int t, u;
void f1() { a * b; }
void f2() { t * u; }
void f3() { t * b; }
void f4() { int t; t * b; }
void f5(t u, unsigned t) {
switch ( t ) {
case 0: if ( u )
default: return;
}
}
---end quote---
This kind of code is CRAP. I don't know who wrote it, I don't care if he/she is a genius kernel guru. Hard to read, hard to maintain.
>P.S. Does anyone else think that it would be nice to have such a map printed in high detail on a large black poster?
i e/3884/
You can get something like that here http://www.thinkgeek.com/cubegoodies/posters/tech
A very specific niche comment/query...
I'm not a programmer (BASIC doesn't count, right? :p ), but I have observed the development of a few open source projects and have seen the effects of code being introduced by programmers who have valuable contributions, but interact poorly with the rest of the source (usually novices). So, veterens, could this type of map, applied to the project in question, drive home the point and help mold the newbie into better practices, or are we better off oohing and ahhhing now and moving on to the next article?
Bored with karma, be a fan/freak
(or not)
---
That link again: Linux Kernel Poster
http://bisqwit.iki.fi/kala/kernel3d/
I'll keep them there for some hours, depending on the load induced to my puny 384 kb/s (<48 kB/s) bandwidth.
So far it seems though that the actual site is enduring pretty good too.
OO..I think I spotted an error in net/sch_prio.c at line 217...back up...wait...pause..no...I was mistaken...it's right..
Work is punishment for failing to procrastinate effectively.
For comparison, here are a few animations of Windows
getSexySig();
I mirrored 1 meg of files from a /. article once and I got hit with 1GB of data transfer. There are 24Megs worth of video on that page...
Who are you? The new #2 Who is #1? You are #617565. I am not a number, I am a free man! Muhahaha.
Yes, that is interesting indeed.
I think in general there may be interesting research to be done in the area of mapping/visualization of complex data: for instance this project of mapping the internet.
Does this really help in general? Are there many cases where such visual maps would help understanding of complex data?
Think for example, it may be interesting to produce such a map of everything2, which is a sort of hyperlinked online encyclopedia, to see where the clustering is.
In astrophysics, 3D maps of the universe have been produced for some time, and the human-eye understanding of large-scale structure was at first more direct than statistical analysis--for instance, people would see the famous filaments, but stats wouldn't.
A post above quoted the possible use in spotting "usefulness" of code contributions, by looking at their interdependencies for example.
yours ever, fz.
Can someone make a screensaver outta that?. That looks cool though it doesnt make anmy sense to me
Now I know what it looks like, I want to know what it sounds like too.
It doesn't do much of anything; it just shows off some of the more perverse corners of C, and that you can't get away with writing a minimalist parser to pull off something like this project--you have to go nearly whole hog, including at least enough of a symbol table to tell whether a * b; is a pointless expression or a declaration of a pointer to some typedef-ed type.
Geez!
That's not actual code from the kernel source. It's an example of what kind of code gcc compiles and why it's hard to write a gcc-C parser.
The real kernel code is mostly easy to read for humans (because they have no problem with context recognition).
My first computer was an Atari ST. The MWC (Mark Williams C) compiler that I bought with it came with an amazing little C demo program. It must have been 15 lines of C code tops. The Atari ST has an 680x0 cpu chip, and a linear memory model. A chunk of that memory was set aside for video, and a separate chip pumped that video memory out to the monitor. With the C demo program, you could change the base video memory pointer to point anywhere in memory, including low memory, where the operating system (TOS/GEM) resided. By doing this, you could actually WATCH the operating system in action, because each pixel on the video monitor represented one bit! You could see counters counting up, flag bits flip-flopping on and off, chunks of bits being read in from the floppy disk, etc. It is, by far, the coolest thing I've ever seen done with a computer. =) Wish I could figure out how to do it on my linux box.
I can't remember if GCC assigns attributes to symbols so it is possible to keep track of code references but to forget the data references, but that would mean chasing through the debug symbol format.
See my journal, I write things there
At least the evolution animation was flawed. The evolution would imply the linear progression, but at fork points, stable releases with lower numbers were released well after development versions of higher numbers. For it to be the most accurate, you would have to only follow a kernel series to the fork point, then switch to the newer fork and ignore releases in the stable fork. 2.0.38 was released well after 2.1.0, though the animation suggests 2.1.0 as the immediate succesor to 2.0.38
I know, it's just eye candy, but thought I'd call them on it since no one else has...
XML is like violence. If it doesn't solve the problem, use more.
I have whined for a long time that programming is the last engineering discipline that isn't automated. We still essentially write prose.
Back at CMU in the late 1980's I played around with SPICE (an electrical CAD package), attempting to build a graphical programming environment for Pascal. Eventually I hypothesized a 3D model, with axes for data & types, control flow and I/O. Using SPICE I defined software IC's and was able to connect them together. Then the output could be parsed into Pascal source. I never took it to the point of anything working, although I did get some pretty nice looking graphical 'programs' that woulda worked - for sure!!
IMHO there is still a strong potential for something like this - perhaps the advent of the "Web Services" model (which separates applications from interfaces) will encourage design of at least large scale systems using methods similar to those used for designing chemical plants (for example).
It's easier to be a result of the past, but more fun to be a cause of the future! http://www.spacefinancegroup.com/
This is really a neat project. Makes me think of all the times when our managers are breathing fire down our necks and demanding to know what we've been doing all the time.
::)
Take this project, make it generic for any (C, for now, then extending to other languages) code, add in CVS/RCS/[insert your CM tool here] hooks, then slap a 20-30 MB MPEG on the boss' desktop when he goes off.
Seriously, though, I think this could be a useful tool in evaluating complexity (risk) in a large project or just for managment of the software development in general. "Geez--looks like this corner is really dynamic. What's going on there?" or "Wow. This group over here hasn't been touched in ages. Are we falling behind here?" The CM tool hooks are the most blazingly obvious needs in my mind for such a project to work--it's the best way to get a time history of the development.
--- Standard disclaimer applies.