Threads play a major role in applications programming today. For example, most Web servers are threaded, as are many Java GUI programs. Here are the major settings in which using threads has been founded convenient and/or efficient:
• Programs with asynchronous events:
Here the program must be ready for various events, but does not know the order in which they might occur. For example, in Sections 3.1 and 3.2, we have a network server connected to several clients. The server does not know from which client the next message will arrive. So, we have the server create a separate thread for each client, with each thread handling only its client.
Read the rest of this entry »
In 1991, a group of Sun Microsystems engineers led by James Gosling decided to develop a language for consumer devices (cable boxes, etc.). They wanted the language to be small and use efficient code since these devices do not have powerful CPUs. They also wanted the language to be hardware independent since different manufacturers would use different CPUs. The project was code-named Green.
Read the rest of this entry »
Many developers will have read Herb Sutter’s article “The Free Lunch is Over” which talks about the future speed increases of CPUs. The good news is that they will get significantly faster, but the bad news is that you won’t see all of the possible performance gains unless you write your application to take advantage of them. Over the last few years the increase in clock speeds has slowed down, and chip manufacturers are focussing more and more on concurrent execution of code. Hyperthreading was the first step, which allows a single processor core to execute two threads in parallel, but the future is multi-core chips which will allow many threads to execute truly independently. Intel is already talking about chips with over a hundred cores, so if your code is single-threaded you may only be using one hundredth of the available processing power!
Read the rest of this entry »
10 Oct
Posted by jj as Database, SQL Server
Unisys and Microsoft have dispelled the perception that for high performance ETL, the only alternative is a UNIX-based solution. With SQL Server 2005 Integration Services, Microsoft and Unisys deliver an optimized ETL solution that will support even the most demanding enterprise Business Intelligence (BI) initiatives. They conducted a series of real ETL (Extraction, Transformation and Load) tests with Microsoft SQL Server 2005 Integration Services (SSIS, formerly known as DTS). Performance tests compared throughput, scalability and performance on both 32- and 64-bit processor configurations on a Unisys ES7000. SSIS demonstrated parallelism and the ability to utilize all available CPUs in multiple aggregation, parallel lookup and transformation testing.
Read the rest of this entry »
23 Sep
Posted by jj as Database
Unisys and Microsoft collaborated on a proof of concept to demonstrate that the Microsoft SQL Server 2005 product suite will support even the most demanding enterprise business intelligence initiatives. The proof of concept shows that SQL Server 2005 can deliver the same or better results for a high-performance enterprise-class data warehouse than the more-costly alternatives.
Read the rest of this entry »
Memory protection
Buffer overrun attacks are among the most common mechanisms, or vectors, for intrusion into computers. In this type of exploit, the attacker sends a long string to an input stream or control – longer than the memory buffer allocated to hold it. The long string injects code into the system, which is executed, launching a virus or worm.
Read the rest of this entry »
Introduction to 15-inch PowerBook G4 Developer Note 9 Who Should Read This Document?9 Organization of This Document 9 Chapter 1 Overview to the 15-inch PowerBook G4 11 New Features 11 All Features 12 Appearance 14 Peripheral Devices 16 System Software 17 Open Firmware 17 Computer Identification 17 Power Management 18 Chapter 2 Architecture 21 Block Diagram and Buses 21 Block Diagram 21 Main IC and Buses 22 Microprocessor and Cache 23 PowerPC G4 Microprocessor 23 Level 2 Cache 23 Intrepid Controller Functions and Buses 23 System RAM 24 Boot ROM 24 FireWire Controller 24 Ethernet Controller 24 Video Display Subsystem 25 DMA Support 26 Interrupt Support 26 USB 2.0 Interface 26 Ultra DMA/100 Interface 26 EIDE Interface
Read the rest of this entry »
This Developer Note v Supplementary Documents v Conventions and Abbreviations vi Typographical Conventions vi Standard Abbreviations vi Macintosh PowerBook 145B 1 Features 2 Compatibility Issues 3 Modem Slot 3 RAM Expansion Slot 3 Identifiying the PowerBook 145B 3 About This Developer Note This document describes the Macintosh PowerBook 145B computer, emphasizing those features that are new or different from other Macintosh PowerBook computers. It is written primarily for experienced Macintosh hardware and software developers who want to create products that are compatible with these new computers.
Read the rest of this entry »