blogs.sun.com

Prenumerera på innehåll
Welcome to Blogs.sun.com! This space is accessible to any Sun employee to write about anything.
Webbadress: http://blogs.sun.com
Uppdaterad: 1 tim 16 min gammalt

Free JavaEE Prezos in Santa Clara and Dallas

tis, 2010-05-18 03:00

Last minute but... If you are close to either Santa Clara, CA, or Dallas, Tx, and are interested in JavaEE 6, check out these free JavaEE 6 Roadshow presentations:

• Roberto Chinnici, SCA Bldg 3 Auditorium, SCA, CA 95054
• Arun Gupta, SMU Bldg 4, Room 102, Plano, TX 75024

Both are 6:30PM-9:00PM (PT and CT, respectively). And stay tuned for more Roadshow events from Oracle University.

Multicore application programming: Table of contents

mån, 2010-05-17 16:00

I've uploaded the current table of contents for Multicore Application Programming. You can find all the detail in there, but I think it's appropriate to talk about how the book is structured.

Chapter 1. The design of any processor has a massive impact on its performance. This is particularly true for multicore processors since multiple software threads will be sharing hardware resources. Hence the first chapter provides a whistle-stop tour of the critical features of hardware. It is important to do this up front as the terminology will be used later in the book when discussing how hardware and software interact.

Chapter 2. Serial performance remains important, even for multicore processors. There's two main reasons for this. The first is that a parallel program is really a bunch of serial threads working together, so improving the performance of the serial code will improve the performance of the parallel program. The second reason is that even a parallel program will have serial sections of code. The performance of the serial code will limit the maximum performance that the parallel program can attain.

Chapter 3. One of important aspects of using multicore processors is identifying where the parallelism is going to come from. If you look at any system today, there are likely to be many active processes. So at one level no change is necessary, systems will automatically use multiple cores. However, we want to get beyond that, and so the chapter discusses approaches like virtualisation as well as discussing the more obvious approach of multi-thread or multi-process programming. One message that needs to be broadcast is that multicore processors do not need a rewrite of existing applications. However, getting the most from a multicore processor may well require that.

Chapter 4. The book discusses Windows native threading, OpenMP, automatic parallelisation, as well as the POSIX threads that are available on OS-X, Linux, and Solaris. Although the details do sometimes change across platforms, the concepts do not. This chapter discusses synchronisation primitives like mutex locks and so on, this enables the chapters which avoids having to repeat information in the implementation chapters.

Chapter 5. This chapter covers POSIX threads (pthreads), which are available on Linux, OS-X, and Solaris, as well as other platforms not covered in the book. The chapter covers multithreaded as well as multiprocess programming, together with methods of communicating between threads and processes.

Chapter 6. This chapter covers Windows native threading. The function names and the parameters that need to be passed to them are different to the POSIX API, but the functionality is the same. This chapter provides the same coverage for Windows native threads that chapter 5 provides for pthreads.

Chapter 7. The previous two chapters provide a low level API for threading. This gives very great control, but provides more opportunities for errors, and requires considerable lines of code to be written for even the most basic parallel code. Automatic parallelisation and OpenMP place more of the burden of parallelisation on the compiler, less on the developer. Automatic parallelisation is the ideal situation, where the compiler does all the work. However, there are limitations to this approach, and this chapter discusses the current limitations and how to make changes to the code that will enable the compiler to do a better job. OpenMP is a very flexible technology for writing parallel applications. It is widely supported and provides support for a number of different approaches to parallelism.

Chapter 8. Synchronisation primitives provided by the operating system or compiler can have high overheads. So it is tempting to write replacements. This chapter covers some of the potential problems that need to be avoided. Most applications will be adequately served by the synchronisation primitives already provided, the discussion in the chapter provides insight about how hardware, compilers, and software can cause bugs in parallel applications.

Chapter 9. The difference between a multicore system and a single core system is in its ability to simultaneously handle multiple active threads. The difference between a multicore system and a multiprocessor system is in the sharing of processor resources between threads. Fundamentally, the key attribute of a multicore system is how it scales to multiple threads, and how the characteristics of the application affect that scaling. This chapter discusses what factors impact scaling on multicore processors, and also what the benefits multicore processors bring to parallel applications.

Chapter 10. Writing parallel programs is a growing and challenging field. The challenges come from producing correct code and getting the code to scale to large numbers of cores. There are some approaches that provide high numbers of cores, there are other approaches which address issues of producing correct code. This chapter discusses a large number of other approaches to programming parallelism.

