BSD Kernel Vs. Ядро Linux? [закрыто]
Хотите улучшить этот вопрос? Обновите вопрос, чтобы он был сосредоточен только на одной проблеме, отредактировав этот пост .
Закрыто 5 лет назад .
Я хотел знать с технической точки зрения; в чем разница между BSD Kernel и Linux Kernel .
В Linux мы можем скачать исходное ядро, затем patch оно make и make modules оно. Даже у нас есть несколько инструментов для редактирования ядра, config таких как menuconfig , xconfig и .
Но я не смог найти такого обширного поля на BSD. Во-первых, я могу скачать BSD kernel ? Как я мог настроить это? а также .
Итак, что я спрашиваю: (без ссылки на происхождение и этимологию)
- Является ли Kernel в каждом случае (в) зависимым от распределения?
- Способы настройки каждого Kernel и инструменты, доступные для работы?
- Могут ли быть выполнены какие-либо патч-работы в каждом конкретном случае?
- Доступность kernel вне сферы распространения? ( Kernel Sources )?
- Аромат Kernels доступен в каждом конкретном случае ( X??BSD / Linux ) Нравится XEN/Vmware/GEN ?
Ну, во-первых, вы говорите о BSD, как будто они только один. Технически, я полагаю, есть оригинал, из которого они все были получены — последний выпуск был в 1995 году. Поиск «4.4-Lite2» находит несколько копий, вы можете узнать больше об этом в статье Wikipedia Berkeley Software Distribution .
Производные от него — среди многих вещей * — FreeBSD, OpenBSD и NetBSD. Все три с открытым исходным кодом, и вы можете получить их исходный код. Кто-то, кто говорит, что BSD сегодня, вероятно, ссылается на одного из них.
Если вы хотите быстро просмотреть их, есть перекрестная ссылка на ядро FreeBSD и Linux . Этот сайт также имеет несколько других Unix-подобных ядер.
Однако в отличие от Linux, который существует как отдельный проект ядра, ядра BSD часто являются частью более крупного проекта — они не зависят от дистрибутива. Например, ядро FreeBSD является частью проекта FreeBSD и поддерживается в том же хранилище subversion, что и остальная часть дистрибутива.
В некоторых местах ядро используется без остальной части пользовательского пространства, например, в порту Debian kFreeBSD .
*: Части оригинального BSD действительно зашли довольно далеко. Например, вы увидите заметки о том, что на части программного обеспечения распространяются авторские права Риджентс Калифорнийского университета повсюду. Многое из этого BSD. Например, если вы прочитали многостраничное уведомление, включенное в Windows, оно есть.
Источник
BSD Kernel Vs. Linux kernel? [closed]
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 7 years ago .
I wanted to know in technical terms; what is the difference between BSD Kernel and Linux Kernel .
In Linux, we can download the source kernel then patch it and make and make modules it. Even we have multiple tools to edit the kernel config such as menuconfig , xconfig and . .
But I couldn’t find such kinda vast field on BSD. First, Could I download the BSD kernel ? How could I config it? and .
So what am I asking is: (Without referring to ancestry and etymology)
- Is the Kernel in each case (in)dependent of a distribution?
- Ways to config Each Kernel and tools available for the job?
- Whether any Patch work could be done in each case?
- Availability of the kernel outside the realm of distribution? ( Kernel Sources )?
- Flavour of Kernels available in each case ( X??BSD / Linux ) Like XEN/Vmware/GEN ?
2 Answers 2
Well, first off, you speak of BSD as if they’re is only one. Technically, I suppose, there is the original one they were all derived from—last release was in 1995. Searching for «4.4-Lite2» finds several copies, you can find out more about it at the Wikipedia’s Berkeley Software Distribution article.
Derived from it are—among many things * —FreeBSD, OpenBSD, and NetBSD. All three are open source, and you can get their source code. Someone who says BSD nowadays is probably referring to one of them.
If you want to quickly browse them, there is a FreeBSD and Linux Kernel Cross-Reference. That site also has several other Unix-like kernels.
Unlike Linux, however, which exists as a standalone kernel project, the BSD kernels often are part of a larger project—they aren’t independent of the distro. For example, the FreeBSD kernel is part of the FreeBSD project and is maintained in the same subversion repository as the rest of the distro.
There are some places the kernel is used without the rest of the userland, e.g., in Debian’s kFreeBSD port.
*: Parts of the original BSD have gone pretty far indeed. For example, you’ll see the notes about portions of software being copyright The Regents of the University of California all over the place. A lot of that is BSD. If you read the many-page notice included with Windows, for example, it’s there.
Источник
Linux Kernel vs Other Kernels
DevynCJohnson
Guest
I thought it would be interesting to discuss some of the various operating systems to Linux. This article will concentrate on the kernels. The main defining characteristic of operating systems is their kernel. In all operating systems, the kernel controls and manages the hardware. However, kernels may or may not contain drivers. Some systems use the same kernel, but are still different from each other. The difference lies in the userland which is the software above the kernel. For instance, in the GNU/Linux operating system, GNU is the userland and the kernel is called Linux.
NOTE: This article is a general overview of some of the different features of various kernels.
GNU/Linux, Chrome OS, Firefox OS, Android, Glendix, and many other operating systems use the Linux kernel. The Linux kernel is a monolithic kernel that supports a large variety of processors. Usually, when people say «Linux», they are referring to the operating system call GNU/Linux. Technically, «Linux» is the name of the kernel of the GNU/Linux operating system. Linux is open-source freeware. Linux is suitable for desktops, embedded systems, servers, supercomputers, mobile devices, and many other systems.
NOTE: To gain a deeper understanding of the Linux kernel, read the «The Linux Kernel» series by DevynCJohnson. (http://www.linux.org/threads/linux-kernel-reading-guide.5384/)
The Minix kernel is a microkernel licensed under the BSD license. This kernel only works on the i386 processor, but ports are underway. Drivers are not part of the lightweight kernel. More tasks are completed in the userland rather than in kernel mode. The Minix kernel is supposedly more secure than Linux because drivers do not have kernel or Root privileges like they do in Linux. In the Minix kernel, the various parts of the kernel cannot easily communicate with other parts. This may seem like a bad idea, but actually, this works very well. For instance, if a bad driver is installed, it cannot do much damage since it cannot influence much of the kernel. Minix has about thirty system calls (this number may be slightly off) while many kernels have a hundred or more system calls.
The XNU kernel is a hybrid kernel used by OS X (formerly Mac OS X), Darwin, and iOS. XNU is actually the Mach kernel with many additional features. XNU stands for «X is Not Unix». This kernel is licensed under the Apple Public Source License. XNU supports ARM, IA-32, and x86-64 processors.
Mach is a microkernel that was used in NeXTSTEP and is a component of the XNU kernel.
FUN FACT: Some operating systems refer to their kernel as the nucleus (nuclei is plural).
Many of the *BSD systems have their own kernel that shares similarities with other BSD kernels. FreeBSD, NetBSD, OpenBSD, and DragonFlyBSD each have their own kernel that is named after the operating system. For instance, the kernel in FreeBSD may be called the «FreeBSD kernel» or kFreeBSD, and the other BSD systems follow the same pattern. The kFreeBSD and kOpenBSd kernels are monolithic while kDragonFlyBSD is a hybrid kernel. kNetBSD is technically an AnyKernel, but most people call it a monolithic kernel. An AnyKernel is a kernel that can have the drivers (modules) in the kernel or outside the kernel. Of the mentioned BSD kernels, kDragonFly supports the least (IA-32 and x86-64) while kNetBSD supports about fifty-seven processor types. All of the BSD kernels are licensed under the BSD license.
The Hurd kernel is a GNU microkernel (not to be confused with Linux). Hurd stands for «Hird of Unix-Replacing Daemons» and Hird stands for «Hurd of Interfaces Representing Depth» according to Thomas Bushnell. Hurd supports i386 and is licensed under the GNU license. Operating systems that use Hurd include (but not limited to) Arch/Hurd, GNU/Hurd, and NixOS/Hurd. Most Hurd operating systems are GNU/Linux systems without the Linux kernel. Yes, most GNU/Linux systems can swap their kernel with the Hurd kernel. The Linux and Hurd both typically use the GNU userland, so making a system use one kernel instead of the other is usually easy.
Windows systems (like MS-Win7, MS-Win8.1, TinyXP, Tiny7, MicroXP, and others including official and unofficial) use the NT kernel (NT = New Technology) which is a hybrid kernel. ReactOS is another OS that use a kernel very similar to the NT kernel. The NT kernel supports a few types of processors, but not as much as Linux or kFreeBSD. The NT kernel is closed source and no longer has any POSIX support. However, the ReactOS NT kernel is open source. The NT kernel does not support as many filesystems as other systems. Although, the NT kernel supports NTFS 100%, unlike other systems.
NOTE: Linux supports NTFS, but it lacks the ability to support the transparent compression. (At least for now)
NOTE: Microsoft is not the only maker of Windows operating systems. MicroXP and Tiny7 are two examples of Windows operating systems, but they are not official and may or may not be legal. ReactOS is a legal open-source alternative to MS-Windows (Windows made by Microsoft).
The Solaris kernel is a closed source monolithic kernel used on Oracle’s Solaris operating system. Solaris uses loadable modules like Linux. Solaris does not support virtualization like other systems. However, Solaris can host virtual operating systems using a virtualization app, like Oracle’s VirtualBox. Although, the application is performing the virtualization and not Solaris.
Many other kernels exist, but these are the ones that most of my readers may find relevant. If you would like to know about others or you would like me to compare specific features and qualities, please let me know. The more emails and messages I get requesting a particular subject, the sooner and more likely I will write the desired subject.
Источник
Linux kernel vs BSD kernel?
Привет, хабралюди. Помогите с парой вопросов:
1) На десктопе: как соотносится производительность сабжевых ядер
2) ipfw vs netfilter. Актуальны ли на сегодня все пункты, перечисленные в этом письме: lists.netfilter.org/pipermail/netfilter/2004-Octob. ?
- Вопрос задан более трёх лет назад
- 3884 просмотра
Для каких целей Вам нужно, что линукс, что БСД, возможно для ваших задач разницы не будет никакой.
а так вопрос равнозначен «что лучше мотор honda или toyota?»
У друга на декстопе БСД уже лет 5 точно, про сервера молчу.
у меня дектопы и добрый десяток серверов мирно живут на убунтах\дебианах.
Источник
difference between Linux kernel and UNIX kernel(such as FreeBSD) from programmer’s point of view
difference between Linux kernel and UNIX kernel(such as FreeBSD) from programmer’s point of view. I searched several articles about this. They compared these from User’s view and Administrator’s view also from Company’s manager’s view. Can any body find article or say something from programmer’s view?
The programmer I means, both user land programmer or kernel level programmer?
Any hints or enlightenment is really appreciate.
Wish this is not a cliche question make everybody sick. 😛
2 Answers 2
From a standards point of view there really isn’t any difference. Linux is a «POSIX» compliant OS, FreeBSD, Mac OS X and Solaris are also all «POSIX» compliant. In theory at least.
Once you move past the standards there are quite a few differences. Linux as inotify, udev and a bunch of other systems that are unique to it. FreeBSD has kqueue. There are differences in their exact implementations of things like ptrace. For example Mac OS X’s ptrace has almost no functionality that you will find in the other Unix systems.
Beyond custom libraries there are differences in development tools. Solaris and FreeBSD have dtrace. Linux has valgrind. Mac OSX has instruments.
What level you are looking at will affect what differences you see or don’t see.
For a userland programmer, there is no difference. The userland programming will be coding to a language VM like C and it will be up to the C library routines to translate that into lower level system calls.
Those using other tools such as Perl, Python, Java and so on, are even more removed from the kernel so it will not directly affect them either.
In terms of the kernel programmer, the differences are likely to be significant since the kernels themselves are different. I haven’t seen the FreeBSD internals although I’ve done a fair bit of work inside Linux, so I can’t comment intelligently on the low-level differences but (and this final bit is informed opinion, not gospel), since they run independent development streams, the chances of having exactly the same view is small.
Источник