As an example of the complexity of this project, the engineers ported the C++ version of Quake 1 engine into Flash Player and it worked perfectly and performed well. It is an extreme case but showcased the potential of this project.
The Quake 4 Intro video is here just to serve as an eye-candy.
While browsing around Flash/Flex blogs, I stumbled on an interesting article from Ted — Extending Adobe Flash Player and Adobe AIR with C and C++ via ActionScript 3.
The interesting thing as told by Ted was that Adobe’s Engineers are working on an internal project which is sort of a cross-compiler for ActionScript allowing any c/c++ code to run in the Flash Player or Adobe AIR. This is a rather nerve racking feat and Ted have already written of many interesting implications for extending Adobe’s platform in terms of legacy code, programming languages, and other open source code libraries.
Part of this implementation includes a pattern in ActionScript that allows for “green threading” that supports executing synchronous code in the asynchronous ActionScript virtual machine. The work done here is quite groundbreaking and has highlighted quite a few performance improvements in the current virtual machine while expanding the capability of the platform.
Adobe engineers and hackers have ported the C++ version of Quake 1 engine into Flash Player and it worked perfectly and performed well. This is extreme engineering and an utmost over-the-top expectation from the Flash Player. What if multiplayer games can be played without even downloading a piece of it, right off the browser, have all the office tools working flawlessly right inside your browser — well, it is rather limitless of what you can do; think of it and it might just be possible.
Alchemy is a research project that allows users to compile C and C++ code that is targeted to run on the open source ActionScript Virtual Machine (AVM2). The purpose of this preview is to assess the level of community interest in reusing existing C and C++ libraries in Web applications that run on Adobe® Flash® Player and Adobe AIR®.
With Alchemy, Web application developers can now reuse hundreds of millions of lines of existing open source C and C++ client or server-side code on the Flash Platform. Alchemy brings the power of high performance C and C++ libraries to Web applications with minimal degradation on AVM2. The C/C++ code is compiled to ActionScript 3.0 as a SWF or SWC that runs on Adobe Flash Player 10 or Adobe AIR 1.5.
Alchemy is primarily intended to be used with C/C++ libraries that have few operating system dependencies. Ideally suited for computation-intensive use cases, such as audio/video transcoding, data manipulation, XML parsing, cryptographic functions or physics simulation, performance can be considerably faster than ActionScript 3.0 and anywhere from 2-10x slower than native C/C++ code. Alchemy is not intended for general development of SWF applications using C/C++.
Download and Discuss
Get the Alchemy toolkit preview
Get and share ported libraries
Discuss Alchemy in the Labs forums
With Alchemy, it is easy bridge between C/C++ and ActionScript 3.0 to expand the capabilities of applications on the Flash Platform, while ensuring that the generated SWCs and SWFs cannot bypass existing Flash Player security protections.
Adobe is providing some example libraries, and developers are encouraged to share their ported libraries.
The Alchemy preview is prerelease software that is not supported by Adobe and may contain bugs. It is therefore advised that Alchemy not be used to generate code for use in production.
Watch Branden Hall, CTO of Automata Studios, discuss his experience working on the Ogg Vorbis porting project using Alchemy.
We are making this software available to gauge community interest in Alchemy and welcome your feedback. Please use the feedback link below to request features, make comments and report problems. Please also note that this is a research project and there is no assurance that there will be a shipping version of Alchemy.
Alchemy uses the LLVM compiler :
Low Level Virtual Machine (LLVM) is:
A compilation strategy designed to enable effective program optimization across the entire lifetime of a program. LLVM supports effective optimization at compile time, link-time (particularly interprocedural), run-time and offline (i.e., after software is installed), while remaining transparent to developers and maintaining compatibility with existing build scripts.
A virtual instruction set - LLVM is a low-level object code representation that uses simple RISC-like instructions, but provides rich, language-independent, type information and dataflow (SSA) information about operands. This combination enables sophisticated transformations on object code, while remaining light-weight enough to be attached to the executable. This combination is key to allowing link-time, run-time, and offline transformations.
A compiler infrastructure - LLVM is also a collection of source code that implements the language and compilation strategy. The primary components of the LLVM infrastructure are a GCC-based C & C++ front-end, a link-time optimization framework with a growing set of global and interprocedural analyses and transformations, static back-ends for the X86, X86-64, PowerPC 32/64, ARM, Thumb, IA-64, Alpha, SPARC, MIPS and CellSPU architectures, a back-end which emits portable C code, and a Just-In-Time compiler for X86, X86-64, PowerPC 32/64 processors, and an emitter for MSIL.
LLVM does not imply things that you would expect from a high-level virtual machine. It does not require garbage collection or run-time code generation (In fact, LLVM makes a great static compiler!). Note that optional LLVM components can be used to build high-level virtual machines and other systems that need these services.
LLVM is a robust system, particularly well suited for developing new mid-level language-independent analyses and optimizations of all sorts, including those that require extensive interprocedural analysis. LLVM is also a great target for front-end development for conventional or research programming languages, including those which require compile-time, link-time, or run-time optimization for effective implementation, proper tail calls or garbage collection. We have an incomplete list of projects which have used LLVM for various purposes, showing that you can get up-and-running quickly with LLVM, giving time to do interesting things, even if you only have a semester in a University course. We also have a list of ideas for projects in LLVM.
After developing a brand new CPU architecture from the ground-up, you’d expect that Toshiba, Sony and IBM would have more uses for the Cell architecture than the PlayStation 3, and Toshiba has been quick to make use of the architecture’s HD video transcoding abilities in its new Qosimo laptops. However, Leadtek is now taking Toshiba’s efforts a step further by putting the chip onto a PCI-E card for desktop PCs.
The WinFast PxVC1100 is based on Toshiba’s Toshiba’s SpursEngine SE1000 processor, which is a cut-down version of the Cell chip. The SpursEngine chip features four SPEs (synergistic processing elements) based on 128-bit RISC cores, along with H.264 and MPEG-2 codecs, but it doesn’t contain its own CPU as the chip in the PS3 does. The chip is capable of encoding and decoding H.264, MPEG-2 and MPEG-4 video streams in hardware.
Leadtek’s low-profile card also comes with 128MB of 1.6GHz XDR memory, and has a one-slot cooler. According to Leadtek, the card can be installed in 1x and 4x PCI-E slots, and it also requires external power from a four-pin floppy drive power connector. The company hasn’t revealed the clock speed of the SpursEngine chip on the card, although the SPEs in Toshiba’s SpursEngine-equipped laptops run at 1.5GHz. Leadtek says that the card will enable both encoding and transcoding at speeds that are ‘faster than real-time.’
Leadtek is currently demonstrating the card at CEATEC (Cutting Edge IT & Electronics Comprehensive Exhibition) in Japan, and says that it plans to ‘make a splendid speech about its outstanding development’ tomorrow. No release date has been revealed yet, but we’re told that the software bundle will include Corel’s WinDVD and DVD
The SpursEngine SE1000 CPU from Toshiba is one of the most advanced processors available when it comes to high quality video images. Today Leadteck announced their new WinFast PxVC1100 image and video processing board powered by the SpursEngine and stuck together with 128MB of XDR memory, a 1.6GHz.
This card’s main advantage is its fast HD video decoding and encoding, and also the ability to up-scale SD video to a higher and better resolution.
So far no information on the price of this little beast, but we just heard that Leadtek will use the CEATEC in Japan to demonstrate to the world the full power of their card.
Leadtek has demonstrated WinFast PxVC1100 image and video processing board. Based on Toshiba SpursEngine SE1000 processor, this card is designed to improve quality of video playback and accelerate video editing.
Leadtek WinFast PxVC1100 with Toshiba SpursEngine SE1000 processor
Leadtek WinFast PxVC1100 is a low-profile PCI-E x1 board that comes with 128MB of 1.6GHz XDR memory and SpursEngine SE1000 processor. The card is targeted at video enthusiasts, who need fast encoding or decoding of video streams. Beyond that, the card features eXtended Detail Enhancement (XDE) technology for improvement of standard video to “nearly HD quality”. Toshiba partners with Corel’s MovieFactory and CyberLink to take advatage of SpursEngine and XDE.
SpursEngine SE1000 integrates four high-performance Cell Synergistic Processing Element (SPE) cores devoted to encoding and decoding up to four MPEG-2 and H.264 1080p video streams at once
Taipei, Taiwan — Leadtek Research Inc announces that its WinFast PxVC1100 will be displayed at TOSHIBA’s booth in CEATEC JAPAN 2008, the world’s most comprehensive exhibition of cutting-edge information and electronics technologies, from Sep.30(Tue) to Ocb.4(Sat) at Makuhari Messe, Japan.
WinFast PxVC1100, a whole brand-new generation of MPEG4-AVC/H.264 transcoding card developed by Leadtek, is composed of Toshiba high-performance stream processor SpursEngine integrating four of Synergistic Processing Element (SPE) cores based on the “Cell Broadband Engine” intelligence power protection, one-slot adaptive cooling FANsink, and PCI-Express Low profile Form factor.
In order to clearly introduce the WinFast PxVC1100 to the public, Leadtek Research Inc. will make a splendid speech about its outstanding development in plenty of application of the SpursEngineTM SE1000 technology on Ocb.3 (Fri.). Besides, there will be not only an amazing show about the super resolution of WinFast PxVC1100 but a specific demonstration of its full system solution with the exhibition of an exclusive “encorder and bare-bones system” displaying on TOSHIBA booth, located at Hall 8: 8K15 in CEATEC JAPAN 2008.
At last, if WinFast PxVC1100 interests you greatly, we sincerely look forward to your visit.
Official members site of CEATEC JAPAN 2008?https://service.ceatecjapan.net/en/ (It is designed for pre-register to visit CEATEC JAPAN and make Conference reservations.)
Mobile Network Operators have been providing SMS text messaging capabilities for years but it’s only recently that MMS (Multimedia Messaging Service) enabled cell phones have become more popular. It allows an owner of the phone to take a photo and immediately send it to another MMS enabled cellphone. So what happens if a MMS enabled phone sends an e-mail to a non-MMS phone? Well, the mobile operators have thought of that and can host the images on their website and notify the user by text message or e-mail that a new photo is available to view.
You may assume that if you use this service to send a photo to a friend that your photo is protected and not broadcast for the entire world to see. Unfortunately, this may not be the case if there isn’t proper authentication, such as username and password login, to the mobile network operators website that’s hosting the images and here’s an example of that case.
Earlier today, we received an e-mail from O2 that was sent to an incorrect recipient. It’s quite likely that an e-mail address was entered incorrectly by the person setting up the account. I was surprised that we were able to view the image without having to login to the website but figured a strict combination of a unique user id number and unique image id would be required making it incredibly difficult to guess. After all, it wouldn’t be possible to access these images without receiving a misaddressed e-mail, right? Wrong!
I looked at the URL in the e-mail and found the only requirement was a 16 digit hex number. [Update: A few readers pointed out that a 64-bit key results in a HUGE number of possibilities to guess 10^19. However, as I can obtain the keys via another security hole no guessing is required - I’m not going to release that information yet as I’d like O2 to fix this]. As these web pages were wide open to the internet, not requiring any authentication a very small handful were indexed by Google. I was able to craft a Google search that results in some matches to show an example of how this is an insecure method of hosting:
Worse still, the majority of the images taken on cameras turns out to be children. Ironically, O2 has a website dedicated to “Protect Our Children”, well a good first step would be to avoid leaking customer photos.
Update: Someone posted this story to the O2 Customer Forum website but the thread has mysteriously disappeared. Hmmm….I wonder why? The thread discussing this in the forum was here but now simply returns “The topic or post you requested does not exist” webpage. Google did manage to grab it….
“Debian package maintainers tend to very often modify the source code of the package they are maintaining so that it better fits into the distribution itself. However, most of the time, their changes are not sent back to upstream for validation, which might cause some tension between upstream developers and Debian packagers. Today, a critical security advisory has been released: a Debian packager modified the source code of OpenSSL back in 2006 so as to remove the seeding of OpenSSL random number generator, which in turns makes cryptographic key material generated on a Debian system guessable. The solution? Upgrade OpenSSL and re-generate all your SSH and SSL keys. This problem not only affects Debian, but also all its derivatives, such as Ubuntu.”
------------------------------------------------------------------------
Debian Security Advisory DSA-1571-1 security <at> debian.org
http://www.debian.org/security/ Florian Weimer
May 13, 2008 http://www.debian.org/security/faq
————————————————————————
Package : openssl
Vulnerability : predictable random number generator
Problem type : remote
Debian-specific: yes
CVE Id(s) : CVE-2008-0166
Luciano Bello discovered that the random number generator in Debian’s
openssl package is predictable. This is caused by an incorrect
Debian-specific change to the openssl package (CVE-2008-0166). As a
result, cryptographic key material may be guessable.
This is a Debian-specific vulnerability which does not affect other
operating systems which are not based on Debian. However, other systems
can be indirectly affected if weak keys are imported into them.
It is strongly recommended that all cryptographic key material which has
been generated by OpenSSL versions starting with 0.9.8c-1 on Debian
systems is recreated from scratch. Furthermore, all DSA keys ever used
on affected Debian systems for signing or authentication purposes should
be considered compromised; the Digital Signature Algorithm relies on a
secret random value used during signature generation.
The first vulnerable version, 0.9.8c-1, was uploaded to the unstable
distribution on 2006-09-17, and has since propagated to the testing and
current stable (etch) distributions. The old stable distribution
(sarge) is not affected.
Affected keys include SSH keys, OpenVPN keys, DNSSEC keys, and key
material for use in X.509 certificates and session keys used in SSL/TLS
connections. Keys generated with GnuPG or GNUTLS are not affected,
though.
Try typing `jobs’ on Google search, and you might be in for a surprise — on the sponsored links column, one of the ads is by competitor Yahoo!
That is probably why Murugavel Janakiraman, Founder and Chief Executive Officer, Bharatmatrimony.com, comfortably maintains relations with both companies — Yahoo is an investor in his portal, while the other provides advertising space for the matchmaker.
However, it isn’t just the big players who are benefiting from Google AdWords and AdSense. A whole network has arisen, which includes advertisers from SMEs to MNCs, hosts from large publishing portals to individual bloggers, and, of course, the 50 million Internet users in the country. According to a comScore Media Matrix 2005 report, about 80 per cent of Internet users access Google.com.
K. Sundararaman, Acting Sales Head, Google India, sheds some light on how this network works. He says that apart from the ads that appear on www.google.com, there is Google AdSense, which allows individual Web sites to rent out the space on the page.
These Web sites, Sundararaman explains, are selected through `site targeting’ that “allows advertisers to choose individual Web sites within the Google content network where they would like their ads to appear … allowing advertisers to handpick the audience they want to reach.”
Managing ad campaigns
Apart from this, the advertiser can specify search-targeted keywords for categories such as broad matches, phrase matches, exact matches or negative matches. This keyword matching system is completely automated. “We suggest using a combination of two or more of these techniques to run an effective ad campaign,” he says.
Which in turn means that managing an effective ad campaign with Google AdWords is not quite such a simple project. For example, Bharatmatrimony.com has a three-member internal team that continually reviews the conversion rate of the number of people that click on their ads in other Web sites, the cost of advertising on Google and the relevance of the keywords that the company has submitted, says Janakiraman.
As large clients, they work in conjunction with a team from Google that has been assigned to work with them. The company has bought about 30,000 keywords.
Keywords matter
Similarly, eBay has an internal team that works full-time on the paid search programme with the Google account team, according to Rathin Lahiri, Head - Marketing, eBay India. This is possibly because “paid search is one of the better performing channels and the search customer is an evolved customer,” he says.
The revenue model for the Web site is that advertisers pay for the click or impression that they receive.
For ads priced at cost-per-thousand-clicks, an advertiser may pay as low as Rs 10 per thousand, and for cost-per-click priced ads, it may be as low as Re 0.44 per click, according to the company.
The rate of keywords varies, says Lahiri. For example, the keyword `Nokia’ would be more valuable than a keyword such as `pencil’ — at the end of the day, the rate that eBay pays is a function of the click-through-rate and the cost-per-click. The keyword `Nokia phone’ is more valuable than `Nokia blue tooth device’ and therefore has a better click-through-rate.
Users big and small
This has opened up a whole market through the AdSense route. And since the tool caters to publishers of all sizes, the company has both large publishers that have content on the Internet such as Sify.com, NDTV.com, and Moneycontrol.com, as well as individual Web site owners.
Deepesh Agarwal, who runs a Web site that provides freeware solutions, receives on an average 4,000-odd daily ad impressions and earns anywhere from $800 to $2,100 per month depending on the amount of traffic and its `quality.’
He has been using the service for three years. Though the first two years didn’t yield many results, but the last year has been a good one. In fact, though the Web site was never intended as a money-spinner, it now constitutes the biggest portion of Agarwal’s revenue.
Success story
“My traffic is primarily from the US and Canada — about 60 per cent — and the visitors are common computer users looking for free alternatives for paid shareware applications meant for day-to-day computer maintenance tasks,” he explains.
But it doesn’t even have to get that technical to be a success. Jamshed Velayuda Rajan, a Usability Consultant with Satyam Computers, maintains two Web sites — one in which he writes about himself and his family, and another blog on cricket.
The latter, he expects, will have traffic of about 2,500 to 3,500 people when cricket matches are going on.
Typically, 350 unique people per day, and about 450 to 500 clicks is the count for his two portals combined.
As for the remuneration, he explains, “High value keywords would earn more — if I had a finance blog, for example, I could make as much as $4 for one click.
Since cricket is not a money-spinner in that sense, perhaps between 10 and 30 cents per click.” All in all, he has made about Rs 30,000 in the last two years.
Not bad for a man who was looking to have a bit of fun by writing about his life and his family. - by Abhinav Ramnarayan
Anyone looking for work at home opportunity can easily make handsome earning through pay per click program. For this all they need is basic IT knowledge in the form of Microsoft certification and the latest seo tips. Nowadays some quality web hosting companies are offering free tips to their clients. While making the selection of web site hosting, webmasters should focus on this feature as well. Another basic requirement for success in this field is high speed internet connection. In this regard IP phones are considered the best.