Chapter 11. The concluding chapter of the book reprises some of the key points of the previous chapters, and tackles the question of how to write correct, scalable, parallel applications.

New Pricing for Sun SPOTs

mån, 2010-05-17 15:50

So we're almost sold out of Sun SPOTs, but we have also changed the pricing model. Remember when users were complaining that the retail price for $750/kit was too high? Right. So we have made some adjustments to the pricing model.



  1. There is no difference between 'retail' and 'educational' pricing anymore.
  2. The single price is $399.00 per kit.


You read those prices correctly. We have lowered the retail price from $750.00 to $399.00 which is a pretty darned good deal! I encourage you all to get over to our store and order up!

new Sun Fire x2200 M2 server

mån, 2010-05-17 13:34

There is small, but exciting news on the web, since the Oracle Sun Fire x2270 M2 was announced last week. This is the first x64 server refresh to be announced by Oracle since the Sun acquisition, so this is good news for those spreading rumors ...



The x2270 M2 is a model refresh for the old 2270 and the first server to include the new 32 nm Intel 5600 processor (a.k.a Westmere). Other great new feature are the two slots for Sun Flash modules on the motherboard. This server is positioned for cloud or technical computing environments. As usual a white paper and documentation are on the linked Oracle.com website.


Especially important for partners you can find important info on the wikis.sun.com site, like an overview of option boards and os drivers and a list of supported Oracle and third party OS.


Profilierungsbeissreflex?

mån, 2010-05-17 12:58
Schüler-VZ laesst sich Daten von 1.6 Millionen User abspidern, die Privacystrategie von Facebook ist nebuloes. Loyality-Karten werden noch und nöcher benutzt. Kreditkarten sowieso. Millionen Deutsche tragen ein Trackingdevice mit sich rum, das es dem Staat leicht macht, sie zu orten (Es gibt Leute, die nennen dieses Teil Mobiltelephon).

Aber trotzdem regen sich die Medien darüber auf, das Google Daten versehentlich (und das glaube ich ihnen "Cool, hier hat schon jemand code geschrieben, der Beacons rauswirft. Muss ich das nicht tun ....") mitgeschnitten hat, die zu nichts nuetzen (zu wenig Daten um die Verschluesselung zu cracken, zu gering die Wahrscheinlichkeit beim Durchfahren zufällig irgendwas sinnvolles zu lesen, und wer in einem WLAN ein unverschlüsseltes Protokoll benutzt, gehoert eh ausgepeitscht), meist verschluesselt sind, ohnehin öffentlich sind und meines wissens keine Reidentifizierbarkeit zulässt (Wer sein Netzwerk schön selbstbeschreibend beispielsweise "JoergMoellenkampsWLAN" nenn, ist selber schuld, ansonsten wäre mir keine Liste bekannt in der WLANs mit MAC-Addressen auf Personen gemapt werden).

Ich sehe da nicht mal einen Fehler von Google. Die Rohdaten sind nicht öffentlich, sowie vermutlich gefiltert und gereinigt (naemlich reduziert auf Koordinaten und MAC-Adresse, alles andere wäre wohl Platzverschwendung) und nur über eine API verfügbar. Es sind Daten, die jeder x-beliebige Computernutzer auch hätte abgreifen können.

Man muss hier Google zugute halten, das sie einen Fehler zugegeben haben, der keinerlei praktische Bedeutung hat. Die Kristik ist eher der unreflektierte, aber übliche Google-Profilierungsbeissreflex, der da mittlerweile andauernd an den Tag tritt.

Wir haben andere Privacy-Probleme ... alle wichtiger als die Traffic-Fragmente, die ihren Weg auf die Festplatten der Streetview-Autos gefunden haben.

Eine Frage am Rande übrigens: Was glauben die Leute eigentlich, wie die Geschwindigkeitssymbole und Strassenschilder in die Navigationskarten ihres bevorzugten Navigationssystems kommen?

Oracle Solaris Cluster Community

mån, 2010-05-17 11:05


- Do you have a question around Oracle Solaris Cluster ?
- Do you have a login into My Oracle Support or SunSolve ?
- Do you like to collaborate and sharing knowledge with your peers ?


