Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.unix.programmer > #1216 > unrolled thread
| Started by | Stanley Rice <heconghui@gmail.com> |
|---|---|
| First post | 2011-09-06 00:41 -0700 |
| Last post | 2011-09-07 22:01 -0700 |
| Articles | 16 — 6 participants |
Back to article view | Back to comp.unix.programmer
Any suggestions for Linux Beginners stepping to Linux kernel. Stanley Rice <heconghui@gmail.com> - 2011-09-06 00:41 -0700
Re: Any suggestions for Linux Beginners stepping to Linux kernel. Ian Collins <ian-news@hotmail.com> - 2011-09-06 22:00 +1200
Re: Any suggestions for Linux Beginners stepping to Linux kernel. Rainer Weikusat <rweikusat@mssgmbh.com> - 2011-09-06 13:15 +0100
Re: Any suggestions for Linux Beginners stepping to Linux kernel. Ian Collins <ian-news@hotmail.com> - 2011-09-07 08:44 +1200
Re: Any suggestions for Linux Beginners stepping to Linux kernel. Rainer Weikusat <rweikusat@mssgmbh.com> - 2011-09-06 22:11 +0100
Re: Any suggestions for Linux Beginners stepping to Linux kernel. Ian Collins <ian-news@hotmail.com> - 2011-09-07 09:18 +1200
Re: Any suggestions for Linux Beginners stepping to Linux kernel. Rainer Weikusat <rweikusat@mssgmbh.com> - 2011-09-07 14:22 +0100
Re: Any suggestions for Linux Beginners stepping to Linux kernel. Stanley Rice <heconghui@gmail.com> - 2011-09-07 01:03 -0700
Re: Any suggestions for Linux Beginners stepping to Linux kernel. Rainer Weikusat <rweikusat@mssgmbh.com> - 2011-09-06 13:11 +0100
Re: Any suggestions for Linux Beginners stepping to Linux kernel. Stanley Rice <heconghui@gmail.com> - 2011-09-07 01:11 -0700
Re: Any suggestions for Linux Beginners stepping to Linux kernel. "onixie@gmail.com" <onixie@gmail.com> - 2011-09-07 22:09 -0700
Re: Any suggestions for Linux Beginners stepping to Linux kernel. Rainer Weikusat <rweikusat@mssgmbh.com> - 2011-09-08 20:16 +0100
Re: Any suggestions for Linux Beginners stepping to Linux kernel. Volker Birk <bumens@dingens.org> - 2011-09-06 12:50 +0000
Re: Any suggestions for Linux Beginners stepping to Linux kernel. Paul <nospam@needed.com> - 2011-09-06 13:07 -0400
Re: Any suggestions for Linux Beginners stepping to Linux kernel. Stanley Rice <heconghui@gmail.com> - 2011-09-07 01:26 -0700
Re: Any suggestions for Linux Beginners stepping to Linux kernel. "onixie@gmail.com" <onixie@gmail.com> - 2011-09-07 22:01 -0700
| From | Stanley Rice <heconghui@gmail.com> |
|---|---|
| Date | 2011-09-06 00:41 -0700 |
| Subject | Any suggestions for Linux Beginners stepping to Linux kernel. |
| Message-ID | <2a0bf9fc-e9d7-4db6-b8aa-f6695465bea7@m3g2000pri.googlegroups.com> |
I am sorry whether it is appropriate to post it here. I am a Linux beginner currently with some basic knowledge of C programming Language and shell scripting and some Linux daily usage. I want to have a better understanding of Linux as well as try to improve my programming skill. But I don't know how to step forward. I am impressed with the Linux and Unix philosophy that "make each program do one thing well", "small is beautiful". I try to analyse the Linux kernel before, reading some books about Linux kernel, but then I gave it up soon as it was quite difficult for me. These days I try to read some source code of coreutils package, including the source code of ls, cat, cp, mv, etc command. But I found that it is a bit difficult for me currently. I hope you can give me some tips about how to step forward. Recommend some books or it there any open project about it? Thanks!
[toc] | [next] | [standalone]
| From | Ian Collins <ian-news@hotmail.com> |
|---|---|
| Date | 2011-09-06 22:00 +1200 |
| Message-ID | <9cm9amF72aU4@mid.individual.net> |
| In reply to | #1216 |
On 09/ 6/11 07:41 PM, Stanley Rice wrote: > I am sorry whether it is appropriate to post it here. I am a Linux > beginner currently with some basic knowledge of C programming Language > and shell scripting and some Linux daily usage. I want to have a > better understanding of Linux as well as try to improve my programming > skill. But I don't know how to step forward. > > I am impressed with the Linux and Unix philosophy that "make each > program do one thing well", "small is beautiful". I try to analyse the > Linux kernel before, reading some books about Linux kernel, but then I > gave it up soon as it was quite difficult for me. These days I try to > read some source code of coreutils package, including the source code > of ls, cat, cp, mv, etc command. But I found that it is a bit > difficult for me currently. > > I hope you can give me some tips about how to step forward. Recommend > some books or it there any open project about it? A realistic bit of advice is don't. Kernel code is notoriously obtuse. If you have limited C knowledge, you will get lost very fast. Kernel code is not a good source to study C, unless you want to pick up bad habits early. Learn C, write you own applications and then revisit kernel land. -- Ian Collins
[toc] | [prev] | [next] | [standalone]
| From | Rainer Weikusat <rweikusat@mssgmbh.com> |
|---|---|
| Date | 2011-09-06 13:15 +0100 |
| Message-ID | <87mxehq32g.fsf@sapphire.mobileactivedefense.com> |
| In reply to | #1217 |
Ian Collins <ian-news@hotmail.com> writes: [...] > Kernel code is not a good source to study C, unless you want to > pick up bad habits early. Care to name some of these bad habits, together with an explanation why you consider them to be bad habits?
[toc] | [prev] | [next] | [standalone]
| From | Ian Collins <ian-news@hotmail.com> |
|---|---|
| Date | 2011-09-07 08:44 +1200 |
| Message-ID | <9cnf25F72aU6@mid.individual.net> |
| In reply to | #1220 |
On 09/ 7/11 12:15 AM, Rainer Weikusat wrote: > Ian Collins<ian-news@hotmail.com> writes: > > [...] > >> Kernel code is not a good source to study C, unless you want to >> pick up bad habits early. > > Care to name some of these bad habits, together with an explanation > why you consider them to be bad habits? Writing gcc specific code. -- Ian Collins
[toc] | [prev] | [next] | [standalone]
| From | Rainer Weikusat <rweikusat@mssgmbh.com> |
|---|---|
| Date | 2011-09-06 22:11 +0100 |
| Message-ID | <87liu1s7e3.fsf@sapphire.mobileactivedefense.com> |
| In reply to | #1224 |
Ian Collins <ian-news@hotmail.com> writes: > On 09/ 7/11 12:15 AM, Rainer Weikusat wrote: >> Ian Collins<ian-news@hotmail.com> writes: >> >> [...] >> >>> Kernel code is not a good source to study C, unless you want to >>> pick up bad habits early. >> >> Care to name some of these bad habits, together with an explanation >> why you consider them to be bad habits? > > Writing gcc specific code. 'Worrying about portability' without portability being a requirement is a bad habit because it means 'doing more work now because of $something which might happen in future'.
[toc] | [prev] | [next] | [standalone]
| From | Ian Collins <ian-news@hotmail.com> |
|---|---|
| Date | 2011-09-07 09:18 +1200 |
| Message-ID | <9cnh0kF72aU8@mid.individual.net> |
| In reply to | #1225 |
On 09/ 7/11 09:11 AM, Rainer Weikusat wrote: > Ian Collins<ian-news@hotmail.com> writes: >> On 09/ 7/11 12:15 AM, Rainer Weikusat wrote: >>> Ian Collins<ian-news@hotmail.com> writes: >>> >>> [...] >>> >>>> Kernel code is not a good source to study C, unless you want to >>>> pick up bad habits early. >>> >>> Care to name some of these bad habits, together with an explanation >>> why you consider them to be bad habits? >> >> Writing gcc specific code. > > 'Worrying about portability' without portability being a requirement > is a bad habit because it means 'doing more work now because of > $something which might happen in future'. That's all well and good for an experienced programmer, but a novice should learn standard C, not GNU C. If a novice does want to study kernel code, they can always try one that tried to avoid compiler specifics (such as OpenSolaris). -- Ian Collins
[toc] | [prev] | [next] | [standalone]
| From | Rainer Weikusat <rweikusat@mssgmbh.com> |
|---|---|
| Date | 2011-09-07 14:22 +0100 |
| Message-ID | <877h5k32sv.fsf@sapphire.mobileactivedefense.com> |
| In reply to | #1226 |
Ian Collins <ian-news@hotmail.com> writes: > On 09/ 7/11 09:11 AM, Rainer Weikusat wrote: >> Ian Collins<ian-news@hotmail.com> writes: >>> On 09/ 7/11 12:15 AM, Rainer Weikusat wrote: >>>> Ian Collins<ian-news@hotmail.com> writes: >>>> >>>> [...] >>>> >>>>> Kernel code is not a good source to study C, unless you want to >>>>> pick up bad habits early. >>>> >>>> Care to name some of these bad habits, together with an explanation >>>> why you consider them to be bad habits? >>> >>> Writing gcc specific code. >> >> 'Worrying about portability' without portability being a requirement >> is a bad habit because it means 'doing more work now because of >> $something which might happen in future'. > > That's all well and good for an experienced programmer, but a novice > should learn standard C, not GNU C. If a novice does want to study > kernel code, they can always try one that tried to avoid compiler > specifics (such as OpenSolaris). I actually like to clarify/ narrow my statement somewhat: While I'm completely convinced that features exist in order to be exploited when they are useful (random example: sufficiently recent versions of GCC provide a hardware-independent way of using memory barriers), I'd agree with the notion that 'unconciously writing xyz specific code' is a bad habit.
[toc] | [prev] | [next] | [standalone]
| From | Stanley Rice <heconghui@gmail.com> |
|---|---|
| Date | 2011-09-07 01:03 -0700 |
| Message-ID | <746570a6-534d-4a9e-a98f-df885784405b@n12g2000yqh.googlegroups.com> |
| In reply to | #1217 |
On Sep 6, 6:00 pm, Ian Collins <ian-n...@hotmail.com> wrote: > On 09/ 6/11 07:41 PM, Stanley Rice wrote: > > > > > > > > > > > I am sorry whether it is appropriate to post it here. I am a Linux > > beginner currently with some basic knowledge of C programming Language > > and shell scripting and some Linux daily usage. I want to have a > > better understanding of Linux as well as try to improve my programming > > skill. But I don't know how to step forward. > > > I am impressed with the Linux and Unix philosophy that "make each > > program do one thing well", "small is beautiful". I try to analyse the > > Linux kernel before, reading some books about Linux kernel, but then I > > gave it up soon as it was quite difficult for me. These days I try to > > read some source code of coreutils package, including the source code > > of ls, cat, cp, mv, etc command. But I found that it is a bit > > difficult for me currently. > > > I hope you can give me some tips about how to step forward. Recommend > > some books or it there any open project about it? > > A realistic bit of advice is don't. > > Kernel code is notoriously obtuse. If you have limited C knowledge, you > will get lost very fast. Kernel code is not a good source to study C, > unless you want to pick up bad habits early. > > Learn C, write you own applications and then revisit kernel land. > > -- > Ian Collins Great thanks for replying me. I agree with you that the kernel source is not appropriate to the novice, as I found that the framework is quite complex and there are a lot of macros that are hard to understand. I think I should have a better understanding of C. But, could you give me a more detail tips about how to learn C further, not just "writing". Thanks.
[toc] | [prev] | [next] | [standalone]
| From | Rainer Weikusat <rweikusat@mssgmbh.com> |
|---|---|
| Date | 2011-09-06 13:11 +0100 |
| Message-ID | <87r53tq3aj.fsf@sapphire.mobileactivedefense.com> |
| In reply to | #1216 |
Stanley Rice <heconghui@gmail.com> writes: > I am sorry whether it is appropriate to post it here. I am a Linux > beginner currently with some basic knowledge of C programming Language > and shell scripting and some Linux daily usage. I want to have a > better understanding of Linux as well as try to improve my programming > skill. But I don't know how to step forward. > > I am impressed with the Linux and Unix philosophy that "make each > program do one thing well", "small is beautiful". I try to analyse the > Linux kernel before, reading some books about Linux kernel, but then I > gave it up soon as it was quite difficult for me. These days I try to > read some source code of coreutils package, including the source code > of ls, cat, cp, mv, etc command. But I found that it is a bit > difficult for me currently. The 'classic' textbook would be http://www.informit.com/store/product.aspx?isbn=0201563177 Especially concerning Linux, a lot of this should probably be considered out of date by now. Another, more Linux-specific: http://nostarch.com/tlpi NB: I don't own this myself but the author is also maintaining the set of Linux manpages and this has (IMHO) improved them quite a bit. Generally: Don't try to learn about programming by reading code, read books and write code.
[toc] | [prev] | [next] | [standalone]
| From | Stanley Rice <heconghui@gmail.com> |
|---|---|
| Date | 2011-09-07 01:11 -0700 |
| Message-ID | <9334c330-6bcf-4eb9-93cb-23121059a073@v18g2000yqj.googlegroups.com> |
| In reply to | #1219 |
On Sep 6, 8:11 pm, Rainer Weikusat <rweiku...@mssgmbh.com> wrote: > Stanley Rice <hecong...@gmail.com> writes: > > I am sorry whether it is appropriate to post it here. I am a Linux > > beginner currently with some basic knowledge of C programming Language > > and shell scripting and some Linux daily usage. I want to have a > > better understanding of Linux as well as try to improve my programming > > skill. But I don't know how to step forward. > > > I am impressed with the Linux and Unix philosophy that "make each > > program do one thing well", "small is beautiful". I try to analyse the > > Linux kernel before, reading some books about Linux kernel, but then I > > gave it up soon as it was quite difficult for me. These days I try to > > read some source code of coreutils package, including the source code > > of ls, cat, cp, mv, etc command. But I found that it is a bit > > difficult for me currently. > > The 'classic' textbook would be > > http://www.informit.com/store/product.aspx?isbn=0201563177 > > Especially concerning Linux, a lot of this should probably be > considered out of date by now. Another, more Linux-specific: > > http://nostarch.com/tlpi > > NB: I don't own this myself but the author is also maintaining the set > of Linux manpages and this has (IMHO) improved them quite a bit. > > Generally: Don't try to learn about programming by reading code, read > books and write code. Thanks for replying me, Rainer. I read few chapters of Advanced Programming in the UNIX® Environment, it introduces some functions of Linux and some concepts of Linux, right? The code in each program is less than 200 lines and some body call it toy program. Is there any small project that is well constructed for novice to learn? Or, after I finish reading the books you recommended, where should I head to? Thanks. (Don't try to learn about programming by reading code, readbooks and write code. It is very impressive. Thanks again.)
[toc] | [prev] | [next] | [standalone]
| From | "onixie@gmail.com" <onixie@gmail.com> |
|---|---|
| Date | 2011-09-07 22:09 -0700 |
| Message-ID | <36948fa4-1197-4476-9d34-f682b042ffbb@m4g2000pri.googlegroups.com> |
| In reply to | #1229 |
On Sep 7, 4:11 pm, Stanley Rice <hecong...@gmail.com> wrote: > On Sep 6, 8:11 pm, Rainer Weikusat <rweiku...@mssgmbh.com> wrote: > > > > > > > > > > > Stanley Rice <hecong...@gmail.com> writes: > > > I am sorry whether it is appropriate to post it here. I am a Linux > > > beginner currently with some basic knowledge of C programming Language > > > and shell scripting and some Linux daily usage. I want to have a > > > better understanding of Linux as well as try to improve my programming > > > skill. But I don't know how to step forward. > > > > I am impressed with the Linux and Unix philosophy that "make each > > > program do one thing well", "small is beautiful". I try to analyse the > > > Linux kernel before, reading some books about Linux kernel, but then I > > > gave it up soon as it was quite difficult for me. These days I try to > > > read some source code of coreutils package, including the source code > > > of ls, cat, cp, mv, etc command. But I found that it is a bit > > > difficult for me currently. > > > The 'classic' textbook would be > > > http://www.informit.com/store/product.aspx?isbn=0201563177 > > > Especially concerning Linux, a lot of this should probably be > > considered out of date by now. Another, more Linux-specific: > > > http://nostarch.com/tlpi > > > NB: I don't own this myself but the author is also maintaining the set > > of Linux manpages and this has (IMHO) improved them quite a bit. > > > Generally: Don't try to learn about programming by reading code, read > > books and write code. > > Thanks for replying me, Rainer. > > I read few chapters of Advanced Programming in the UNIX® Environment, > it introduces some functions of Linux and some concepts of Linux, > right? > The code in each program is less than 200 lines and some body call it > toy program. Is there any small project that is well constructed for > novice to learn? Or, after I finish reading the books you recommended, > where should I head to? > > Thanks. > > (Don't try to learn about programming by reading code, readbooks and > write code. It is very impressive. Thanks again.) Toy program is just well constructed project for novice to learn. The difference between toy program and practical program is not language and technology itself. The major difference I think is the completeness of the code implementing a full function or system. But often such difference is just noise and distraction when you focus on language or technology itself.
[toc] | [prev] | [next] | [standalone]
| From | Rainer Weikusat <rweikusat@mssgmbh.com> |
|---|---|
| Date | 2011-09-08 20:16 +0100 |
| Message-ID | <874o0mrgiq.fsf@sapphire.mobileactivedefense.com> |
| In reply to | #1234 |
"onixie@gmail.com" <onixie@gmail.com> writes: > On Sep 7, 4:11 pm, Stanley Rice <hecong...@gmail.com> wrote: >> On Sep 6, 8:11 pm, Rainer Weikusat <rweiku...@mssgmbh.com> wrote: [...] >> > The 'classic' textbook would be >> >> > http://www.informit.com/store/product.aspx?isbn=0201563177 [...] >> I read few chapters of Advanced Programming in the UNIX® Environment, >> it introduces some functions of Linux and some concepts of Linux, >> right? >> The code in each program is less than 200 lines and some body call it >> toy program. [...] > Toy program is just well constructed project for novice to learn. The > difference between toy program and practical program is not language > and technology itself. The major difference I think is the > completeness of the code implementing a full function or system. IMHO, the difference is mainly that the 'toy program' was written to demonstrate what its author considered to be 'best practices' in a way he considered to be easily understood by readers. And that's not usually a concern when code is being written (more correctly, people usually claim that this would be a concern but in reality, they just use it as justification for the essentially arbitrary stylistic habits they happen to have formed for reasons entirely unknown to anyone but themselves. And more often than not, these habits are rather steganographic in nature -- make them simple appear complicated by elaborate, functionless decorations). But what Steven's considers to be best practices is IMHO very debatable: I don't think that hiding the actual API in a custom wrapper library is a good idea. It makes the code more difficult to understand for anyone but the people who happen to know the specific wrapper library being used and it means that 'the novice' will learn how to use the wrapper library instead of the API itself. But I was actually being serious with my remark in an earlier posting: Don't read code in order to learn programming. Read texts about programming and try to apply what you've read (insofar you understood why the author thought this was sensible _and_ agree with it) when writing code. If you don't understand something, don't try to ape it, wait until you either understand why it was a good idea or why not.
[toc] | [prev] | [next] | [standalone]
| From | Volker Birk <bumens@dingens.org> |
|---|---|
| Date | 2011-09-06 12:50 +0000 |
| Message-ID | <j454u4Uc7fL1@news.in-ulm.de> |
| In reply to | #1216 |
Stanley Rice <heconghui@gmail.com> wrote: > I hope you can give me some tips about how to step forward. Recommend > some books or it there any open project about it? Of course, Books of Richard Stevens can be of great value for learning UNIX programming. But to be honest: The best value for me gave playing around. Begin by trying to get a more plain UNIX distribution to work, i.e. NetBSD. Or, if you want to stay in the Leenoox world, first try to configure and compile your own kernel. Then start to read the scripts, from /etc/inittab or /etc/rc (if there are any left :-/ ) If you want to learn programming in the UNIX environment, try to write a simple filter program in C. Then try to give it command line options, including options which connects it to files and terminals. Then start to spawn processes by forking, and implement communication to them. Afterwards, implement that for TCP sockets. So you'll have a good introduction. What you program does, is not important – let it filter out every 0x42 Byte of any stream, as an example ;-) Yours, VB. -- Wenn Du für eine Leistung nichts bezahlst, bist Du nicht der Kunde, sondern die Ware.
[toc] | [prev] | [next] | [standalone]
| From | Paul <nospam@needed.com> |
|---|---|
| Date | 2011-09-06 13:07 -0400 |
| Message-ID | <j45k0j$l4b$1@dont-email.me> |
| In reply to | #1216 |
Stanley Rice wrote:
> I am sorry whether it is appropriate to post it here. I am a Linux
> beginner currently with some basic knowledge of C programming Language
> and shell scripting and some Linux daily usage. I want to have a
> better understanding of Linux as well as try to improve my programming
> skill. But I don't know how to step forward.
>
> I am impressed with the Linux and Unix philosophy that "make each
> program do one thing well", "small is beautiful". I try to analyse the
> Linux kernel before, reading some books about Linux kernel, but then I
> gave it up soon as it was quite difficult for me. These days I try to
> read some source code of coreutils package, including the source code
> of ls, cat, cp, mv, etc command. But I found that it is a bit
> difficult for me currently.
>
> I hope you can give me some tips about how to step forward. Recommend
> some books or it there any open project about it?
>
> Thanks!
http://www.gentoo.org/doc/en/gentoo-x86-quickinstall.xml
"Install a kernel source, compile it and install the kernel
time emerge gentoo-sources
cd /usr/src/linux
make menuconfig
time make -j2
make modules_install
cp arch/i386/boot/bzImage /boot/kernel
"
That's an example of a Linux environment, where you get to work with
the kernel. The "menuconfig" step, allows you to select what options
you want in your kernel. It's a lot of work to step through it, but
you'll only find the config errors in the distro by doing so. Menuconfig
eventually stores configuration info in the .config file.
If you're a real noob, there are also training wheels, in the form
of "genkernel". I think the previous method is easier to understand
than this is. But if you fail on your attempts to do it the previous
way, you can try this instead.
http://www.gentoo.org/doc/en/genkernel.xml
I did my first Gentoo installation, inside a VM, so I still had a working
computer while all of that was going on. It's pretty hard to learn
anything, if you're stuck looking at a text console and have no GUI or
web browser to work with. So for your first install, try working in a
Virtual Machine environment. I use Virtual PC 2007 in Microsoft Windows.
But there are other, better choices.
(Like perhaps VirtualBox...)
http://en.wikipedia.org/wiki/Comparison_of_platform_virtual_machines
HTH,
Paul
[toc] | [prev] | [next] | [standalone]
| From | Stanley Rice <heconghui@gmail.com> |
|---|---|
| Date | 2011-09-07 01:26 -0700 |
| Message-ID | <92e03b96-6768-49f2-88e7-fa271f660215@o15g2000vbe.googlegroups.com> |
| In reply to | #1222 |
On Sep 7, 1:07 am, Paul <nos...@needed.com> wrote: > Stanley Rice wrote: > > I am sorry whether it is appropriate to post it here. I am a Linux > > beginner currently with some basic knowledge of C programming Language > > and shell scripting and some Linux daily usage. I want to have a > > better understanding of Linux as well as try to improve my programming > > skill. But I don't know how to step forward. > > > I am impressed with the Linux and Unix philosophy that "make each > > program do one thing well", "small is beautiful". I try to analyse the > > Linux kernel before, reading some books about Linux kernel, but then I > > gave it up soon as it was quite difficult for me. These days I try to > > read some source code of coreutils package, including the source code > > of ls, cat, cp, mv, etc command. But I found that it is a bit > > difficult for me currently. > > > I hope you can give me some tips about how to step forward. Recommend > > some books or it there any open project about it? > > > Thanks! > > http://www.gentoo.org/doc/en/gentoo-x86-quickinstall.xml > > "Install a kernel source, compile it and install the kernel > > time emerge gentoo-sources > cd /usr/src/linux > make menuconfig > time make -j2 > make modules_install > cp arch/i386/boot/bzImage /boot/kernel > " > > That's an example of a Linux environment, where you get to work with > the kernel. The "menuconfig" step, allows you to select what options > you want in your kernel. It's a lot of work to step through it, but > you'll only find the config errors in the distro by doing so. Menuconfig > eventually stores configuration info in the .config file. > > If you're a real noob, there are also training wheels, in the form > of "genkernel". I think the previous method is easier to understand > than this is. But if you fail on your attempts to do it the previous > way, you can try this instead. > > http://www.gentoo.org/doc/en/genkernel.xml > > I did my first Gentoo installation, inside a VM, so I still had a working > computer while all of that was going on. It's pretty hard to learn > anything, if you're stuck looking at a text console and have no GUI or > web browser to work with. So for your first install, try working in a > Virtual Machine environment. I use Virtual PC 2007 in Microsoft Windows. > But there are other, better choices. > > (Like perhaps VirtualBox...)http://en.wikipedia.org/wiki/Comparison_of_platform_virtual_machines > > HTH, > Paul Thank for replying, Paul. I am sorry that I haven't download Gentoo and install it. Before that, I wander what is the difference between working in my current Linux distribution, that is Ubuntu, and the Gentoo.
[toc] | [prev] | [next] | [standalone]
| From | "onixie@gmail.com" <onixie@gmail.com> |
|---|---|
| Date | 2011-09-07 22:01 -0700 |
| Message-ID | <53ef4044-e539-45fa-96c8-fdebf9d14402@y39g2000prd.googlegroups.com> |
| In reply to | #1230 |
I installed my gentoo from my ubuntu using chroot method :) I like both. ubuntu often distributes software in binary although you can get the source. And it has good out-of-box experience that many software have installed already. gentoo is that you have to configure (according your needs) and build every software (including kernel) from source code. since it distrubutes source code and using bsd-like portage system to configure and built them. It has only skeleton system after first install which enables you boot into an command line environment with few software such as coreutils and portage system. (other software (often include X and desktop environment) should be built and installed by yourself ) so if you are a programmer, you should like gentoo. On Sep 7, 4:26 pm, Stanley Rice <hecong...@gmail.com> wrote: > On Sep 7, 1:07 am, Paul <nos...@needed.com> wrote: > > > > > > > > > > > Stanley Rice wrote: > > > I am sorry whether it is appropriate to post it here. I am a Linux > > > beginner currently with some basic knowledge of C programming Language > > > and shell scripting and some Linux daily usage. I want to have a > > > better understanding of Linux as well as try to improve my programming > > > skill. But I don't know how to step forward. > > > > I am impressed with the Linux and Unix philosophy that "make each > > > program do one thing well", "small is beautiful". I try to analyse the > > > Linux kernel before, reading some books about Linux kernel, but then I > > > gave it up soon as it was quite difficult for me. These days I try to > > > read some source code of coreutils package, including the source code > > > of ls, cat, cp, mv, etc command. But I found that it is a bit > > > difficult for me currently. > > > > I hope you can give me some tips about how to step forward. Recommend > > > some books or it there any open project about it? > > > > Thanks! > > >http://www.gentoo.org/doc/en/gentoo-x86-quickinstall.xml > > > "Install a kernel source, compile it and install the kernel > > > time emerge gentoo-sources > > cd /usr/src/linux > > make menuconfig > > time make -j2 > > make modules_install > > cp arch/i386/boot/bzImage /boot/kernel > > " > > > That's an example of a Linux environment, where you get to work with > > the kernel. The "menuconfig" step, allows you to select what options > > you want in your kernel. It's a lot of work to step through it, but > > you'll only find the config errors in the distro by doing so. Menuconfig > > eventually stores configuration info in the .config file. > > > If you're a real noob, there are also training wheels, in the form > > of "genkernel". I think the previous method is easier to understand > > than this is. But if you fail on your attempts to do it the previous > > way, you can try this instead. > > >http://www.gentoo.org/doc/en/genkernel.xml > > > I did my first Gentoo installation, inside a VM, so I still had a working > > computer while all of that was going on. It's pretty hard to learn > > anything, if you're stuck looking at a text console and have no GUI or > > web browser to work with. So for your first install, try working in a > > Virtual Machine environment. I use Virtual PC 2007 in Microsoft Windows. > > But there are other, better choices. > > > (Like perhaps VirtualBox...)http://en.wikipedia.org/wiki/Comparison_of_platform_virtual_machines > > > HTH, > > Paul > > Thank for replying, Paul. I am sorry that I haven't download Gentoo > and install it. Before that, I wander what is the difference between > working in my current Linux distribution, that is Ubuntu, and the > Gentoo.
[toc] | [prev] | [standalone]
Back to top | Article view | comp.unix.programmer
csiph-web