Welcome Guest ( Log In | Register )



2 Pages V   1 2 >  
Reply to this topicStart new topic
> What Language Is Linux Written In ?
Jguy101
post Nov 16 2005, 05:15 AM
Post #1


Premium Member
Group Icon

Group: Members
Posts: 257
Joined: 28-January 05
Member No.: 2,370



I''ve been wondering lately, what language is Linux written in?

I'm interested in this, because my friend and I are considering writing our own distro. I know, it sounds like a bit of a feat, but one guy wrote MEPIS by playing with the Debian source code. I think the two of us could do something similar. tongue.gif
Go to the top of the page
 
+Quote Post
the empty calori...
post Nov 16 2005, 05:38 AM
Post #2


Premium Member
Group Icon

Group: Members
Posts: 254
Joined: 28-December 04
Member No.: 1,884



Linux I am not sure about, but I do know that UNIX is entirely written in C, and I'm willing to make a safe bet that Linux itself is also written in C.

Writing a distro seems to be more about packages included and the package management used than actually altering the source code. If I was going to creat a distro, I'd basically end up creating another Slackware.
Go to the top of the page
 
+Quote Post
qwijibow
post Nov 16 2005, 03:01 PM
Post #3


Way Out Of Control - You need a life :)
Group Icon

Group: Members
Posts: 1,366
Joined: 14-September 04
From: Nottingham England
Member No.: 570



You do not need to program to make a new distro.

however, for the sake of answering your question.....

Linux itself is written in C and Assembly.
GNU is written mostly in C.
Libraries are written in C and C++ (QT is written in C++, GTK i believe is C)
Boot scripts are USUALLY written in Bash Script, but there is no reason you couldnt use some other scripting language


To create a differant distro, here's what you need to do....

1) Decide on a package management system.
You can use a currently existing system such as RPM, Debian PKG, Gentoo's Portage, or Slackware's TGZ.

Alternativly, you could choose to have no package management system, and the user will needto compile everything from source (similar to Linux From Scratch)

OR Ideally, Program your own package management system (the language of your choice)

2) The Kernel....
Most distro's patch the vanilla linux kernel. For example, Gentoo has many krnels available, some patched to be optimised towards desktop use, some optimised for server use.

You need to decide on what makes your distro differant / beter than other distro's and patch the kernel accordingly.

For example, you may decide that disk IO is more important that disk reliability on your distro, so you may want to patch your kernel with the experimental file system Reiser4.

Alternativly, you could use the kernel from anouther distro, for example the Gentoo kernel for performance, or the Redhat kernel for a more server oriented kernel.

Alternativly, you could just use the un-patched vanilla linux kernel from kernel.org

3) Boot scripts.
Many disto's use differant methods for selecting what scripts are executed dureing boot up.
Slackware just executes every script that has executable permissions.

Redhat / Fedora executes every script that has a symbolic link in the runlevel folder.

Gentoo uses a tool called rc-update,

Either use a currently existing method, or create your own method.

4) Create an Install CD.
This doesnt have to be complicated.
a simple install CD could be a simpl bootable CD, that just coppies a default install folder to the root of the hard disk, and installs GRUB to the MBR.


Their are2 reasons i can think of for creating a distro...
1) for fun and learning
2) because there are no distro's that work exactly the way you like.

For help getting started, you may want to look at Linux From Scratch.

http://www.linuxfromscratch.org/

this is a book with step by step instructions on how to start with a completely empty hard disk, and download and compile a full linux distro.

the end result is a completely customised, lightning fast minimal distro.
then books like Beyond Linux From Scratch will help you turn this into a full OS with all the features of any top quality distro.

Many people create there own distro's using LFS as a base to work from.

Enjoy.
Go to the top of the page
 
+Quote Post
vizskywalker
post Nov 16 2005, 07:25 PM
Post #4


Techno-Necromancer
Group Icon

Group: Members
Posts: 1,018
Joined: 13-January 05
From: The Net
Member No.: 2,127



Like all OSes, Linux is written in any programming language someone who adds to it rights in. Since OS kernels are compiled, the used language doesn't matter. However, most OSes are written in Assembly and C++.

~Viz
Go to the top of the page
 
+Quote Post
Jguy101
post Nov 17 2005, 01:24 AM
Post #5


Premium Member
Group Icon

Group: Members
Posts: 257
Joined: 28-January 05
Member No.: 2,370



Ooh, that Linux From Scratch site looks like it'd help a lot...thanks, Qwijibow! biggrin.gif
Go to the top of the page
 
+Quote Post
hatim
post Nov 17 2005, 09:24 AM
Post #6