Then login into the moderated Oracle Solaris Cluster Community and feel free to ask and answer questions. In the Community it's possible to start discussions and knowledge documents can be created. For easy monitoring subscribe to discussions and documents. If somebody answers your question you can identify the thread with 'Correct Answer' or 'Helpful Answer' this helps to find solutions quickly. Additional in the 'Private Messages' tab you can talk to other community members…

At this time there are more than 140 online Oracle Support Communities where you can participate. So, please give it try and login into the 'My Oracle Support Community' , setup your profile and refer to 'Getting Started' region in the upper right corner of the main page.

See you there...

Framework support improvements

mån, 2010-05-17 09:38

Hi all, today we will have a look at the latest improvements that can be found in NetBeans PHP Frameworks area. We believe that the most important feature is that code completion in view (or template) files now offers variables from controller (or action) files - this works for both, Symfony and Zend Frameworks. So, let's have for example this controller:

One can see that we pass a pager variable to our view template so now, we can see it in code completion in view file:

Please notice that the $pager variable is not only listed in code completion items but that NetBeans also knows its type and the file where it is defined. That means that Go To Declaration (CTRL + click) works as well and of course, we can find all the public methods and fields in code completion for the $pager variable itself:

Other minor improvements can be found in navigating and running framework commands - now, one can use just one shortcut for navigating from action to view and vice versa and NetBeans automatically calls the correct framework support. The same applies for running framework commands - no need to specify two shortcuts, one for Symfony and one for Zend. These shortcuts can be changed in Tools > Options > Keymap (the default for Run Framework Command is ALT + SHIFT + R).

That's all for today, as always, please test it and report all the issues or enhancements you find in NetBeans Bugzilla (component php, subcomponent Symfony or Zend). Please notice that if you write a comment here but do not report a bug or enhancement, nothing will probably happen ;)

Interview met Wim Coekaerts, SVP Oracle over Sun Ray, Oracle VDI, Oracle VM, VirtualBox en meer

mån, 2010-05-17 08:05
Geïnteresseerd in hoe Oracle de Sun Desktop producten oppakt? Bekijk dan het interview met Wim Coekaerts, SVP Oracle Linux & Virtualization in een uitzending van Oracle Technology Networks.

What I Don't "Get" About Eclipse Advocates...

mån, 2010-05-17 07:40
Read this article by Ian Skerrett on Eclipse Zone and then read this blog entry by Chris Aniszczyk. Both Chris and Ian are prominent members of the Eclipse community. Their "take" on the new possibilities of NetBeans Platform applications to include OSGi bundles and even to run natively as OSGi bundles is interesting. Rather than saying: "Hey, awesome, great to hear!", both the responses seem to be along the lines of: "Welcome out of the stone age and, yes, we've been right all along!" Not exactly a warm embrace.

But, anyway, speaking of which, arguing along the same lines (i.e., "at last NetBeans has seen the light"), when is Eclipse going to run natively on Swing? That's the standard UI toolkit for Java desktop applications, isn't it? The point is, if your argument is that it's great that NetBeans can "finally, at last, hurray" run on the standard module system, isn't it weird that you consider it acceptable to run on your own proprietary UI toolkit?

It's not just me that thinks this, since probably (rough guess) 95% of those who choose to use the NetBeans Platform over Eclipse RCP (read some of their motivations here) do so because the NetBeans Platform uses the standard UI toolkit, while Eclipse doesn't. So, here's hoping Eclipse will continue operating in the stone age (i.e., using their own system while a standard system exists) of using SWT for all eternity since it is exactly this differentiator that has made the NetBeans Platform so popular. :-)

EditPlus 显示韩语

mån, 2010-05-17 07:04

工作需要,EditPlus 编辑亚欧18个语言,唯独韩语显示方块(乱码)。解决方案来自网络,摘抄与此,广而告之。

  1. Tools --> Preferences
  2. General --> Fonts,设置Font为Gulim,确定

ps: 韩语常见字体: Dotum、Batang和 Gulim 均可。

--------------------------------------------------------------

How to view/edit Korean by EditPlus.

  1. Tools --> Preferences
  2. General --> Fonts, set Font to Gulim, click OK.
ps: Fonts "Dotum", "Batang" also work.

SA-Plugin for VisualVM

mån, 2010-05-17 01:15

We all know Serviceability Agent - a great debugging tool for troubleshooting HotSpot VM problems.

Now Serviceability Agent is also available in VisualVM through SAPlugin. More deatils here:
https://visualvm.dev.java.net/saplugin.html

