FiringSquad: Home of the Hardcore Gamer - Games, Hardware, Reviews and NewsSubmit your own or view users' CPU overclocking results!

  
 Home   News   THE MATRIX   Deals   Hardware   Games   Features   Media   Products   Forums   FS China 
AddThis Social Bookmark Button

Home : Features : Interviews : John Carmack Interview
» Join the Greatest Gaming Community NOW! (It's free)

Already a member? Login
 



Random Gallery >> 
Click to view high-res Image!
ARMA 3 February 2012 Screenshots [4] (0)

My Entry For The Contest. (6) by D4rk Force
[FX] 3-Screen Effect - Guide (part-3) (0) by nGAGE
[FX] 3-Screen Effect - Guide (part-2) (0) by nGAGE
The Nvidia "Crank That S#!T Up" Quiz Show! (21) by mohawkade
Drink That S#!t Up! (14) by p4l1ndr0m3
HOW I CRANK THAT S#!T UP!! (4) by nvidia4life
Blow That S#!t Up! (8) by Synchronous Failure
Crankin' it up today... and tomorrow! (8) by Slipdisk
Crank That S#!t Up! ENTRY :) (2) by CamoDaGreat
My crank that S#!t Up entry! (13) by zin_onos

More Blogs >>




John Carmack Interview
February 09, 2000   Bob CalBear Colayco > [View My Other Articles]
Product Info | User Reviews | Article Images | Image Gallery | Comments | Forum Thread
On Open Source

FS: Most people would say you're one of the world's foremost gaming engineers. Do you think that in this world that there's enough of a range of tasks and depth to keep you intrigued for years to come?

John: Sure, there are a lot of different things. Right now, I'm spending more of my time in this lull or break, working on some things in Linux. One of the things I've done is written two 3D drivers for Linux or done a good chunk of the coding on them. That's useful for me as a developer, because I certainly do the high level stuff, the API level programming, but it's also good to go ahead and take it underneath that. Doing some implementation level stuff on the device driver down to programming the hardware gives me more scope, looking at things through the entire process. There are a lot of programmers who only know things from the top and don't realize why things are sometimes the way they are because of the structure that's "invisible" to them.

One of the other things that I'm considering doing is (because I like knowing things very clearly from the highest to the lowest level) spending some time implementing my own network stack for the research and the learning experience. I've also got some experiments I want to try, finding out how much overhead the operating system actually imposes on the routing time and queuing things down to a serial driver level and a packet driver level. There's some information that I'd like to get from below the layers that you're normally communicating with.

FS: Just in Linux or Windows and Mac also?

John: Well the thing is that it's just easier to do under Linux because you've got the ability to take anything you want out. While Linux is clearly not ready for replacing Windows on people's desktops, there is something fundamentally cool there.

The whole way I got into this is that someone had written a Linux driver for the Matrox cards. I had been reading about it for a while. Apparently they had it working barely with Quake 3. So I finally got around to downloading it and checking it out. I was pretty impressed by how well it worked. It was slow but it was pretty nearly feature complete, good quality implementation. But there was this really obvious bug with the way textures were swapping. They were swapping most recently used instead of least recently so you'd see it thrash on the screen.

I knew exactly what it was doing so I said "OK, this has the source code available." So I figured out how to download it, get access to the CVS repository and all that, worked my way through the code, found the bug and fixed it! That's just fundamentally neat.

The corollary of that is that Apple had exactly that same bug in their driver for a while. So here we had a case of the same bug appearing in two drivers, but the Linux one I was able to just go in and fix it. While there are certainly a lot of barriers to entry on a lot of levels with that, it's nice to have that ability. Fundamentally if you know that if you're working on this system that's all open source, if anything annoys you enough, you can spend the time to go fix it yourself. You don't have to wait for anyone. You don't have to ask nicely for it, or wait for a patch.

It's not usually cost effective time wise to go do it. But if something's really pissing you off, you just go find the code and fix it and that's really cool.

Back! Carmack the dungeon master?     More on Linux Next!
Blog + Share: Digg Del.icio.us Reddit SU furl • More: AddThis Social Bookmark Button
Send This Article to a Friend!  
Table of Contents
  Print Entire Article  

MATRIX CONTENT » RANDOM MEDIA BLOG More Blogs >>
No ratings yet
» Please rate this
Read this Media-Blog entry!» Crank It Up! (11)
by Kilos (6) Talk with this user on their Shout Box (My other blogs) Posted 18 months ago


 Latest Headlines
PC Game Sales for Tuesday, February 14th (0)
Ravaged dev diaries show the indie shooter's vehicles (0)
New Mass Effect 3 teaser trailer, "Take Earth Back" (0)
Crusader Kings 2 launch trailer sets us up for intrigue (0)
New Sins of a Solar Empire: Rebellion teaser trailer (0)
Today's News >>
Today's Siteseeing >>


 Table of Contents


 Random Link
Matrox Press release on G400 Linux drivers and John Carmack's contributions


FiringSquad is powered by... Back to Top Site MapContact UsAdvertise With Us Privacy StatementAbout Us  
News RSSSiteseeing RSSArticle RSS   © 1998-2012 FS Media, Inc. All Rights Reserved