Advanced Member
Group Icon

Group: Members
Posts: 196
Joined: 17-June 05
From: Topi,Swabi,NWFP,Pakistan
Member No.: 6,301



Well i would recomend that instead of making your own distribution , you should focus on maintainng an already established distribution. Alot of distributions require maintainers as people leave as they dont have time to contribute . Like Danial Robbins , founder of Gentoo....he had a family to take care of..but he did take a job at Microsoft :S

Good Distros to contribute are Ubuntu , Fedora and Gentoo as they have a very strong community based program.
Go to the top of the page
 
+Quote Post
xboxrulz
post Nov 17 2005, 10:05 PM
Post #7


Colonel Panic
Group Icon

Group: [MODERATOR]
Posts: 2,880
Joined: 25-March 05
From: Toronto, Ontario, Canada
Member No.: 3,233
myCENTs:92.74



Hatim is right, there are a surplus of Linux distributions out there already. Too much is NOT a good idea. Try maintaining Ubuntu, OpenSuSE.

xboxrulz
Go to the top of the page
 
+Quote Post
PureHeart
post Nov 18 2005, 01:50 AM
Post #8


Premium Member
Group Icon

Group: Members
Posts: 209
Joined: 7-October 05
From: Đà Nẵng City - Việt Nam
Member No.: 8,966



And for the ones that' not a developer. Contributing by testing the new software and report the bugs.

If you're very familiar with a distro, you may also help others on the forum, guide them to the Open Source World.
Go to the top of the page
 
+Quote Post
qwijibow
post Nov 18 2005, 09:45 AM
Post #9


Way Out Of Control - You need a life :)
Group Icon

Group: Members
Posts: 1,366
Joined: 14-September 04
From: Nottingham England
Member No.: 570



Its amasing, but this thing seems to happen all the time in the Linux forum.

A question is asked, but instead of beeing answered, they get an alien surgestion.

"Q: How do i create a new distro ?"
"A: Use Ubuntu"

"Q: Does Linux support brand X wireless network"
"A: I dont Know, use Ubuntu"

"Q: Whats the capital of Scotland?"
"A: Ubuntu"

Lol. If only this site had a humour section.

Seriously though.....

Go for Linux From Scratch, or google for "Meta Distribution"
a Meta Distribution is a bit like a distro used for creating s custom distro ( gentoo smile.gif yipee )
Go to the top of the page
 
+Quote Post
xboxrulz
post Nov 19 2005, 05:42 AM
Post #10


Colonel Panic
Group Icon

Group: [MODERATOR]
Posts: 2,880
Joined: 25-March 05
From: Toronto, Ontario, Canada
Member No.: 3,233
myCENTs:92.74



lol, everyone (well, mainly newbs) would just tell u to use Ubuntu. I can tell them to use any existing ones and tell them to help further develop it.

xboxrulz
Go to the top of the page
 
+Quote Post

2 Pages V   1 2 >
Reply to this topicStart new topic

Collapse

> Similar Topics

Topics Topics
  1. Running Linux on slow computers(12)
  2. Now Linux is ease(9)
  3. Linux SuSE detec you all hareware(2)
  4. You can Play now in Linux(26)
  5. What's The Difference Between Linux And Unix?!?(18)
  6. Where To Find Notepad++ For Linux ?(37)
  7. What Made You Switch To Linux?(61)
  8. Psybnc - Howto(4)
  9. Looking For Linux(34)
  10. Virtualization In Linux: A Review Of Four Software Choices(4)
  11. How To Install Linux Without A CD or DVD?(11)
  12. What Softwares Should I Get To Linux?(6)
  13. Diablo 2 In Linux?(10)
  14. Linux?(3)
  15. What Is Linux(2)
  1. So, I Want To Try Out Linux.(9)
  2. How To Play Music And Movie In Linux? Which Is The Good One?.(6)
  3. Some Usefull Linux Basic Commands And Utilities. Please Add To This List If You Know One.(0)
  4. How To Copy File & Folders From Linux To Windows?.(12)
  5. Access Linux Box From Windows Machine- Putty Tool(2)
  6. Linux For Beginners- Easy To Install(16)
  7. Linux Basic Command - For Storing Compilation Error To File(1)
  8. Choice Of Motherboard For Linux Virtualization(5)
  9. Why Linux?(23)
  10. Which Linux Version For Newbies?(14)
  11. Linux Software Installation Help(2)
  12. I Want To Get Linux, Which One Is Best?(6)
  13. When And What Is Your First Linux Experience?(4)


 



- Lo-Fi Version Time is now: 4th December 2008 - 12:39 AM