org.openide.nodes.FilterNode (Part 2)

mån, 2010-05-17 00:39
The question of the day comes from Jesper Sahner: "I have a node representing a folder on disk. How can I easily select/omit specific file types?"

My response:

  1. Follow all the steps here:

    http://blogs.sun.com/geertjan/entry/netbeans_apis_outside_of_the

  2. Then add this file to the module: public class FileFilterNodeChildren extends FilterNode.Children{ public FileFilterNodeChildren(Node original) { super(original); } @Override protected Node[] createNodes(Node object) { List<Node> result = new ArrayList<Node>(); for (Node node : super.createNodes(object)) { if (accept(node)) { result.add(node); } } return result.toArray(new Node[0]); } private boolean accept(Node node) { if (node.getDisplayName().endsWith(".doc") || node.getDisplayName().endsWith(".xls")){ return true; } else { return false; } } }

That's all. Similar story to part 1 which also discusses FilterNode.

Oracle Blogs, Tweeters, Feeds and Planets

sön, 2010-05-16 22:59

Here are some useful links to Oracle-related content that I recently discovered, as seen from the perspective of a "Sun classic" Oracle employee.

Start with Blogs.Oracle.Com.  I had checked it out last year and then forgot about it but I just revisited it and I found the content quite interesting. BOC covers a number of topics, from the core Oracle DB, to ADF, to CEP, and more; a few recent examples are:

You can track BOC from the website, the RSS feed and @oracleblogs. BOC does not have as much volume as what BSC had, say, in early 09, but it's pretty close to today's BSC.  And, BTW, Justin has indicated that the current plan is to merge BOC and BSC (and, yes, the BSC content will be preserved).

Like at Sun, plenty of useful content is generated outside of BOC, but, unlike BSC, BOC does not include a planet aggregator. Two useful planets are OraFAQ.com (RSS, @orafaq) and OraNA.info (RSS , @oraNA).  I discovered oraNA first and I'm following it; sample posts from there:

Overall, there is quite a bit of community generated content around Oracle-related technologies.  Oracle employees also seem to generate a healthy amount of content, I suspect tempered by things like culture and RevRec. A key difference is the lack of blogging from Oracle management: clearly, upper management has a different perspective.

Note - If you know of other key sources of information on Oracle, let me know via comments to this entry and I'll update the main post.

Connect to facebook chat through XMPP

sön, 2010-05-16 21:40

So it looks like Facebook finally opened up access to their chat service for third party applications such as Pidgin, Adium, etc..
They used the open protocol XMPP (good for them!) so we can use our regular IM client to chat with our Facebook contacts without the need of ugly hackish plugins.

Instructions for Pidgin (version 2.7):

 - Get a Facebook username. We have a numerical one by default (which we won't know unless someone with his/her account set up in Pidgin tells us) but in the Account Setting menu we can set a new one (for example, alias.surname)

 - Create a new account in Pidgin with the Account Manager. Parameters:
Protocol: XMPP
User name: alias.surname (the one chose above)
Domain: chat.facebook.com
Resource: Facebook (whatever label, really)
Password: Our facebook's password (duh!)
ADVANCED TAB:
Disable 'Require SSL/TLS encryption'
Connect to server: chat.facebook.com

Sources:
http://wiki.developers.facebook.com/index.php/Integrating_with_Facebook_Chat
http://www.facebook.com/sitetour/chat.php

The Fmod slots in the X2270 M2

sön, 2010-05-16 13:32
A colleague thought of an interesting use case for the flash modules in the X2270 last week: Getting rid of the rotating rust boot disks in the system and use the FMods as a boot device instead. And given that there is just a 2TB enterprise-class SATA disk on price list, they are actually cheaper than the rotating rust.

About Rock

sön, 2010-05-16 12:49
Just as i get a steady stream of questions about Rock, i just want to quote one paragraph from the Ellison interview:At the start, Ellison shut down one of Schwartz's pet projects -- development of the "Rock" microprocessor for Sun's high-end SPARC server line, a semiconductor that had struggled in development for five years as engineers sought to overcome a string of technical problems. "This processor had two incredible virtues: It was incredibly slow and it consumed vast amounts of energy. It was so hot that they had to put about 12 inches of cooling fans on top of it to cool the processor," said Ellison. "It was just madness to continue that project."Perhaps I will tell the complete story from my perspective once i'm old, perhaps when i'm starting to write a book about the mental asylum called IT business.