On 10/27/05, Adam Leventhal <[EMAIL PROTECTED]> wrote:
[elided]
[elided]
Perhaps this should be a broader "Immigrant" (or "Refugee"?) community
with sub-communities for the operating systems of origin (Linux, *BSD,
Windows, BeOS, Amiga, etc.).
I personally will find this tremendously useful as an OpenSolaris developer
as I'm often curious about how other operating systems work, but don't
have enough experience with them to feel that I can evaluate them fairly.
Thanks.
Adam
You didn't ask for, but here it comes
- a home-made cross reference between AIX and Solaris ;)
I've been doing AIX support for many years.
When I started playing with Solaris at free time, I decided to
maintain a "how to do it in Solaris" reference for myself.
With the intent to share with others later, I made it more like a
cross reference between the two OSs, and plan to add corresponding
resources from Linux and BSD in the future.
Now open the attached HTML file, you will see the content and
the way they're organized are different from Bruce's
http://bhami.com/rosetta.html (which is a remarkable effort).
I group the resources into different system/kernel components.
Each component is a separate HTML table, has links to official
documentation, then resources for separate tasks.
You can see I collected lots of blogs from you guys.
Warning: this is a "Valid HTML 4.01 Strict" file, which means
I.E. doesn't display it correctly ;-)
Please use firefox/mozilla to see the fixed-position menu correctly.
Now that I throw this out, I hope some of you find it useful,
(even though AIX doesn't seem to be popular w/ this crowd ;)
I am going to maintain it, at least for myself. I think
some work need to be done before it reaches broader audience.
Apparently I've been mostly collecting Solaris resources that
I left many AIX parts unfilled.
I don't mind people using the content in anyway, changing
the format, putting it in your own work, whatever.
However I certainly hope it can be a cooperative effort
from now on.
I like the wiki idea, but have no experience with it.
So let me know if you're interested in making it a more
useful resource, how do you want to do it and where
do we put it (I don't have a webserver).
Last but not least, I'd like to see Adam's great proposal
evolves into something useful for all the *nix users/developers,
going all directions, not just a "migration guide from
A to B" or a flame-baiting "comparison between A and B".
If some of you hold a different view, that's fine, in the end
this is an OpenSolaris community :)
Cheers,
Tao
Title: Unix Cross Reference
Last Updated: 10/25/2005
Top
Document Kernel DevMgr DevDrv Kext LoaderLinker VMM Java Package Patch Thread Compiler Trace Dump dbx NFS Collect Boot Performance Partition Filesystem Syscall Assembly Header iSCSI Install Container Audit Firmware proc_thrd
10/27/2005
Document Kernel DevMgr DevDrv Kext LoaderLinker VMM Java Package Patch Thread Compiler Trace Dump dbx NFS Collect Boot Performance Partition Filesystem Syscall Assembly Header iSCSI Install Container Audit Firmware proc_thrd
10/27/2005
Documentation | ||
---|---|---|
Home | AIX 5.x | Solaris 10 |
Index | 5.3 Commands Reference 5.2 Commands Reference | Solaris 10 User Commands System Administration Commands |
Kernel | ||
---|---|---|
Kernel Data Model (32bit/64bit) | bootinfo -K | isainfo -b |
Kernel Debugger | KDB kernel debugger and kdb command | mdb(Modular Debugger) DTrace |
Device Management | ||
---|---|---|
CPU Model | lsdev -Cc processor lsattr -El proc# | psrinfo -v |
PCI Devices | lsdev -Cc [adapter|bus|...] lscfg lsparent | prtconf -pv prtpci (Dan Mick) |
Kernel Module/Extension | ||
---|---|---|
List | genkex | modinfo |
Loader & Linker | ||
---|---|---|
Documentation | XCOFF Object File Format Shared Objects and Runtime Linking AIX Linking and Loading Mechanisms (pdf) Chapter 2 - Compiling and linking | Linker and Libraries Guide |
Reference | [B] Rod Evans's Weblog [B] new linker/loader hardware capabilities support | |
Build Library | [B] How to build a Shared Library (Michael Walker) | |
Library search path (build-in) | dump -Hv tc | dump -Lvp tc| grep RUNPATH |
Library search path (environment) | LIBPATH LD_LIBRARY_PATH compatibility is added in 53D | LD_LIBRARY_PATH Directories Searched by the Runtime Linker |
Directories Searched by the Link-Editor & the Runtime Linker | See Compiler section | |
List dependencies & Symbol Table | dump # dump -HTv tc | dump # dump -Lv tc | grep NEEDED # dump -tv tc elfdump ldd [B] Loading Multiple Files - same name, different directories |
Loaded Objects | (kdb) lle [-k | -l32 | -l64 | -a addr] [-p slot] [-A] [-v] | # echo "::objects" | mdb -p [pid] |
Finding Symbol | [B] Finding Symbols - reducing dlsym() overhead |
VMM | ||
---|---|---|
Documentation | Program Address Space Overview Performance Overview of the VMM | |
Reference | [B] x86 32 bit virtual address space [C]startup.c - 32-bit Kernel's Virtual memory layout [C]startup.c - 64-bit Kernel's Virtual memory layout. (assuming 64 bit app) [B] Solaris VMM system | |
Address Space Command | svmon # svmon -rP 1 | pmap(1) [B] pmap(1)(Adam Leventhal) # pmap -xa 1 |
Debugger | KDB subcommands | mdb - Virtual Memory # echo "::memstat" | mdb -k [B] Using DTrace for Memory Analysis Using DTrace to Profile and Debug A C++ Program |
Concept | Working Persistent Client | Anonymous |
Package | ||
---|---|---|
Belongs-To | lslpp -w <path> | pkgchk -lp <path> |
Contains | lslpp -f <fileset> | pkgchk -l <package> | awk '/^Pathname/ {print $2}' |
Check accuracy | lppchk | pkgchk(1M) [package] pkgchk (How to Verify the Integrity of a Package) |
Patch | ||
---|---|---|
List | instfix -i[-k|-f] | showrev -p |
Thread | ||
---|---|---|
Documentation | Multi-Threaded Programming | Multithreading in the Solaris (pdf) Multithreaded Programming Guide |
Resources | Phil Harman's Weblog | |
Library | /usr/lib/libpthread.a (POSIX) | /usr/lib/libpthread.so (POSIX) /usr/lib/libthread.so (Native) |
Instrumentation | ||
Compile | cc_r / xlc_r | cc -mt |
Compiler | ||
---|---|---|
Documentation | IBM C and C++ Compilers XL C Enterprise Edition for AIX XL C/C++ Enterprise Edition for AIX IBM AIX compiler information center | Sun Studio Studio 10 Documentation Command-Line Tools C User's Guide |
Reference | Sun Studio Compilers and Tools Sun Studio Weblogs | |
Optimization | O, optimize | Selecting the Best Compiler Options [B] Compilation Options for different Targets Improving Code Layout Can Improve Application Performance |
Directories Searched by the Link-Editor | -L | -L:
|
Directories Searched by the Runtime Linker | -L | -R-Rpath[:path...] |
Debug flags | [B] Obtaining Function Arguments on AMD64 |
Trace | ||
---|---|---|
Documentation | Trace Facility: Controlling the Trace Understanding the Trace Facility | Solaris Dynamic Tracing Guide: 11. Buffers and Buffering 16. Options and Tunables |
Size | -T (change -L together) | bufsize (-b) bufresize |
Number |
|
|
Dump | ||
---|---|---|
Force a dump | sysdumpstart | reboot -d |
Manage dump device | sysdumpdev | dumpadm(1M) |
dbx | ||
---|---|---|
Documentation | dbx Command | Sun Studio 10: Debugging a Program With dbx dbx.1(ss10) |
Package | bos.adt.debug (On AIX Install Media, not installed by default.) | Sun Compiler products (/opt/SUNWspro/bin/dbx -> ../prod/bin/dbx) |
Process | dbx -a [PID] | dbx - [PID] |
trace | trace [function] | trace [function] trace in [function] |
NFS | ||
---|---|---|
Documentation | Network File System | Accessing Network File Systems Topics |
Resources | [B] Spencer Shepler [B] blogbert |
Data Collection | ||
---|---|---|
System-wide | snap | Explorer |
Process | pdump.sh [-d] [PID] | |
Core | snapcore /usr/lib/ras/check_core (used by snapcore) dbxcore.sh | Application Crash Data With DTrace |
[B] Update pstack |
Core | ||
---|---|---|
Environment | pargs -e core_file |
Boot | ||
---|---|---|
Reference | Solaris OS on x86 Platforms: Realmode Environment | |
Debug boot | # bosboot -aId /dev/ipldevice ok> boot [device] -s trap (undocumented) | [B] Diagnosing kernel hangs/panics with kmdb and moddebug [B] Debugging early in boot |
Partition | ||
---|---|---|
Documentation | System Administration Guide
Solaris Container Manager 1.1 Software Collection | |
Software Partition | BigAdmin Solaris Containers (Sun BluePrints) [B] The Clingan Zone [B] Joost Pronk's Weblog [B] Booting a Zone |
Filesystem | ||
---|---|---|
Documentation | ||
Reference | [B] Sarah's blogs (Sun) [B] UFS and the Solaris VM Subsystem [B] Locking in UFS [B] Solaris UFS lockfs protocol |
System Calls | ||
---|---|---|
Documentation | Concepts: System Calls | System Calls Index |
Reference | [B] x86 syscall primer [B] How to add a system call to OpenSolaris [B] Solaris 10 on x64 Processors: Part 1 - Prework |
Assembly | ||
---|---|---|
Documentation | 5.3 Assembler Language Reference Index | x86 Assembly Language Reference Manual Index |
Linkage Convention | Subroutine Linkage Convention | |
Reference | [B] x86 syscall primer |
iSCSI | ||
---|---|---|
Documentation | Chapter 15 Configuring Solaris iSCSI Initiators (Tasks) [B] iSCSI Kernel Visibilty [B] Important iSCSI Links |
Install | ||
---|---|---|
Reference | PXE/Jumpstart server configuration |
Containter | ||
---|---|---|
Reference | OpenSolaris Community: Zones Understanding the Basics About Solaris Containers in the Solaris 10 OS |
Header | ||
---|---|---|
Reference | [B] Welcome to header hell... |
Audit | ||
---|---|---|
Reference | [B] Adding auditing to your application |
Firmware | ||
---|---|---|
Reference | OpenBoot 4.x Command Reference Manual
Expand all items Writing FCode 3.x Programs |
Process & Thread | ||
---|---|---|
thread | _kthread: kthread_t | |
process | proc: proc_t |
_______________________________________________ opensolaris-discuss mailing list opensolaris-discuss@opensolaris.org