Solaris 9 12/03 操作环境的新增功能

开发工具增强功能

Solaris 软件现在包括以下开发工具增强功能。SPARC: 地址组在 Solaris 9 12/03 发行版中是增强的。Sun ONE Application Server在 Solaris 9 12/03 发行版中已经进行了修订。以前的发行版中的开发功能包括:

SPARC: 地址组

此功能在 Solaris 9 12/03 发行版中是新增的。

Programming Interfaces Guide中有一章介绍了与地址组 (lgroup) 交互的接口。这些接口有助于应用程序有效地分配 CPU 和内存资源。此功能会使某些系统的性能得以提高。

链接程序和库更新

此功能在 Solaris 9 12/02 发行版中是新增的。有关最新更新的信息,请参见Linker and Libraries Guide》中的“New Linker and Libraries Features and Updates”

本 Solaris 发行版包括了新的链接程序编辑器功能,例如字符串表压缩、未参考段删除和未参考相关检测。有关各 Solaris 发行版中的新链接程序编辑器功能的最新列表,请参见Linker and Libraries Guide》中的“New Linker and Libraries Features and Updates”

智能卡接口

此功能在 Solaris 9 8/03 发行版中是新增的。

Solaris 智能卡接口是用于智能卡终端的一组公共接口。智能卡终端供应商可以在用户级的共享库中实现这些接口,以便为 Solaris 中的智能卡和终端提供设备级支持。这组 Solaris 智能卡终端接口基于可用作 Linux Smartcard 框架一部分的卡终端接口。Linux 的卡终端支持库可以被轻松地导入到 Solaris。

栈检查 API

此功能在 Solaris 9 4/03 发行版中是新增的。

栈检查 API 可用于与栈检查编译程序支持进行高级的交互操作。ForteTM 7.0 提供了栈检查编译程序支持功能。这些 API 应该在编译时启用了栈检查的应用程序中使用,这些应用程序可以管理自己的栈或试图检测自己的栈溢出。

对于维护自己的线程库的开发者,需要使用 setustack 接口以使库的用户能够在编译时启用栈检查功能。

请参见 stack_getbounds(3C) stack_setbounds(3C)stack_inbounds(3C)stack_violation(3C) 手册页。

使用 libumem 进行内存分配

此功能在 Solaris 9 4/03 发行版中是新增的。

libumem 是一种用户模式(非内核模式)内存分配程序库。使用 libumem 提供的功能,您可以调试内存泄漏和其它内存使用异常。

该功能的使用方法与标准应用程序二进制接口 (ABI) 分配程序(例如 malloc())相同。用户模式应用程序可以申请任意字节数目的内存,然后返回一个带有已分配内存地址的指针。

有关详细信息,请参见 libumem( 3LIB) 手册页。

可以在以下 Web 站点获取有关 Solaris 内存放置优化和 Sun Fire 服务器的技术白皮书:

http://www.sun.com/servers/wp/docs/mpo_v7_CUSTOMER.pdf

Sun ONE Application Server

在 Solaris 9 12/02 发行版中,此功能对于 SPARC 平台是新增功能。在 Solaris 9 12/03 发行版中,此功能也适用于 x86 平台。有关详细信息,请参见Sun ONE Application Server 集成

Sun ONE Message Queue

在 Solaris 9 12/02 发行版中,Sun ONE Message Queue 对于 SPARC 平台是新增功能。Solaris 9 8/03 发行版的 x86 平台也支持 Sun ONE Message Queue。

Solaris 9 12/02 发行版支持 JMS 信息传送应用程序。这些应用程序基于 Sun ONE Message Queue(一个 JMS 提供者)。有关详细信息,请参见Sun ONE Message Queue

增强的 crypt() 功能

此功能在 Solaris 9 12/02 发行版中是新增的。

本 Solaris 发行版包含了对 crypt() 函数的扩展,并引入了 crypt_gensalt() 函数。这些增强功能使管理员可以更改用于遮蔽用户的 UNIX 登录口令的算法。

包含了用于 MD5 和 Blowfish 的模块。MD5 模块位于 crypt_sunmd5crypt_bsdmd5。Blowfish 模块位于 crypt_bsdbf

开发者可以创建替换口令遮蔽算法的新模块。应用程序开发者必须使用 crypt_gensalt() 函数,而不能手动生成该 salt 字符串以传递给 crypt() 函数。

用作替代算法的模块在 crypt.conf(4) 文件中指定。module_path 字段指定实现两个所需的函数的共享库对象的路径:

有关详细信息,请参见 crypt( 3C)policy.conf (4) 手册页。

madvise() 函数的新标志

此功能在 Solaris 9 12/02 发行版中是新增的。

madvise() 函数使内核可以优化对用户定义的内存区域的访问。本 Solaris 发行版包括三个用于 madvise() 函数的新标志位:

有关 madvise() 函数的详细信息,请参见 madvise(3C) 手册页。

智能卡中间件 API

此功能在 Solaris 9 9/02 发行版中是新增的。

Solaris 智能卡框架现在可以提供底层的中间件 API。通过使用智能卡读卡器,这些 API 可以用来与智能卡交换数据。这些 API 可以用于诸如 Sun BladeTM 和 Sun RayTM 系统的平台。用 Java 语言或 C 语言编写的应用程序可以使用这些接口。

有关详细信息,请参见 libsmartcard( 3LIB) 手册页和 /usr/share/javadoc/smartcard 中的 JavaDocs。