.: Latest News :. .:News in Pictures:.




Horoscope Recipes

Weekly SectionMarker



Pakistan's Internet Magazine
Herald




Weather

Dawn Classified

Cowasjee Ayaz Mazdak Review Dawn Magazine Young World Images

Previous Story DAWN - the Internet Edition Next Story



Science.com

October 11, 2003



Terms for computer junkies


PUMP up your computer-related vocabulary! Load your brains with these frequenty used i-terms.

Thread: In computer programming, a thread is placeholder information associated with a single use of a program that can handle multiple concurrent users. From the program’s point-of-view, a thread is the information needed to serve one individual user or a particular service request. If multiple users are using the program or concurrent requests from other programs occur, a thread is created and maintained for each of them. The thread allows a program to know which user is being served as the program alternately gets re-entered on behalf of different users. (One way thread information is kept by storing it in a special data area and putting the address of that data area in a register. The operating system always saves the contents of the register when the program is interrupted and restores it when it gives the program control again.)

Multithreading: Some computers can only execute one program instruction at a time, but because they operate so fast, they appear to run many programs and serve many users simultaneously. The computer OS (for example, Win95) gives each program a “turn” at running, then requires it to wait while another program gets a turn. Each of these programs is viewed by the OS as a “task” for which certain resources are identified and kept track of. The OS manages each application program in your PC system (spreadsheet, word processor, browser) as a separate task and lets you look at and control items on a “task list.” If the program initiates an I/O request, such as reading a file or writing to a printer, it creates a thread so that the program will be reentered at the right place when the I/O operation completes. Meanwhile, other concurrent uses of the program are maintained on other threads. Most of today’s operating systems provide support for both multitasking and multithreading. They also allow multithreading within program processes so that the system is saved the overhead of creating a new process for each thread.

The Portable Operating System Interface.4a C specification provides a set of application program interfaces that allow a programmer to include thread support in the program. Higher-level program development tools and application subsystems and “middleware” also offer thread management facilities. Object-oriented programming languages also accommodate and encourage multithreading in several ways. For example, Java supports multithreading by including synchronization modifiers in the language syntax.

Hyper-Threading: It is a technology used by some Intel microprocessors that allows a single microprocessor to act like two separate processors to the operating system and the application programs that use it. It is a feature of Intel’s IA-32 processor architecture.

With HT, a microprocessor’s “core” processor can execute two (rather than one) concurrent streams (or threads) of instructions sent by the operating system. Having two streams of execution units to work on allows more work to be done by the processor during each clock cycle. To the operating system, the Hyper-Threading microprocessor appears to be two separate processors. Because most of today’s operating systems (such as Windows and Linux) are capable of dividing their work load among multiple processors (this is called symmetric multiprocessing or SMP), the operating system simply acts as though the Hyper-Threading processor is a pool of two processors.



Click to learn more...
Please Visit our Sponsor (Ads open in separate window)

Previous Story Top of Page Next Story

Seprater
Contributions
Privacy Policy
© DAWN Group of Newspapers, 2005