Friday, June 29, 2007

Load Generation Appliance

Spirent AVALANCHE LOAD TESTING APPLIANCE

http://www.spirentfederal.com/

Monday, June 25, 2007

S12 Compliation flag

S12 update compilation flag: -xarch=v9 is deprecated, use -m64 to create 64-bit programs

Wednesday, June 20, 2007

Long Pause GC ?

GC can be well tunned from 1.5.x above.

http://www.sun.com/bigadmin/content/submitted/cms_gc_logs.html
http://java.sun.com/performance/reference/whitepapers/tuning.html
http://twiki.sfbay.sun.com/pub/MDE/ISVESystemsProjects/TS-2885-14.pdf

Interesting military Security Training, Open Solaris

http://www.gcn.com/print/26_09/43562-1.html

NB Debug Thread Dead Lock

It seems SMP helps NB debugger for current build

Tuesday, June 19, 2007

Workspace Management

Main Menu Action is triggered by "Annotator"

(1) CreateWorkspaceAction -- Currently Setup Workspace and save the extra UpdateWorkspace Action
This action is triggered by "Annotator" getAction routine
(2) Needs Remove Workspace Action to remove current Preferences cache and Remote depot.
This action is triggered by "Annotator" getAction routine
(3)

Monday, June 18, 2007

NB Short Build

cvs -d :pserver:leiliu@cvsnetbeansorg.sfbay.sun.com:/cvs login
cvs -d :pserver:leiliu@cvsnetbeansorg.sfbay.sun.com:/cvs co -P standard_nowww

cvs -d :pserver:leiliu@cvs.netbeans.org:/cvs login
cvs -d :pserver:leiliu@cvs.netbeans.org:/cvs co -P standard_nowww


ant -Dcluster.config=standard

or may need to try ant build-nozip first.


With CVS functions

ant -Dcluster.config=basic

NB cached .netbeans dir caused problem

(1) It is recommended to clean up the .netbeans dir under $HOME in order to have new build working
fully.
(2) a short build

cvs -d :pserver:leiliu@cvsnetbeansorg.sfbay.sun.com:/cvs login
cvs -d :pserver:leiliu@cvsnetbeansorg.sfbay.sun.com:/cvs co -P standard_nowww

cvs -d :pserver:leiliu@cvs.netbeans.org:/cvs login
cvs -d :pserver:leiliu@cvs.netbeans.org:/cvs co -P standard_nowww


ant -Dcluster.config=standard

or may need to try ant build-nozip first.

Saturday, June 16, 2007

NB Plugin

1. rename cvsmodule as perforce
2. change all project and service meta data ->>>>> Here is PerforceVCS
3. replace.sh cvs -> perforce, CVS -> Perforce
4. PerforceRoot change back to CVSRoot first.

We can get a build now.

Change Menu action name: Each Action has

public String getName() {
return NbBundle.getBundle(CreateWorkspaceAction.class).getString("CTL_MenuItem_XX_Label");
}

CTL_MenuItem_XX_Label is located in Bundle.properties file of each action package

Friday, June 15, 2007

Problem of Broadcom Wireless Controller on S11 with Acer Ferrari 3400 laptop

I have ferrari 3400 latop with S11 OS kernel 5.11 snv_64a i86pc i386 i86pc

(1) Locate Wireless Controller as Broadcom BCM4306 802.11b/g Wireless LAN Controller


# /usr/X11/bin/scanpci -v


pci bus 0x0000 cardnum 0x09 function 0x00: vendor 0x14e4 device 0x4320
Broadcom Corporation BCM4306 802.11b/g Wireless LAN Controller
CardVendor 0x185f card 0x1220 (Wistron NeWeb Corp. TravelMate 290E WLAN Mini-PCI Card)
STATUS 0x0000 COMMAND 0x0006
CLASS 0x02 0x80 0x00 REVISION 0x03
BIST 0x00 HEADER 0x00 LATENCY 0x40 CACHE 0x00
BASE0 0xd0014000 addr 0xd0014000 MEM
MAX_LAT 0x00 MIN_GNT 0x00 INT_PIN 0x01 INT_LINE 0x0a
BYTE_0 0x01 BYTE_1 0x00 BYTE_2 0xc2 BYTE_3 0x07


(2) modinfo | grep bcm

Found the driver is not loaded

(3) Manually loaded driver

modload /kernel/drv/amd64/bcmndis


# modinfo | grep bcm
201 fffffffff7a39000 a3598 222 1 bcmndis (bcmndis(ndis wrapper 1.6))


(4) # grep bcm /etc/driver_aliases
bcmndis "pci14e4,4320"
bcmndis "pci14e4,1a"

