ProgrammingThis forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
View Poll Results: Which nix is good for academic purpose
Minix
3
27.27%
Linux
8
72.73%
FreeBSD
5
45.45%
Multiple Choice Poll. Voters: 11. You may not vote on this poll
Hi,
I have operating system course next semester. I wanted to cover some unix like operating system(kernel level) for getting practical experience too. I have good command on C and assembly(AT &T). However I was confused which *nix to choose for this purpose. After some research I found these good options:
1.MINIX
2.Linux kernel
3.FreeBSD
Kindly suggest which one will suit most for me. Also if you have other options in mind do suggest those too. Following are important factors which might help in decision:
1.Ease of understanding.
2.Future use for me.
3.Some possibility of adding some code from my side to experiment with.
Thanks in advance! I hope this is correct forum to post in.
Minix isn't really a serious option anymore, linux or bsd are your better options, that being said linux is in more common use, bsd has a more flexible license.
Edit: It's also worth noting that in the bsd/linux arena you have to choose distribution also. Based on the criteria you specified I would suggest linux-- perhaps ubuntu or fedora for desktop (deb or rpm respectively as package source) or for server debian or centos (deb or rpm).
I would try on your desktop first and go the Ubuntu route. YMMV.
Minix isn't really a serious option anymore, linux or bsd are your better options, that being said linux is in more common use, bsd has a more flexible license.
Edit: It's also worth noting that in the bsd/linux arena you have to choose distribution also. Based on the criteria you specified I would suggest linux-- perhaps ubuntu or fedora for desktop (deb or rpm respectively as package source) or for server debian or centos (deb or rpm).
I would try on your desktop first and go the Ubuntu route. YMMV.
Thaks a ton for reply rweaver!
Yes its true even I don't see any future use for Minix. As far as linux distro goes I am sticking with slackware for some time(got introduced to it in this forum ). However I am more interested in knowing about kernel level programming rather than system administration or configuration, like working/implementation of process scheduler, different file system implementation etc. Thus I think all linux distro runs same or variation of linux kernel. Its the kernel I want to learn about. Still thanks for your kind reply.
Hi,
I have operating system course next semester. I wanted to cover some unix like operating system(kernel level) for getting practical experience too. I have good command on C and assembly(AT &T). However I was confused which *nix to choose for this purpose. After some research I found these good options:
1.MINIX
2.Linux kernel
3.FreeBSD
Kindly suggest which one will suit most for me. Also if you have other options in mind do suggest those too. Following are important factors which might help in decision:
1.Ease of understanding.
2.Future use for me.
3.Some possibility of adding some code from my side to experiment with.
Thanks in advance! I hope this is correct forum to post in.
Thanks for reply!
But couldn't understand it. So then should I use it for study? Obviously understanding is my greater priority then the future. However it should be at least in line with the other major players(like linux) so that I can switch them to afterward.
There are significant architectural differences between Minix and Linux that have led to the exchange of heated words. Minix is a micro kernel and pushes as much as it can into user space, whilst Linux is a monolithic kernel which, well, includes much more in the kernel .
Which is best for you? First you could ask your instructor. Do you know which text you will be using?
Minix is used a lot in education to explain the concepts of the operating system. Typically the version used is Minix 1 (For which the text book Operating Systems: Design and Implementation by Andrew Tanenbaum was written) Minix is now on version 3 and is targeting embedded systems and applications requiring high reliability. Which may explain to you the slightly cynical comment from fruttenboel, it is very good.
There are significant architectural differences between Minix and Linux that have led to the exchange of heated words. Minix is a micro kernel and pushes as much as it can into user space, whilst Linux is a monolithic kernel which, well, includes much more in the kernel .
Thanks for the clear explanation. Can you give similar one-two line brief about freebsd also. I checked and found it also monolithic(well may be wrong as newbie :-)) and its an complete OS.
Quote:
Which is best for you? First you could ask your instructor. Do you know which text you will be using?
I already asked, text is Silberschatz,Galvin - Operating System Concepts and no practical OS is covered with it.Its my own interest to cover some practical e.g. alongside.
Quote:
Minix is used a lot in education to explain the concepts of the operating system. Typically the version used is Minix 1 (For which the text book Operating Systems: Design and Implementation by Andrew Tanenbaum was written) Minix is now on version 3 and is targeting embedded systems and applications requiring high reliability. Which may explain to you the slightly cynical comment from fruttenboel, it is very good.
OK. I think using minix 3 will be good as its atleast used in some practical use. Thanks again for your detailed reply.
I would recommend using Linux because Understanding the Linux Kernel, third edition, by Bovet and Cesati is a currently available text that was actually developed from the curriculum of an operating system course. However, if I were planning such a course I might use it as a secondary text, with some other text that covers operating systems in a more general and generic way as the primary material.
(EDIT follows)
Maybe Minix would be a better choice because Tannenbaum created it specifically for educational purposes, and because it is intentionally a minimalist design, which would be easier to cover in the limited time available in a school term. Despite rumors to the contrary, Minix is not actually dead.
I also cannot ignore any recommendations by posixculprit. Admitting my own ignorance of BSD, and seeing how many parts of Linux are not actually as easily followed as I would like, I would not dismiss his assertion that the BSD source is clear and elegant.
Last edited by ArthurSittler; 06-02-2010 at 01:50 PM.
Reason: second thoughts
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.