据我所知,Oracle 不再像过去通过 OpenSolaris 那样提供 Solaris 的源代码。然而,他们确实提供现场 CD 图像。
安装了此类映像的系统可以提供多少功能?我从学术角度对Solaris感兴趣,例如研究Solaris设备驱动程序模型。假设安装了工具链和库,我是否能够使用 Oracle Solaris 编写驱动程序?我熟悉pkg
OracleSolaris 中的工具;它是否为此提供了所有必要的工具,或者我是否需要支付商业 Solaris 许可证的费用?
答案1
您根本不应该为此使用实时媒体。这会在每次启动时创建一个新的操作系统内存实例,并且上次启动时不会保存任何内容。这意味着,如果您编写任何代码并保存它,它就会被保存到 RAM 磁盘中,该磁盘将在您重新启动时消失。您可以将更改保存到其他系统,然后在每次启动时将它们复制回来,例如使用单片机托管在另一个盒子上,但每次重新启动时您仍然必须从头开始构建程序,这非常痛苦。
您真正想要的是“文本安装程序”。这将允许您设置独立的持久 Oracle Solaris 安装,可用于软件开发和教育修补。
如果您正在查看实时媒体,因为您不想覆盖 PC 的操作系统,也不想为 Solaris 设置单独的磁盘/分区,您可以将其安装到虚拟机中,例如 Oracle 自己的虚拟机虚拟盒子。我在 OS X 上的 Parallels VM 中安装了它来回答这个问题;这样就可以正常工作了。
文本安装程序会生成一个相当最小的经典 Unix 操作系统,很像 FreeBSD、Ubuntu Server 或 Arch Linux。您可以使用操作系统的软件包安装程序在此基础上构建您想要的内容,就像使用其他操作系统一样。
安装后,我建议您阅读在 Oracle® Solaris 11 中设置应用程序开发环境。您将发出如下命令来安装工作所需的工具、库等:
$ sudo pkg install developer/gcc
您可能需要其他软件包,但 GCC 是构建示例驱动程序在甲骨文的设备驱动教程:
$ cat > dummy.c
...paste text from first link above
$ gcc -D_KERNEL -c dummy.c
$ ld -r -o dummy dummy.c
现在您已经有了实际的可加载驱动程序,您可以按正常方式安装。
至于你所需要的一切是否都存在的问题,这是一个开放式的问题,无法得到明确的回答。然而,我可以告诉你,这不是一个有缺陷的操作系统。这是真正的索拉里斯。它应该能够做任何商业副本可以做的事情。您缺少的主要只是在商业环境中使用生成的系统的权利。 Solaris 的商业版本可能包含一些专有的 Oracle 工具,但开发版本确实包含所有基础功能:编译器、操作系统接口头文件和库。