(5) update_drv -a -i '"pci14e4,1a"' bcmndis
("pci14e4,1a") already in use as a driver or alias

(6)
dladm show-link
bcmndis0 type: legacy mtu: 1500 device: bcmndis0
bge0 type: non-vlan mtu: 1500 device: bge0


(7) ifconfig bcmndis0 plumb

(8) ifconfig -a
lo0: flags=2001000849 mtu 8232 index 1
inet 127.0.0.1 netmask ff000000
bge0: flags=201004843 mtu 1500 index 2
inet 192.168.1.100 netmask ffffff00 broadcast 192.168.1.255
ether 0:c0:9f:9e:41:5
ip.tun0: flags=10010008d1 mtu 1366 index 3
inet tunnel src 192.168.1.100 tunnel dst 192.18.32.151
tunnel security settings esp (aes-cbc/hmac-md5)
tunnel hop limit 60
inet 129.150.13.3 --> 129.145.40.124 netmask ffffffff
bcmndis0: flags=201000842 mtu 1500 index 4
inet 0.0.0.0 netmask 0
ether 0:b:6b:4c:4a:ec
(9)
wificonfig -i bcmndis0 scan
essid bssid type encryption signallevel


It failed to discovered any router or access point.



However, if we boot as 32 bit kernel then it works

Adaptive Buffer Tuning for Data Intensive Algebraic Operations in Purpose of Parallel and Distributed Processing

Both pervasive directional graphs and intensive algebraic operations require buffer management for stochastic data processes with constrained computing resources. Algebraic computation states in final stages tend to be readily identified within finite time horizon by sensing very abrupt transitions in system and network state spaces. But in early stages of constraints, these changes are hard to predict and difficult to distinguish from usual state fluctuations. Dynamic buffer allocation and replacement are the major techniques to construct structures for algebraic operations to ensure finite resource assesses. Hence, dynamic buffering function and control optimization are the major primitives to construct utilities for stochastic system processes to ensure converged resource accesses. To provide adaptation to large dimensional states, this research proposes a formal model-free buffer utility framework rooted from reinforcement learning methods and dynamic programming techniques to provide self organization of buffers to exploit parallel based buffer tuning processes. To time and space complexity reduction within the large state spaces, dynamic hidden neurons with incremental tuning is proposed for non-linear value function approximation to derive optimization procedures for optimal algebraic computational policies. For numeric and information evaluation, convergence analysis and error estimation are presented. Finally, a simulation test-bed and tuning results are deliberated.

CVS Server Setup on Solaris 10

(1) download cvs binary
(2) init cvs repository
a. create repository root directory /usr/local/cvs-repository
b. create a Solaris system user/group as: cvs/cvs
c. grant ownership of /usr/local/cvs-repository to Solaris user/group cvs/cvs
d. cvs -d /usr/local/cvs-repository init
This will create repository CVSROOT under /usr/local/cvs-repository
(3) create cvs user/password
a. create a password file as "passwd" under CVSROOT directory
b. user pl file below to create encoded password for cvs user
c. assign password to solaris user "cvs"

The CVS password file is CVSROOT/passwd in the repository. It was not
created by default when you ran cvs init, because CVS doesn't know for
sure that you'll be using pserver. Even if the password file had been
created, CVS would have no way of knowing what usernames and passwords
to create. So, you'll have to create one yourself; here's a sample
CVSRoot/passwd file:

::
Here is the perl script to generate encoded password
#!/usr/bin/perl

srand (time());
my $randletter = "(int (rand (26)) + (int (rand (1) + .5) % 2 ? 65 : 97))";
my $salt = sprintf ("%c%c", eval $randletter, eval $randletter);
my $plaintext = shift;
my $crypttext = crypt ($plaintext, $salt);

print "${crypttext}\n";


I keep the preceding script in /usr/local/bin/pass.pl:

pass.pl "passwd"

output : Urmh23wFp1aOs

Then use the output passwd adding line in CVSROOT/passwd file

cvs:Urmh23wFp1aOs:cvs

(Here we create cvs user and solaris user same as "cvs")


The format is as simple as it looks. Each line is:

::

c. in the /etc/inetd.conf add one line as

cvspserver stream tcp nowait root /opt/sfw/bin/cvs cvs --allow-root=/usr/local/cvs-repository pserver


d. On Solaris 10 inetd.conf change does not take effect other than SFM service profile.
using "inetconv" command to convert the inetd.conf as /var/svc/manifest/network/rpc/100235_1-rpc_ticotsord.xml
In addition, add online in /etc/services to give permission
cvspserver 2401/tcp
e. this service file will be auto started by SFM daemon
f. verify pserver service is started
# svcs | grep cvs
online 14:18:27 svc:/network/cvspserver/tcp:default
g. use login test

