It seems that the site(s) are back up, I've appended the meat of both in case they go down again. The good deal of the posts I'm reading stat the stats are invalid because it is an aggregate of all linux distros in comparison to windows 2k. This is not true, the stats make a clear distinction between distro's and count them separately, for example Redhat 7.2 had 28 exploits in 2001 where Win2k had 24.
Which is what this article was attempted to exploit itself. Its very clear that the original article (as shown below) is a blatant attempted to drum of a flame war between linux and windows supporters. With a headline like 'Windows More Secure Than Linux? Yep!' it doesn't try to hide that fact either. The entire basis is of the article is a 4 "exploit" difference between Redhat linux and win2k within the last year. Of course the severity of these exploits are not detailed.
Considering that windows has dramatically improved its numbers from the previous years I think a more accurate headline would have been "Windows security much improved from previous years"
As many people has said far my eloquently them myself, these statistics do nothing to prove or disprove a superiority between linux and windows security, as there are so many problems with even trying to prove such a thing.
-Jon
below is the full text of the article and the stats from Security Focus.
------------------- WinInfo artical ------------------
Thanks to David Byrne for this tip: For at least the first 8 months of 2001, open-source poster child Linux was far less secure than Windows, according to the reputable NTBugTraq, which is hosted by SecurityFocus, the leading provider of security information about the Internet. (The company's 2001 statistics are available only through August 2001 for the time being.) According to NTBugTraq, Windows 2000 Server had less than half as many security vulnerabilities as Linux during the reported period. When you break the numbers down by Linux distribution, Win2K had fewer vulnerabilities than RedHat Linux 7.0 or MandrakeSoft Mandrake Linux 7.2, and it tied with UNIX-leader Sun Microsystems Solaris 8.0 and 7.0. A look at the previous 5 years--for which the data is more complete--also shows that each year, Win2K and Windows NT had far fewer security vulnerabilities than Linux, despite the fact that Windows is deployed on a far wider basis than any version of Linux. So once again, folks, you have to ask yourselves: Is Windows really less secure than Linux? Or is this one of those incredible perception issues? For more information and the complete stats, visit the SecurityFocus Web site. I'll check back on this story to see how all of 2001 shapes up.
Top Vulnerable Packages 2001
Packages # Vulns
MandrakeSoft Linux Mandrake 7.2 33
RedHat Linux 7.0 28
MandrakeSoft Linux Mandrake 7.1 27
Debian Linux 2.2 26
Sun Solaris 8.0 24
Sun Solaris 7.0 24
Microsoft Windows 2000 24
MandrakeSoft Linux Mandrake 7.0 22
SCO Open Server 5.0.6 21
RedHat Linux 6.2 i386 20
MandrakeSoft Linux Mandrake 6.1 20
MandrakeSoft Linux Mandrake 6.0 20
Wirex Immunix OS 7.0-Beta 19
Sun Solaris 2.6 19
RedHat Linux 6.2 sparc 18
RedHat Linux 6.2 alpha 18
Debian Linux 2.2 sparc 18
Debian Linux 2.2 arm 18
Debian Linux 2.2 alpha 18
Debian Linux 2.2 68k 18
Top Vulnerable Packages 2000
Packages # Vulns
Microsoft Windows NT 4.0 71
RedHat Linux 6.2 i386 65
RedHat Linux 6.2 sparc 53
RedHat Linux 6.2 alpha 53
Microsoft Windows 2000 52
Debian Linux 2.2 48
RedHat Linux 6.1 i386 47
Microsoft Windows 98 40
RedHat Linux 6.1 sparc 39
RedHat Linux 6.1 alpha 39
MandrakeSoft Linux Mandrake 7.0 37
Microsoft Windows 95 35
RedHat Linux 6.0 i386 33
Microsoft IIS 4.0 29
Microsoft BackOffice 4.5 29
Microsoft BackOffice 4.0 29
RedHat Linux 7.0 28
MandrakeSoft Linux Mandrake 7.1 26
RedHat Linux 6.0 alpha 25
Conectiva Linux 5.1 25
Top Vulnerable Packages 1999
Packages # Vulns
Microsoft Windows NT 4.0 75
Microsoft Windows 98 44
Microsoft Windows 95 40
Microsoft Windows NT 4.0SP3 33
Microsoft Windows NT 4.0SP1 32
Microsoft Windows NT 4.0SP2 31
Microsoft Windows NT 4.0SP4 30
Microsoft Internet Explorer 5.0 for Windows 98 29
Microsoft Internet Explorer 5.0 for Windows NT 4.0 28
Microsoft Internet Explorer 5.0 for Windows 95 28
Microsoft BackOffice 4.0 28
Microsoft BackOffice 4.5 27
Sun Solaris 7.0 26
Microsoft IIS 4.0 25
Microsoft Windows NT 4.0SP5 23
RedHat Linux 5.2 i386 22
Sun Solaris 7.0_x86 21
Sun Solaris 2.6_x86 21
Sun Solaris 2.6 21
RedHat Linux 6.0 i386 21
Top Vulnerable Packages 1998
Packages # Vulns
IBM AIX 4.3 36
IBM AIX 4.2.1 29
IBM AIX 4.2 29
Sun Solaris 2.6 28
Sun Solaris 2.6_x86 25
IBM AIX 4.1 25
IBM AIX 4.1.5 24
IBM AIX 4.1.4 24
IBM AIX 4.1.3 24
IBM AIX 4.1.2 24
IBM AIX 4.1.1 24
Sun Solaris 2.5.1_x86 23
Sun Solaris 2.5.1 23
Sun Solaris 2.5_x86 22
Sun Solaris 2.5 21
Sun Solaris 2.4 18
Sun Solaris 2.4_x86 17
Sun Solaris 2.3 13
Sun Solaris 2.5.1_ppc 10
SGI IRIX 6.4 10
Top Vulnerable Packages 1997
Packages # Vulns
SGI IRIX 6.2 25
Sun Solaris 2.5.1 23
Sun Solaris 2.5 23
SGI IRIX 5.3 23
Sun Solaris 2.5_x86 22
Sun Solaris 2.5.1_x86 22
Sun Solaris 2.4 22
Sun Solaris 2.4_x86 21
SGI IRIX 6.3 20
IBM AIX 4.1 19
Sun Solaris 2.3 18
SGI IRIX 6.1 18
IBM AIX 4.2 17
SGI IRIX 5.2 15
SGI IRIX 6.4 14
IBM AIX 4.1.5 14
IBM AIX 4.1.4 14
IBM AIX 4.1.3 14
IBM AIX 4.1.1 14
Sun Solaris 2.5.1_ppc 13
I didn't say spawning 40,000 threads was a good idea, i just mentioned other problems with the one thread per connection idea. why are you telling me to 'eat my own food' as if i was advocating it?
no offence, but comments like that ruin the slashdot community.
I hadn't thought about that problem, but it is a very good point. Its funny how one can think they are pretty informed on a subject, then find out through talking with other people just how much they really arn't aware of (i'm refering to myself of course).
true, one thread per connection would kill bring the server down to a crawl. however just having a server handling 40,000 active tcp connections would kill it's stack. The way to handle the TCP side is usully one thread per proc. so if you have a 4 way Xeon box (or whatever) then have 4 threads each looping through the connections. Though how one does that depends on the OS.
First off let me say that you are way in over your head, don't go into this thinking you will actually make a everquest. Everquest took 4 years to develop with a full staff of experienced programmers and artists, DAoC only took 2 years, but they had a very complete engine to work with. However i do not want to discurege you, attempting this, while foolish is a noble task where you will certainly learn a great deal. that being said:
The only communication from clients would be commands to units, which is simple enough
Generally the way this is handled is setting up a TCP communication for critical information, such as the stats of the player, text communication etc.. then send small UDP (connectionless) messages for non-critical data, such as player and monster movments. Be warry of using TCP for everything, this is something Anarchy Online did, which caused some pretty massive problems on the server side.
The situation is further complicated by the need to limit updates to just the areas of the map that are visible to a given player/team - this is clearly necessary to prevent client-side hacks such as gaining full map knowledge.
There are two approches for this, one is a moving 'buble' of information, where you update the client with all data within a certain radius, another is the zone approach (i.e. everquest) where you send the an entire zone worth of information. Note that you are not sending everything, only monster,player movment and state (are they fighting).
What should the object model look like?
I have no idea, i imagine it would be far too large and complex to even describe in a slashdot post. However i recommend you look at it from a top down view, then try implementing from the bottom up. For example, you know that you have a 'world' and the 'world has players, monsters and items', 'players and monsters' could be concedered 'actors' with certain command antributes. 'actors interact with items' etc.. you should start seeing how to construct a object model. also don't worry about what this looks like at first and you will no doubt be revising it as you go a long, make things the work and compile so you have some possitive feedback for you hard work. When things seem out of hand, step back, make some coffee and draw out what you have and try to thing of a way to break it apart into managable sections.
But its called hibernation. Bassicly all the processes are suspeneded then the system memory is copied to disk. The tricky part is getting the devices to hibernate. The way MS handles it is that all the active devices have to support the hibernation calls or the entire system won't hibernate.
I'm sure other OS's have this too, i wouldn't be suprised if someone has done it with linux.
I'm not sure how the hash works either. but from what i can tell the peers connect to eachother in order of the hash making searchs faster (kind of like a skip-list)
peer1 [0x001] -> peer2 [0x05] -> peer3 [0x08]
i'm 99% sure it doesn't work like a standard hashtable, i think the hashs are just for generating sortable keys, but i could be wrong.
i compared it to a quicksort, because the author compared FastTrack to a buble sort [O(n^2)], wheres his seemed to be the same as a quicksort [ O(n log n) ]
a good overview of different p2p architectures is over here at openp2p.com.
One system the author fails to mention is Circle, which uses a decentralized hashtable system., more about it at his system is in a pdf slideshow he'll be giving at linux.conf.au
My favorite quote from his page: "FastTrack (aka Kazza/Morpheus) is kind of like trying to optimize a bublesort", which leads me to believe he has a regular quicksort at hand. (actually he does claim O(n log n) seachs, so its about right)
Also to note are Chord and GISP which seem to use simular schemes, where Chord is pure acadamia (someones masters thesis). GISP is an implementation of something from JXTA, suns p2p framework.
right, but those together and in different threads, like: T1: AI task/game logic, T2: vector math/rendering pipline: T3: network polling, switching between those 3 constantly. i would think means that the pipeline gets screwed. but maybe the OS and compiler we're smart enough to somehow know to do X amount of each so the pipeline wouldn't getting flushed all the time, i'm not sure.
anyway i find the suject interesting and would like to know more.
While reading through the results an idea came to me. Is it possible that the reason the P4 generally does better on 'one algorithm type of tasks is because its long pipeline wouldn't get busted as much, meaning that the branch prediction worked, which is based of past branch statistics (right?).
This makes since to me actually, in speaking with my friend about this last night I was asked 'well, what do you need a fast CPU for, when does it matter?', I replied 'Well, games, anything to do with multimedia, like Photoshop effects, ray tracing, mpeg encoding, but ya for general use, the CPU doesn't as much'.
but wait, lets look at that list in how it relates to the pipeline idea:
games: probably a good deal is going on here, AI, 3d pipelines, IO, networking probably not something a branch predictor would excel at
Photoshop effects ray tracing, mpeg encoding: all relatively contained algorithm that (if I'm right) would work well with the brand prediction.
So actually maybe having such long pipelines isn't that bad of a thing, because the majority of your day to day would doesn't care that much anyway, and most of the time when you need something as fast as possible its a small repetitive algorithm that could be predicted.
So whats the chances of the DoJ and MS filling a anti trust suite against AOL for using their monolopy in the internet market (Time Warner Cable, AOL Online) to force users to use their OS (a dumbed down Redhat)
I didn't want to do it, i really didn't but my new comp comes with a ATI Radeon Mobility which is only supported under the latest CVS from XFree.
Wait a min, why did i compile KDE then, oh right because type cd/usr/ports/x11/kde2; make; make install was easyer then downloading 25 packages. Also i guess KDE will be fast since i compiled it myself.. or something.
anyway the whole thing took about 4 hour on my P-III 1mhz, not too bad. but i started getting pretty anxious for it to finish, waiting 4 hours to see if somethings going to work or not kind of sucks. also c++ files take a shitload longer to compile then c files, so KDE took longer then expected.
well, i installed a fresh redhat 7.2 last week on my new campaq 1720us laptop. it found the d-link wireless card ok and seemed to like my video card (radeon mobility) but the eepro100 driver didn't work right.
the scroll button things on my laptop was unknown to linux, windows didn't know about them either, but compaq provides drivers for win32.
Besides the network cards being flaky things worked ok, but i actually configuring anything became a complete nightmare, like trying to compile the latest kernel with redhat, trying to get some wireless hacking stuff, etc..
Right now i'm trying out freebsd which so far has worked out a lot better, it doesn't have the same problem with the network card, it saw the wireless, though it didn't know about the video card right off, but getting XFree to figure it out wasn't that bad. Generally i find freebsd to make a lot more sence, being at it's only one operating system and not a collection of things packeged together. when people talk about freebsd i know what there talking about, unlike linux where your distrubution really does matter (at least with redhat).
anyway, maybe if i really knew the in's and out's of how linux worked it i would find it workable, but to me, i can't imagine making it a primary OS, i like linux, but thats mainly because i like fucking with computers, and it's no fun if computers just work right, there needs to be a lot of effort to make it feel worth while.
The second i read about the x lines of code i also wondered if the code way any good, so instead of mouthing off about how x lines of code doesn't matter, it's the quality, I decided to download some of it and check it out for myself.
While I did not go through it extremely carefully, I did read through a few functions, and got an idea of how the programmer thought about things. It seems that the code is pretty tight. It's defiantly not compressed, but it is well modularized and well commented and that's more then I can say about a lot of code that I've seen.
My guess is that this man is a seasoned coder who is very driven, and I applauded his work.
I'll admit i'm not very up on this, but common since tells me two things:
A. Why does the ISP need to know what transport the client is using, can't they just look at the packet size? isn't that enough?
B. How the hell are you supposed to set this up? wouldn't you need a server on the other side of your isp to decrypt your packets, like a friends box on a unlimited isp, or a box at a local college? i can't just connect to slashdot on port 80 via IPsec, can I?
If there is some way i can i can use IPSec to remove port restrictions or download caps (though time warner cable hasn't done that.. yet) i'm all for it, or ever just to secure my connections, but it doesn't seem like this is something you can just magicly turn on and make it work everywhere.
I just put RH 7.2 on my laptop (compaq 1720US). the eepro100 drivers that come with it do a timeout deal constantly. I am hoping that this new kernel includes some fixes for it.
Previesly i appempted to get the latest official kernel (2.4.16) and make it work with redhat. I got as far as using kgcc and getting it to compile but i was unable to get xwindows working after that. (i think it might have had something to do with gartagp not working, not sure)
does anyone know of some simple steps to make RH work properly with the latest kernels?
just so everyone knows, the built in firewall in XP is very simple. it's a checkbox that essiencially says "enable firewall stuff", and then another dialog is enabled that lets you say what ports are open.
This is very good thing as i doubt very few users are interested in having ports open to the wild.
Just as Microsoft is Turbins publisher for Ashrons Call, EA for UO and Sony for Verant's EverQuest (though i belive Sony owns verant).
the strait dope can be found at site mythics site
The only MMORPG game i've heard of that didn't have a large company as a publisher was Anarchy Online, which unfortantly seems to be failing badly.
-Jon
http://www.osdn.com/bcg/BCGHACKERSURVEY.pdf
-Jon
Lots of misinformation going on around here.
It seems that the site(s) are back up, I've appended the meat of both in case they go down again. The good deal of the posts I'm reading stat the stats are invalid because it is an aggregate of all linux distros in comparison to windows 2k. This is not true, the stats make a clear distinction between distro's and count them separately, for example Redhat 7.2 had 28 exploits in 2001 where Win2k had 24.
Which is what this article was attempted to exploit itself. Its very clear that the original article (as shown below) is a blatant attempted to drum of a flame war between linux and windows supporters. With a headline like 'Windows More Secure Than Linux? Yep!' it doesn't try to hide that fact either. The entire basis is of the article is a 4 "exploit" difference between Redhat linux and win2k within the last year. Of course the severity of these exploits are not detailed.
Considering that windows has dramatically improved its numbers from the previous years I think a more accurate headline would have been "Windows security much improved from previous years"
As many people has said far my eloquently them myself, these statistics do nothing to prove or disprove a superiority between linux and windows security, as there are so many problems with even trying to prove such a thing.
-Jon
below is the full text of the article and the stats from Security Focus.
------------------- WinInfo artical ------------------
Thanks to David Byrne for this tip: For at least the first 8 months of 2001, open-source poster child Linux was far less secure than Windows, according to the reputable NTBugTraq, which is hosted by SecurityFocus, the leading provider of security information about the Internet. (The company's 2001 statistics are available only through August 2001 for the time being.) According to NTBugTraq, Windows 2000 Server had less than half as many security vulnerabilities as Linux during the reported period. When you break the numbers down by Linux distribution, Win2K had fewer vulnerabilities than RedHat Linux 7.0 or MandrakeSoft Mandrake Linux 7.2, and it tied with UNIX-leader Sun Microsystems Solaris 8.0 and 7.0. A look at the previous 5 years--for which the data is more complete--also shows that each year, Win2K and Windows NT had far fewer security vulnerabilities than Linux, despite the fact that Windows is deployed on a far wider basis than any version of Linux. So once again, folks, you have to ask yourselves: Is Windows really less secure than Linux? Or is this one of those incredible perception issues? For more information and the complete stats, visit the SecurityFocus Web site. I'll check back on this story to see how all of 2001 shapes up.
-------------------SecurityFocus Stats -------------
Number of OS Vulnerabilities by Year
OS 1997 1998 1999 2000 2001
AIX 21 38 10 15 6
BSD/OS 7 5 4 1 3
BeOS 0 0 0 5 1
Caldera 4 3 14 28 27
Connectiva 0 0 0 0 0
Debian 3 2 31 55 28
FreeBSD 5 2 17 36 17
HP-UX 9 5 11 26 16
IRIX 28 15 9 14 7
MacOS 0 1 5 1 4
MacOS X Server 0 0 1 0 0
Mandrake 0 0 2 46 36
NetBSD 2 4 10 20 9
Netware 1 0 4 3 1
OpenBSD 1 2 4 17 14
RedHat 6 10 47 95 54
SCO Unix 3 3 10 2 21
Slackware 4 8 11 11 10
Solaris 24 33 34 22 33
SuSE 0 1 23 31 21
TurboLinux 0 0 2 20 2
Unixware 2 3 14 4 9
Windows 3.1x/95/98 3 1 46 40 14
Windows NT/2000 10 8 78 97 42
Top Vulnerable Packages 2001
Packages # Vulns
MandrakeSoft Linux Mandrake 7.2 33
RedHat Linux 7.0 28
MandrakeSoft Linux Mandrake 7.1 27
Debian Linux 2.2 26
Sun Solaris 8.0 24
Sun Solaris 7.0 24
Microsoft Windows 2000 24
MandrakeSoft Linux Mandrake 7.0 22
SCO Open Server 5.0.6 21
RedHat Linux 6.2 i386 20
MandrakeSoft Linux Mandrake 6.1 20
MandrakeSoft Linux Mandrake 6.0 20
Wirex Immunix OS 7.0-Beta 19
Sun Solaris 2.6 19
RedHat Linux 6.2 sparc 18
RedHat Linux 6.2 alpha 18
Debian Linux 2.2 sparc 18
Debian Linux 2.2 arm 18
Debian Linux 2.2 alpha 18
Debian Linux 2.2 68k 18
Top Vulnerable Packages 2000
Packages # Vulns
Microsoft Windows NT 4.0 71
RedHat Linux 6.2 i386 65
RedHat Linux 6.2 sparc 53
RedHat Linux 6.2 alpha 53
Microsoft Windows 2000 52
Debian Linux 2.2 48
RedHat Linux 6.1 i386 47
Microsoft Windows 98 40
RedHat Linux 6.1 sparc 39
RedHat Linux 6.1 alpha 39
MandrakeSoft Linux Mandrake 7.0 37
Microsoft Windows 95 35
RedHat Linux 6.0 i386 33
Microsoft IIS 4.0 29
Microsoft BackOffice 4.5 29
Microsoft BackOffice 4.0 29
RedHat Linux 7.0 28
MandrakeSoft Linux Mandrake 7.1 26
RedHat Linux 6.0 alpha 25
Conectiva Linux 5.1 25
Top Vulnerable Packages 1999
Packages # Vulns
Microsoft Windows NT 4.0 75
Microsoft Windows 98 44
Microsoft Windows 95 40
Microsoft Windows NT 4.0SP3 33
Microsoft Windows NT 4.0SP1 32
Microsoft Windows NT 4.0SP2 31
Microsoft Windows NT 4.0SP4 30
Microsoft Internet Explorer 5.0 for Windows 98 29
Microsoft Internet Explorer 5.0 for Windows NT 4.0 28
Microsoft Internet Explorer 5.0 for Windows 95 28
Microsoft BackOffice 4.0 28
Microsoft BackOffice 4.5 27
Sun Solaris 7.0 26
Microsoft IIS 4.0 25
Microsoft Windows NT 4.0SP5 23
RedHat Linux 5.2 i386 22
Sun Solaris 7.0_x86 21
Sun Solaris 2.6_x86 21
Sun Solaris 2.6 21
RedHat Linux 6.0 i386 21
Top Vulnerable Packages 1998
Packages # Vulns
IBM AIX 4.3 36
IBM AIX 4.2.1 29
IBM AIX 4.2 29
Sun Solaris 2.6 28
Sun Solaris 2.6_x86 25
IBM AIX 4.1 25
IBM AIX 4.1.5 24
IBM AIX 4.1.4 24
IBM AIX 4.1.3 24
IBM AIX 4.1.2 24
IBM AIX 4.1.1 24
Sun Solaris 2.5.1_x86 23
Sun Solaris 2.5.1 23
Sun Solaris 2.5_x86 22
Sun Solaris 2.5 21
Sun Solaris 2.4 18
Sun Solaris 2.4_x86 17
Sun Solaris 2.3 13
Sun Solaris 2.5.1_ppc 10
SGI IRIX 6.4 10
Top Vulnerable Packages 1997
Packages # Vulns
SGI IRIX 6.2 25
Sun Solaris 2.5.1 23
Sun Solaris 2.5 23
SGI IRIX 5.3 23
Sun Solaris 2.5_x86 22
Sun Solaris 2.5.1_x86 22
Sun Solaris 2.4 22
Sun Solaris 2.4_x86 21
SGI IRIX 6.3 20
IBM AIX 4.1 19
Sun Solaris 2.3 18
SGI IRIX 6.1 18
IBM AIX 4.2 17
SGI IRIX 5.2 15
SGI IRIX 6.4 14
IBM AIX 4.1.5 14
IBM AIX 4.1.4 14
IBM AIX 4.1.3 14
IBM AIX 4.1.1 14
Sun Solaris 2.5.1_ppc 13
Privacy Statement
Copyright © 1999-2001 SecurityFocus
I didn't say spawning 40,000 threads was a good idea, i just mentioned other problems with the one thread per connection idea. why are you telling me to 'eat my own food' as if i was advocating it?
no offence, but comments like that ruin the slashdot community.
-Jon
I hadn't thought about that problem, but it is a very good point. Its funny how one can think they are pretty informed on a subject, then find out through talking with other people just how much they really arn't aware of (i'm refering to myself of course).
thanks,
-Jon
true, one thread per connection would kill bring the server down to a crawl. however just having a server handling 40,000 active tcp connections would kill it's stack. The way to handle the TCP side is usully one thread per proc. so if you have a 4 way Xeon box (or whatever) then have 4 threads each looping through the connections. Though how one does that depends on the OS.
-Jon
First off let me say that you are way in over your head, don't go into this thinking you will actually make a everquest. Everquest took 4 years to develop with a full staff of experienced programmers and artists, DAoC only took 2 years, but they had a very complete engine to work with. However i do not want to discurege you, attempting this, while foolish is a noble task where you will certainly learn a great deal. that being said:
The only communication from clients would be commands to units, which is simple enough
Generally the way this is handled is setting up a TCP communication for critical information, such as the stats of the player, text communication etc.. then send small UDP (connectionless) messages for non-critical data, such as player and monster movments. Be warry of using TCP for everything, this is something Anarchy Online did, which caused some pretty massive problems on the server side.
The situation is further complicated by the need to limit updates to just the areas of the map that are visible to a given player/team - this is clearly necessary to prevent client-side hacks such as gaining full map knowledge.
There are two approches for this, one is a moving 'buble' of information, where you update the client with all data within a certain radius, another is the zone approach (i.e. everquest) where you send the an entire zone worth of information. Note that you are not sending everything, only monster,player movment and state (are they fighting).
What should the object model look like?
I have no idea, i imagine it would be far too large and complex to even describe in a slashdot post. However i recommend you look at it from a top down view, then try implementing from the bottom up. For example, you know that you have a 'world' and the 'world has players, monsters and items', 'players and monsters' could be concedered 'actors' with certain command antributes. 'actors interact with items' etc.. you should start seeing how to construct a object model. also don't worry about what this looks like at first and you will no doubt be revising it as you go a long, make things the work and compile so you have some possitive feedback for you hard work. When things seem out of hand, step back, make some coffee and draw out what you have and try to thing of a way to break it apart into managable sections.
ok that is all, good luck.
-Jon
But its called hibernation. Bassicly all the processes are suspeneded then the system memory is copied to disk. The tricky part is getting the devices to hibernate. The way MS handles it is that all the active devices have to support the hibernation calls or the entire system won't hibernate.
I'm sure other OS's have this too, i wouldn't be suprised if someone has done it with linux.
-Jon
I'm not sure how the hash works either. but from what i can tell the peers connect to eachother in order of the hash making searchs faster (kind of like a skip-list)
peer1 [0x001] -> peer2 [0x05] -> peer3 [0x08]
i'm 99% sure it doesn't work like a standard hashtable, i think the hashs are just for generating sortable keys, but i could be wrong.
i compared it to a quicksort, because the author compared FastTrack to a buble sort [O(n^2)], wheres his seemed to be the same as a quicksort [ O(n log n) ]
-Jon
a good overview of different p2p architectures is over here at openp2p.com.
One system the author fails to mention is Circle, which uses a decentralized hashtable system., more about it at his system is in a pdf slideshow he'll be giving at linux.conf.au
My favorite quote from his page: "FastTrack (aka Kazza/Morpheus) is kind of like trying to optimize a bublesort", which leads me to believe he has a regular quicksort at hand. (actually he does claim O(n log n) seachs, so its about right)
Also to note are Chord and GISP which seem to use simular schemes, where Chord is pure acadamia (someones masters thesis). GISP is an implementation of something from JXTA, suns p2p framework.
right, but those together and in different threads, like: T1: AI task/game logic, T2: vector math/rendering pipline: T3: network polling, switching between those 3 constantly. i would think means that the pipeline gets screwed. but maybe the OS and compiler we're smart enough to somehow know to do X amount of each so the pipeline wouldn't getting flushed all the time, i'm not sure.
anyway i find the suject interesting and would like to know more.
-Jon
wow, 3 hours of sleep + sloppy spell checking = embarrassing post.
my bad.
While reading through the results an idea came to me. Is it possible that the reason the P4 generally does better on 'one algorithm type of tasks is because its long pipeline wouldn't get busted as much, meaning that the branch prediction worked, which is based of past branch statistics (right?).
This makes since to me actually, in speaking with my friend about this last night I was asked 'well, what do you need a fast CPU for, when does it matter?', I replied 'Well, games, anything to do with multimedia, like Photoshop effects, ray tracing, mpeg encoding, but ya for general use, the CPU doesn't as much'.
but wait, lets look at that list in how it relates to the pipeline idea:
games: probably a good deal is going on here, AI, 3d pipelines, IO, networking probably not something a branch predictor would excel at
Photoshop effects ray tracing, mpeg encoding: all relatively contained algorithm that (if I'm right) would work well with the brand prediction.
So actually maybe having such long pipelines isn't that bad of a thing, because the majority of your day to day would doesn't care that much anyway, and most of the time when you need something as fast as possible its a small repetitive algorithm that could be predicted.
no?
very interesting.
bla bla bla lameness filter sucks.
So whats the chances of the DoJ and MS filling a anti trust suite against AOL for using their monolopy in the internet market (Time Warner Cable, AOL Online) to force users to use their OS (a dumbed down Redhat)
-Jon
I didn't want to do it, i really didn't but my new comp comes with a ATI Radeon Mobility which is only supported under the latest CVS from XFree.
/usr/ports/x11/kde2; make; make install was easyer then downloading 25 packages. Also i guess KDE will be fast since i compiled it myself.. or something.
Wait a min, why did i compile KDE then, oh right because type cd
anyway the whole thing took about 4 hour on my P-III 1mhz, not too bad. but i started getting pretty anxious for it to finish, waiting 4 hours to see if somethings going to work or not kind of sucks. also c++ files take a shitload longer to compile then c files, so KDE took longer then expected.
i have no point, so nm.
-Jon
same post, about a month ago
-Jon
I imagine once they have it compiling under a linux (which apparently they do) it shouldn't be to much effort to port it over to FreeBSD and OSX.
So probably soon.
-Jon
link here
it's a good read and has flash animations so even i could understand it.
well, i installed a fresh redhat 7.2 last week on my new campaq 1720us laptop. it found the d-link wireless card ok and seemed to like my video card (radeon mobility) but the eepro100 driver didn't work right.
the scroll button things on my laptop was unknown to linux, windows didn't know about them either, but compaq provides drivers for win32.
Besides the network cards being flaky things worked ok, but i actually configuring anything became a complete nightmare, like trying to compile the latest kernel with redhat, trying to get some wireless hacking stuff, etc..
Right now i'm trying out freebsd which so far has worked out a lot better, it doesn't have the same problem with the network card, it saw the wireless, though it didn't know about the video card right off, but getting XFree to figure it out wasn't that bad. Generally i find freebsd to make a lot more sence, being at it's only one operating system and not a collection of things packeged together. when people talk about freebsd i know what there talking about, unlike linux where your distrubution really does matter (at least with redhat).
anyway, maybe if i really knew the in's and out's of how linux worked it i would find it workable, but to me, i can't imagine making it a primary OS, i like linux, but thats mainly because i like fucking with computers, and it's no fun if computers just work right, there needs to be a lot of effort to make it feel worth while.
hmm.. better add this
The second i read about the x lines of code i also wondered if the code way any good, so instead of mouthing off about how x lines of code doesn't matter, it's the quality, I decided to download some of it and check it out for myself.
While I did not go through it extremely carefully, I did read through a few functions, and got an idea of how the programmer thought about things. It seems that the code is pretty tight. It's defiantly not compressed, but it is well modularized and well commented and that's more then I can say about a lot of code that I've seen.
My guess is that this man is a seasoned coder who is very driven, and I applauded his work.
-Jon
I'll admit i'm not very up on this, but common since tells me two things:
A. Why does the ISP need to know what transport the client is using, can't they just look at the packet size? isn't that enough?
B. How the hell are you supposed to set this up? wouldn't you need a server on the other side of your isp to decrypt your packets, like a friends box on a unlimited isp, or a box at a local college? i can't just connect to slashdot on port 80 via IPsec, can I?
If there is some way i can i can use IPSec to remove port restrictions or download caps (though time warner cable hasn't done that.. yet) i'm all for it, or ever just to secure my connections, but it doesn't seem like this is something you can just magicly turn on and make it work everywhere.
-Jon
I just put RH 7.2 on my laptop (compaq 1720US). the eepro100 drivers that come with it do a timeout deal constantly. I am hoping that this new kernel includes some fixes for it.
Previesly i appempted to get the latest official kernel (2.4.16) and make it work with redhat. I got as far as using kgcc and getting it to compile but i was unable to get xwindows working after that. (i think it might have had something to do with gartagp not working, not sure)
does anyone know of some simple steps to make RH work properly with the latest kernels?
-Jon
thanks for the 411 i was wondering about that.
just so everyone knows, the built in firewall in XP is very simple. it's a checkbox that essiencially says "enable firewall stuff", and then another dialog is enabled that lets you say what ports are open.
This is very good thing as i doubt very few users are interested in having ports open to the wild.
-Jon
cheers,
-Jon