From owner-freebsd-questions@FreeBSD.ORG Wed Jan 4 02:06:00 2012 Return-Path: Delivered-To: freebsd-questions@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9AE631065670 for ; Wed, 4 Jan 2012 02:06:00 +0000 (UTC) (envelope-from kevinz5000@gmail.com) Received: from mail-gy0-f182.google.com (mail-gy0-f182.google.com [209.85.160.182]) by mx1.freebsd.org (Postfix) with ESMTP id 562468FC12 for ; Wed, 4 Jan 2012 02:06:00 +0000 (UTC) Received: by ghrr16 with SMTP id r16so7044506ghr.13 for ; Tue, 03 Jan 2012 18:05:59 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=message-id:date:from:user-agent:mime-version:to:cc:subject :x-enigmail-version:openpgp:content-type:content-transfer-encoding; bh=bgt/loRRUFs4g7EbYVUwT/7dlb1Si1PlKTQYPi3caO0=; b=cfpMvkuZpCCbh5kXNjzHOAmKjJNnBiLPaGdewT8dp2toqaX6iNVAGN6Uai51nfSyRC 3UZXRlesjlh44yWpRM5v2N/83MnVYwlMyXD08yI0DLeCcbaEZ7EDmWIY1guP8WZaoSrL hyDysmHrz7u9APeCHuy4Wf3mpZN+Fh9od3ZyE= Received: by 10.236.189.104 with SMTP id b68mr70689166yhn.21.1325642759865; Tue, 03 Jan 2012 18:05:59 -0800 (PST) Received: from [192.168.2.4] ([99.189.76.108]) by mx.google.com with ESMTPS id d8sm98170785ang.2.2012.01.03.18.05.58 (version=SSLv3 cipher=OTHER); Tue, 03 Jan 2012 18:05:59 -0800 (PST) Message-ID: <4F03B40B.4020700@gmail.com> Date: Tue, 03 Jan 2012 20:06:03 -0600 From: Kevin Zheng User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:8.0) Gecko/20111105 Thunderbird/8.0 MIME-Version: 1.0 To: Jerry X-Enigmail-Version: 1.3.4 OpenPGP: id=5EBE6447 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Cc: freebsd-questions@freebsd.org Subject: Re: FreeBSD Kernel Internals Documentation X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 04 Jan 2012 02:06:00 -0000 Jerry, FreeBSD Questions isn't the place to argue about how all OSes should use a universal API, and how Ubuntu is doing such a good job. In an ideal world, everyone would speak the same language, use the same currency, and have identical power outlets. Unfortunately, the last time I checked, we don't live in this world. Some people are trying to make that world possible, but until then, you'll have to face the fact that a universal API doesn't exist. APIs for a scripting or programming are nothing compared to what operating systems deal with. POSIX already does a good job of making sure that these systems (BSD, Solaris, Unix, Linux, etc) have a relatively similar API. The fact is that the kernel lives at such a low level that any change will have drastic consequences. Perhaps some people don't WANT a universal API to exist. If every driver on Windows worked equally well on FreeBSD, Microsoft may find itself out of profit. Equally, if FreeBSD ran the same applications on Microsoft, somebody would be slightly upset that they can't make a profit. On a more positive note, a universal API would help everyone. Since everyone here (including me) like it as it is, why don't you take initiative and put together something? Perhaps you should start out by creating another system specification that all of the existing operating systems could adapt. Write a kernel for it. Create your own operating system that can run everything. I'd use that system. Wireless cards work perfectly on my Toshiba laptop. In fact, the current one I use is a USB wireless adapter. The GENERIC kernel finds my cards perfectly. In addition, I like it when I get to control every single piece of software I put on my system. I switched FROM Linux because of this. If you don't like FreeBSD, you don't have to. If you want to improve it, please go ahead! Sincerely, Kevin Zheng