and the Enterprise User Brian Nitz Software Engineer brian.nitz@sun.com
GNOME and the Enterprise User Who uses GNOME? ● Scientific ● Medical ● Education ● Enterprise ● Developers ● Sun
Sun's GNOME based products ● GNOME 1.4 Preview on Solaris ● GNOME 2.0 on Solaris ● GNOME 2.2 on JDS (linux) ● GNOME 2.6 (beta starting)
Java Desktop Client Components K e y c o m p o n e n ts g ra p h ic Mozilla Browser + Flash,Acrobat,Real plugins Evolution Email, Directory and Calendar client StarOffice Office Productivity Suite GAIM + Java System IM Instant Messaging clients GNOME Desktop Environment Java Development Platform Java Desktop System r.2 Linux OS
Enterprise user must haves: ● Stability ● Performance ● Usability ● Interoperability ● Scalability ● Manageability ● Security
Stability ● Often low expectations ● The “reinstall/reboot fix” ● GNOME is competitive ● Total UI lockups and crashes are rare
Performance ● Keypress and mouse movement must generate immediate response ● Obvious launch and activity throbbers ● No noticible window size/drag delays ● Allow reuse of older PCs
Usability ● Consistency ● Task Focus ● Appropriate access to desktop properties ● Personal preferences ● Simplicity
Simplicity
Why doesn't it say “Start?”
Consistency ● Window decorations ● Keyboard navigation <Control-T> in Mozilla opens new tab and in gnome-terminal ● Mouse movements/clicks ● Instant apply properties
Interoperability ● Network ● Application ● Data type
Network Interoperability ● Nautilus Samba (authentication) NFS (locking) WebDav
Application Interoperability ● Win32 ABI ✔ WINE ✔ Terminal services on native server ✔ Port it ● Terminal Interface ✔ Gnome-terminal ✔ Web-based terminal emulators (HP,TN3270...) ● Java ● Plugins
Communication applications ● Email and chat clients Evolution, Mozilla, GAIM, GnomeMeeting ● Browser Mozilla 1.4.1 ● Office Suite StarOffice 7 ● Multimedia Totem, Java Media Player, RealPlayer
Data Interoperability ● New document interoperability is easy OpenOffice.org and StarOffice export natively in XML European Union adopted this format Optional exports in HTML, PDF, DOC
Legacy doc interoperability ● More difficult ● Helper Applications ✔ OpenOffice.org/StarOffice[tm] ✔ Adobe Acrobat[tm] ✔ Flash[tm] ✔ RealPlayer[tm] ● License issues ● Other Issues Wrappers such as MS/TNEF or BinHex Incorrect MIME hints & sniffing
Roadblocks ● License issues ● Open content authoring (e.g. DVD)
Scalability Issues ● Nautilus
Deep Networks Trash, thumbnails, hang on stale mounts...
Be Nice!!! ● clock-applet ● gtik2-applet2 ● Screensavers ● Themes ● pixmaps
A case study SunRay[tm] a quick overview 10 CPU, 32 Gigabyte, ~170 user system in Denver Too many cross calls are hurting performance. What is causing this? Detective work with dtrace.
Who tells Xserver to create/destroy pixmaps? dtrace on GNOME 2.0 in SunRay environment Fish-applet2 Galf-server Nautilus Mozilla-bin Gnome-panel 6.30% Metacity 6.26% Xsun Gnome-smproxy 5.62% Dtwm Dsdm 5.59% Netscape Gnome-terminal 0.93% Xscreensaver Gedit soffice.bin Netscape-bin gtik2_applet2 73.41% Gnome-terminal Dsdm Gnome-smproxy Metacity Gnome-panel gtik2_applet2
Who is abusing the Xserver? Fish-applet2 1 Galf-server 4 Nautilus 7 Mozilla-bin 8 Xsun 10 Dtwm 15 Netscape 20 Xscreensaver 23 Gedit 25 soffice.bin 26 Netscape-bin 26 Gnome-terminal 81 Dsdm 487 Gnome-smproxy 490 Metacity 546 Gnome-panel 549 gtik2_applet2 6399
The Culprit Each instance of gtik2_applet2 created and destroyed an X graphics context every 10 milliseconds. Stopping 6 gtik2 applets on a 10 CPU, 32 Gigabyte, ~170 user system: ● Decreased cross-calls by 64% ● Decreased involuntary context switches by 35% ● Decreased system time 27% ● Decreased user time 37% ● Increased idle time 15%
Thin Clients/Multiuser ● Proper use of /tmp Generate process specific unique temporary file names. Clean them up (PIDs aren't unique across reboots!) ● Display variables Applications shouldn't hard code or modify $DISPLAY Don't assume :0.0 Don't hard code audio, use $AUDIODEV ● IP address assumptions Applications should not assume unique IP addresses per user (e.g. license server) Applications should not assume that services are bound to a particular IP address (e.g. NFS cluster lock)
Shared Preferences ● GNOME 2.0, 2.2, 2.6... may share the same home directory
Manageability ● Gconf provides the capability in GNOME ● APOC provides a common interface for selective gconf-keys and for non-gconf applications (StarOffice/Mozilla) ● APOC allows manageability across an organization
Desktop Configuration Manager Fine-grained control ● Delivers application-level (StarOffice, GNOME, Mozilla, Evolution, etc.) Configuration and Policy Management to the Java Desktop System. ● Centrally/remotely manage the “options” and “preferences” of core software components (GNOME, StarOffice, Mozilla, Evolution,) ● Desktop “lockdown” functionality allow/disallow end users the ability to reconfigure their centrally configured applications based on roles and organizations.
Sun Control Station 2.1 Desktop Management ● Manage a set of desktop images for rapid setup to multiple desktops simultaneously ● Automatically deploy a JDS desktop environment from a former Windows environment ● Dependency checking to insure correct patches/packages installed ● Software Repository and SW / Hardware inventory management ● Health and Performance Monitoring
Remote Desktop Takeover ● View and interact with user desktop display to help, guide and trouble shoot ● Provide remote access to a users Desktop for help desk and remote access capabilities ● Speeds problem resolution for standard help desk calls
Security ● Desktop configurability ● Desktop lockdown features ● Immunity from common malware
The Future ● Accessibility ● Usability ● Configurability ● Interoperability ● Applications ✔ Project Management ✔ Multimedia ✔ Authoring ✔ Collaboration
Recommend
More recommend