cvs -d :pserver:cvs@:/usr/local/cvs-repository login

Thursday, June 14, 2007

Kernel Module Load and Network setup

1. all amd64 drivers

/kernel/drv/amd64

2. acer 3400, bcmndis is the WIFI driver

3. modinfo | grep bcmndis

to check if the module is loaded

4. modload bcmndis

5. ifconfig bcmndis0 plumb

6. wificonfig -i bcmndis0 scan

7. setup connection with wificonfig

8. there is link to update broadcom driver

http://blogs.sun.com/pradhap/entry/ferrari_4000_flash_install

Wednesday, June 13, 2007

Setup Acer Solaris x86 WIFI

Acer Aspire 9300, Solaris X86, Atheros Wifi NIC
Submitted by spp on Tue, 2006-10-31 12:22.

Got the Atheros 802.11abg NIC working on my new Acer laptop under Solaris X86. I tried to follow the instructions at the atheros driver page, but they are a little out of date. The atheros driver has been integrated into OpenSolaris, so only one or two instructions are correct. However, it did put me on the right track.

First we need to make sure the driver is attached and we can start the interface

1. Find the vendor and device IDs
#/usr/X11/bin/scanpci
pci bus 0x0004 cardnum 0x05 function 0x00: vendor 0x168c device 0x001a
Atheros Communications, Inc. AR5005G 902.11abg NIC
2. Check in /etc/driver_aliases for Atheros (ath) mappings. Format of file is 'alias "pciXXXX,YYYY"' where XXXX is "vendor 0xXXXX" and YYYY is "device 0xYYYY" minus any beginning zeros.
#grep ath /etc/driver_aliases
ath "pci168c,13"
ath "pci168c,1014"
3. update the driver to include the new device (note that the single quotes are needed in order to pass through the double quotes
#update_drv -a -i '"pci168c,1a"' ath
4. now, plumb the interface
#ifconfig ath0 plumb
5. either now, or before the plumb, you can find out what wifi access points are available
#wificonfig scan
essid bssid type encryption signallevel
you should see a list here

At this point, the instructions say that if you aren't running authentication, you can just use "ifconfig ath0 dhcp", but I am using encryption, so I moved on to trying to use wificonfig. Unfortunately, there are some mistakes here (possibly out of date and changed, not strictly incorrect). The biggest issue I found was that the instructions always reference using "-i [interface]", but that option isn't valid for most of the configuration (and the error message doesn't really make it easy to see).

1. create a profile to store my ESSID and WEP information in (write-only profile, non-readable). Names changed for security... not that wepkey# has to be the actual WEP key, not the passphrase, which makes life significantly more difficult.
#wificonfig createprofile home essid=HOME encryption=WEP wepkey1=10hexkey
2. activate the profile
#wificonfig connect home
wificonfig: connecting to profile 'home'
3. Now, like the earlier instructions, you can start dhcp
#ifconfig ath0 dhcp
4. And, make sure we have connection
#ifconfig ath0
ath0: flags=201004843 mtu 1500 index 3
inet 192.168.21.100 netmask ffffff00 broadcast 192.168.21.255
ether 0:16:cf:6f:a:92

Tuesday, June 12, 2007

LDAPv3 Unauthenticated binding

LDAPv3 specifications have introduced a unituitive feature with regards to authentication : the unauthenticated bind.
When an LDAP application provides a DN but no password, the Bind request is succesfull, BUT the user is not authenticated and has the same access rights as an Anonymous user.

Note that DS 6.0 now has a configuration parameter to disable unauthenticated Binds, and remove this unconventional authentication "feature" of LDAPv3.

LDOM Virtual Disk

LDom vdisks are not SCSI disks . Therefore, the missing SCSI target ID
and disks have the name cNdNsN.

Bind raw or block disk to disk service

bind a raw disk (/dev/rdsk/c1t1d0)
bind to a block disk (/dev/dsk/c1t1d0) to a disk service.

Zones and ZFS Pool

Two zones created on a cluster in node 1 in a ZFS pool, since I need to have the zones in an installed state on each node in the cluster. There is a way to bypass having to install the zones on each node in the cluster? It is using shared storage and moving the zfs pools back and forth.

Just three simple steps

1. zonecfg -z zone1 export>myfile
2. failover the storage with the root path to the second node
3. get myfily over to the second node
4 configure the zone with zonecfg export -f myfile
5 attach the zone with -F

NB Build and run

export ANT_OPTS="-Xmx196m"


mkdir netbeans
cd netbeans
cvs -d :pserver:leiliu@cvs.netbeans.org:/shared/data/ccvs/repository -q co nbbuild
ant -f nbbuild/build.xml checkout
ant -f nbbuild/build.xml

netbeans/nbbuild/netbeans/bin/netbeans to invoke IDE

FIPS compliance Security Crypto Module

Federal Information Processing Standards (FIPS) are publicly announced standards developed by the United States Federal government for use by all non-military government agencies and by government contractors. Many FIPS standards are modified versions of standards used in the wider community (ANSI, IEEE, ISO, etc.)


The National Institute of Standards and Technology (NIST) issued the 140 Publication Series to coordinate the requirements and standards for cryptographic modules which include both hardware and software components for use by departments and agencies of the United States federal government. FIPS 140 does not purport to provide sufficient conditions to guarantee that a module conforming to its requirements is secure, still less that a system built using such modules is secure. The requirements cover not only the cryptographic modules themselves but also their documentation and (at the highest security level) some aspects of the comments contained in the source code.

http://en.wikipedia.org/wiki/FIPS_140
http://en.wikipedia.org/wiki/Federal_Information_Processing_Standard

Sun's Cryptographic Accelerator 6000 provides exactly such a storage mechanism and API/tool set. The Cryptographic Accelerator is available for Solaris (SPARC and x86/x64) and Linux and is FIPS 140-2 Level 3 certified. It's key storage mechanism is also RF shielded and tamper-proof. It's probably one of the fastest cards on the market for accelerating SSL, IPsec/IKE and other general crypto and it's inexpensive (less than $1500 list).

http://www.sun.com/products/networking/sslaccel/suncryptoaccel6000/details.xml

Monday, June 11, 2007

ld: fatal: symbol is multiply-defined:

ld: fatal: symbol `bar' is multiply-defined:
(file foo.o and file bar.o);
ld: fatal: File processing errors. No output written to int.o

foo.c and bar.c have conflicting definitions for the symbol bar. Because the link-editor cannot determine which should dominate, the link-edit usually terminates with an error message. You can use the link-editor's -z muldefs option to suppress this error condition, and allow the first symbol definition to be taken.

resolve with compiling flag with

-z muldefs

LDOM Items

(1) SPARC only for Niagara Platforms Solaris DOM0 and Any OSs DOMU
(2) x86, Solaris DOM0, and any OS domU
(3) x86, other OS DOM0 is not verified yet.

Sunday, June 10, 2007

fatal: relocation error: R_AMD64_PC32

I am developing a c simulation tool. I am invoking one of dynamic library
(my home grown library named as: randlib.so)

It has a function as

double unifrand(double, double, long*);

In my simulation application, I invoke the above function with

seed = 1236537;
ran_no = unifrnd(0.0,1.0,&seed);

I have flag below to build

cc -m64 -o dist/Debug/Sun12-Solaris-x86/simperturbation build/Debug/Sun12-Solaris-x86/estimator.o build/Debug/Sun12-Solaris-x86/spoptimze.o -R/SunStudioProjects/randlib/dist/Debug/Sun12-Solaris-x86 -R/usr/sfw/lib/64 -lm /SunStudioProjects/randlib/dist/Debug/Sun12-Solaris-x86/randlib.so


However, during runtime, I have error blow:

ld.so.1: simperturbation: fatal: relocation error: R_AMD64_PC32: file /SunStudioProjects/randlib/dist/Debug/Sun12-Solaris-x86/randlib.so: symbol unifrnd: value 0x2800112fedf does not fit


If I run list dynamic dependencies with the target simulation application binary,

ldd simperturbation
libm.so.2 => /lib/64/libm.so.2
randlib.so => /SunStudioProjects/randlib/dist/Debug/Sun12-Solaris-x86/randlib.so
libc.so.1 => /lib/64/libc.so.1


As I compiled the DLL with -Kpic flag. It works

The URL below helps.

http://blogs.sun.com/rie/entry/my_relocations_don_t_fit

binary & library Info and In question

(1) file
(2) ldd

Stochastic Systems

governing variables -> system behavior

random variables -> stochastic system

large number: Not large until the change does not impact the system behavior

Complier flag for simulation Tool

1. Flag for 64 bit memory model of x86 platform architecture
2. Dynamic Library
3. Dynamic Link
4. Math Library
5. Runtime Search Path
6. -I include directory

cc -m64 -c -g +w -I/SunStudioProjects/randlib -o build/Debug/Sun12-Solaris-x86/spoptimze.o spoptimze.c

cc -m64 -o dist/Debug/Sun12-Solaris-x86/simperturbation build/Debug/Sun12-Solaris-x86/estimator.o build/Debug/Sun12-Solaris-x86/spoptimze.o -R/SunStudioProjects/randlib/dist/Debug/Sun12-Solaris-x86 -lm /SunStudioProjects/randlib/dist/Debug/Sun12-Solaris-x86/randlib.so

Complier flag for simulation Tool

1. Flag for 64 bit memory model of x86 platform architecture
2. Dynamic Library
3. Dynamic Link

cc -m64 -o dist/Debug/Sun12-Solaris-x86/simperturbation build/Debug/Sun12-Solaris-x86/estimator.o build/Debug/Sun12-Solaris-x86/spoptimze.o -R/SunStudioProjects/randlib/dist/Debug/Sun12-Solaris-x86 -lm /SunStudioProjects/randlib/dist/Debug/Sun12-Solaris-x86/randlib.so

Saturday, June 09, 2007

Social Network

CEpedia and Koda are typical Sun Social network

NIO or IO

It seems block or non-blocking address the FD limitation previously existing on the server. There is a work around to improve the FD limitation. However, from server socket processing with sequential by nature. I tend to suggest to take blocking IO for normal mid-large workload but small-mid workload take unblocking approach since it functionally replicate Queuing algorithms

Inetmenu good for Laptop

It is a good tool to assign IP for laptop

It requires root to run then get IP from DHCP server or Wireless Access Points.

S11 NV build Laptop

(1). Solaris Express, Developer version build installation
(2). If it is under SWAN, it will bypass a lot of setup to go straight with default
NIS process.
(3). It requires sys-unconfig process if you want change other things. Do not enable DHCP here
but use inetmenu

However, sys-unconfig will not give you option to change host name

So, it is important to get hostname change process.

To change the hostname on a Solaris system:

1. Change the hostname in /etc/nodename
2. Run uname -S new_hostname to change the nodename for your current session.
3. Change the hostname in /etc/hostname.network_interface (e.g. /etc/hostname.hme0)
4. Run hostname new_hostname to change the hostname for your current session.
5. Change the hostname in /etc/hosts
6. Change the hostname in /etc/net/*/hosts (/etc/net/ticlts/hosts, /etc/net/ticots/hosts, /etc/net/ticotsord/hosts)
for directory in ticlts ticots ticotsord
do
cd /etc/net/$directory
sed 's/old_hostname/new_hostname/g' hosts > hosts.new
mv hosts.new hosts
done
Solaris 7 or later additional instructions:
7. Change the hostname in DUMPADM_SAVDIR= line in /etc/dumpadm.conf

Solaris 10 additional instructions:
8. Change the hostname in /etc/inet/ipnodes



However, all x86 updates. should visit community software (csw package download)
http://www.blastwave.org/packages.php

blastwave.org


This includes wget, pkg-get, tetex etc.

WTS 2007 Paper Publication

Exchange information on advances in mobile communications and wireless networking technology, management, applications, and security in a very pleasant Southern California conference environment with leaders and experts from industry, governmental agencies, and universities around the world at the Wireless Telecommunications Symposium.

WTS 2007 will focus on The Future of Wireless Communications. Planned highlights of WTS 2007 include:

* An IEEE Communications Society Co-Sponsored Welcoming Dinner with Internet Pioneer Vinton G. Cerf, Vice President and Chief Internet Evangelist at Google, as guest speaker
* Addresses and presentations by some of the most respected executives and researchers in the wireless communications industry
* Panel discussions including Future Directions in Wireless Communications Research, Wireless Network Security, New Wireless Communications Ventures, Wireless Communications Investments, Mobile Wireless Services and Business, Wireless Communications Business Strategy, Advances in Satellite Communications, and The Future of Deep Space Communications
* A tutorial on Portable Emergency Networks and a Wireless Network Security Workshop
* Presentations of accepted academic and practitioner applied research papers; a poster paper session; a doctoral students session
* A tour of Universal Studios Hollywood followed by a reception at CityWalk


Peer-reviewed proceedings will be published by the IEEE and will be available on its Xplore online publication system. A CD containing the invited speakers' presentations and accepted applied research papers will be distributed to registrants at the conference. Applicable student papers are welcome. Awards will be given for the outstanding undergraduate and graduate papers submitted.


http://www.csupomona.edu/~wtsi/doc/WTS_2007-Accepted_Paper_Program.htm


My Paper on Lock contention is located by IEEE Explorer

ICACT2007 Paper publication

http://www.icact.org/program/program.asp#3


It is Feb 2007



My Paper stated as Index and SOA Performance


Please visit IEEE Explorer