Mathematical software

Posted under Uncategorized od admin on środa 2 lipiec 2008 at 4:42 po południu

Mathematical software is software used to krój, analyze, or calculate numeric, symbolic, or geometric data.

Contents

Computer algebra systems

Main article: List of computer algebra systems

Many mathematical suites are computer algebra systems that use symbolic mathematics. They are designed to solve classical algebra equations and problems in human readable notation.

Statistics

Main article: List of statistical packages

Many tools are available for statistical analysis of data.

Geometry

Main article: List of interactive geometry software

CGAL, the computational geometry algorithms library, contains a large collection of geometric algorithms implemented in C++, using the generic programming paradigm. It puts the emphasis on robustness and efficiency. CGAL is available under Open Source licenses (LGPL and QPL depending on which parts), as well as a commercial license.

Numerical analysis

Main article: List of numerical analysis software

The Netlib repository contains various collections of software routines for numerical problems, mostly in Fortran and C. Commercial products implementing many different numerical algorithms include the IMSL and NAG libraries; a free alternative is the GNU Scientific Library. A different approach is taken by the Numerical Recipes library, where emphasis is placed on clear understanding of algorithms.

Many computer algebra systems (listed above) can also be used for numerical computations.

Programming libraries

Low-level libraries intended for use within other programming languages:

  • GMP, the GNU Multi-Precision Library for extremely fast arbitrary precision arithmetic.
  • Class Library for Numbers, a high-level C++ library for arbitrary precision arithmetic.

Reviews

  • Mathstore published reviews of packages by United Kingdom Higher Education Academy's Maths, Stats & OR Network.
  • CTI-Maths Older reviews.

Retrieved from "http://en.wikipedia.org/wiki/Mathematical_software"
Categories: Mathematical software

Search engine

Posted under Uncategorized od admin on środa 2 lipiec 2008 at 4:41 po południu

Search engine may refer to:

  • Search engine (computing), an information retrieval ustrój designed to help find information stored on a computer system
  • Search Engine (radiofonia show), a CBC Radiofonia show
  • Web search engine, a search engine designed to search the World Wide Web


This disambiguation page lists articles associated with the same title. If an internal hiperłącze led you here, you may wish to change the odnośnik to point directly to the intended article.

Retrieved from "http://en.wikipedia.org/wiki/Search_engine"
Categories: Disambiguation

Game engine

Posted under Uncategorized od admin on środa 2 lipiec 2008 at 4:40 po południu

A game engine is the core software component of a computer video game or other interactive application with real-time graphics. It provides the underlying technologies, simplifies development, and often enables the game to krach on multiple platforms such as game consoles and desktop operating systems such as Linux, Mac OS X, and Microsoft Windows. The core functionality typically provided by a game engine includes a rendering engine (“renderer”) for 2D or 3D graphics, a physics engine or collision detection (and collision response), sound, scripting, animation, artificial intelligence, networking, streaming, memory management, threading, and a scene graph. The process of game development is frequently economized by in large part reusing the same game engine to create different games.

Contents

Overview

Game engines provide a suite of visual development tools in addition to reusable software components. These tools are generally provided in an integrated development environment to enable simplified, rapid development of games in a data-driven manner. These games engines are sometimes called "game middleware" because, as with the business sense of the term, they provide a flexible and reusable software platform which provides all the core functionality needed, right out of the box, to develop a game application while reducing costs, complexities, and time-to-market—all critical factors in the highly competitive video game industry.

Like other middleware solutions, game engines usually provide platform abstraction, allowing the same game to be bankructwo on various platforms including game consoles and personal computers with few, if any, changes made to the game source code. Often, game middleware is designed with a component-based architecture that allows specific systems in the engine to be replaced or extended with more specialized (and often more expensive) middleware components such as Havok for physics or FMOD for sound. Some game engines such as RenderWare are even designed as a series of loosely connected middleware components that can be selectively combined to create a custom engine, instead of the more common approach of extending or customizing a flexible integrated solution. However extensibility is achieved, it remains a high priority in games engines due to the wide variety of uses for which they are applied. Despite the specificity of the name, game engines are often used for other kinds of interactive applications with real-time graphical requirements such as marketing demos, architectural visualizations, training simulations, and modeling environments.

Some game engines only provide real-time 3D rendering capabilities instead of the wide range of functionality required by games. These engines rely upon the game developer to implement the rest of this functionality or assemble it from other game middleware components. These types of engines are generally referred to as a "graphics engine," "rendering engine," or "3D engine" instead of the more encompassing term "game engine." However, this terminology is inconsistently used as many full-featured 3D game engines are referred to simply as "3D engines." A few examples of graphics engines are: RealmForge, OGRE, Power Render, Crystal Space, Genesis3D, Irrlicht and JMonkey Engine. Modern game or graphics engines generally provide a scene graph, which is an object-oriented representation of the 3D game world which often simplifies game stylistyka and can be used for more efficient rendering of vast virtual worlds.

Sprzęt abstraction

Most often, 3D engines or the rendering systems in game engines are built upon a graphics API such as Direct3D or OpenGL which provides a software abstraction of the GPU or video card. Low-level libraries such as DirectX, SDL, and OpenAL are also commonly used in games as they provide hardware-independent access to other computer sprzęt such as input devices (mouse, keyboard, and joystick), network cards, and sound cards. Before hardware-accelerated 3D graphics, software renderers had been used. Software rendering is still used in some modeling tools or for still-rendered images when visual accuracy is valued over real-time performance (frames-per-second) or when the computer sprzęt does not meet requirements such as shader support or, in the case of Windows Vista, support for Direct3D 10.

With the advent of sprzęt accelerated physics processing various physics API such as COLLADA and PAL became available to provide a software abstraction of the Physics processing unit of different middleware providers and console platforms.

History

Prior to game engines, games were typically written as singular entities: a game for the Atari 2600, for example, had to be designed from the ground up to make the most optimal use of the display hardware—this core display routine is today called the kernal by retro developers. Other platforms had more leeway, obuwie even when the display was not a concern, memory constraints usually sabotaged attempts to create the data-heavy wzornictwo that an engine requires. Even on more accommodating platforms, very little could be reused between games. The rapid advance of arcade hardware—the bleeding edge of the market—meant that most of the code would have to be thrown out afterwards anyway, as later generations of games would use completely different game designs that took advantage of extra resources. Thus most game designs through the 1980s were architected through a hard-coded ruleset with a small amount of level and graphics data.

The term "game engine" arose in the mid-1990s, especially in connection with 3D games such as first-person shooters (FPS). (See also: first-person shooter engine). Such was the popularity of id Software's Doom and Quake games that, rather than work from scratch, other developers licensed the core portions of the software and designed their own graphics, characters, weapons and levels—the "game content" or "game assets." Separation of game-specific rules and termin from basic concepts like collision detection and game entity meant that teams could grow and specialize,

Later games, such as Quake III Arena and Epic Games's 1998 Unreal were designed with this approach in mind, with the engine and content developed separately. The practice of licensing such technology has proved to be a useful auxiliary revenue stream for some game developers, as a single license for a high-end commercial game engine can range from US$10,000 to $3,750,000 (in the case of Warcraft III), and the number of licensees can reach several dozen companies (as for the Unreal Engine). At the very least, reusable engines make developing game sequels faster and easier, which is a valuable advantage in the competitive computer game industry.

Modern game engines are some of the most complex applications written, frequently featuring dozens of finely tuned systems interacting to ensure a finely controlled user experience. The continued refinement of game engines has created a strong separation between rendering, scripting, artwork, and level wzornictwo. It is now common (as of 2003), for example, for a typical game development ekipa to have several times as many artists as actual programmers.

First-person shooter games remain the predominant users of third-party game engines, obuwie they are now also being used in other genres. For example, the RPG Morrowind and the MMORPG Dark Age of Camelot are based on the NetImmerse engine, and the MMORPG Lineage II is based on the Unreal Engine. Game engines are used for games originally developed for home consoles as well; for example, the RenderWare engine is used in the Grand Theft Auto and Burnout franchises.

Threading is taking on more importance due to modern multi-core systems (i.e. Sony's PPE) and increased demands in realism. Typical threads involve rendering, streaming, dźwiękowy, and physics. Racing games have typically been at the forefront of threading with the physics engine running in a separate thread long before other core sub-systems were moved, partly because rendering and related tasks only require updating at 30-60 Hz. For example, Need For Speed on the Playstation ran its physics at 100 Hz as compared to Forza Motorsport 2 running its physics at 360 Hz.

Although the term was first used in the 1990s, there are a few earlier systems in the 1980s that are also considered to be game engines, such as Sierra's AGI and SCI systems, LucasArts' SCUMM ustrój and Incentive Software's Freescape engine. However, unlike most modern game engines, these game engines were never used in any third-party products (except for the SCUMM organizm which was licensed to and used by Humongous Entertainment).

Middleware


SpeedTree forest-rendering middleware

Some companies now specialize in developing software suites known as "middleware." Middleware developers attempt to "pre-invent the wheel" by developing robust software suites which include many elements a game developer may need to build a game. Most middleware programs provide facilities that ease development, such as graphics, sound, physics and AI functions. Gamebryo and RenderWare are such widely used middleware programs.

Some middleware only do one thing, obuwie do it more convincingly than general purpose engines. For example, SpeedTree was used to render the realistic trees and vegetation in the role-playing game The Elder Scrolls IV: Oblivion.

Two widely-used packages that provide subsystems of functionality include Havok and several of RAD Game Tools' systems. Havok provides a robust physics simulation układ and RAD Game Tools develops systems for video rendering, dźwiękowy playback, and 3D rendering.

Some middleware contains full source code, others just provide an API reference for a compiled binary library. Some middleware programs can be licensed either way, usually for a higher fee for full source code.

MMOG Middleware

Middleware for massively-multiplayer online games is far more complex than for single-player video games. However, the increasing popularity of MMOGs is spurring development of such middleware packages. Some dostojnik solutions, based upon sales, include:

  • RealmCrafter
  • Multiverse Network
  • Gamebryo
  • Bigworld Technology
  • HeroEngine
  • Monumental Games

Hobbyists

Game engine development is a popular project amongst computer science students, hobbyists, and game developers alike. It can require strong interdisciplinary understanding of geometry, color theory, and computing. Being largely visual, however, these developers consider it fun and rewarding. Crystal Space, for example, is a popular free and open source multiplatform game engine.

Notable engines

The ów most reviewed commercial engines (most of which are low cost and used by hobbyists and republika indii developers), on DevMaster.net, are:

  • Torque Game Engine
  • TV3D SDK 6.5
  • Gamestudio (A7 Engine)
  • C4 Engine
  • Unity
  • NeoAxis Engine
  • DX Studio

Notable open source engines:

  • Crystal Space - A free portal horyzontalny based engine
  • Delta3D - An open source engine specifically created by the Navy, especially for training applications
  • Game Blender - A sub-application of Blender
  • Irrlicht - A simple free open source 3d engine
  • The Nebula Device - A powerful engine used in many commercial games
  • Ogre3D - A well known LGPL graphics engine
  • Open Dynamics Engine - A cross platform physics engine used in many commercial games
  • Panda3D - Full featured Python/C++ 3D engine
  • Wolfenstein 3D engine till id Tech 3 - Those engines have all been released as open source

FPS game engines

Main article: First person shooter engine

A well-known subset of game engines are 3D first-person shooter (FPS) game engines. Groundbreaking development in terms of visual quality is done in FPS games on the human scale. While flight and driving simulators and real-time strategy (RTS) games increasingly provide realism on a large scale, first-person shooters are at the forefront of computer graphics at smaller, more human scales.

The development of the FPS graphic engines that appear in games can be characterized by a steady increase in technologies, with some breakthroughs. Attempts at defining distinct generations lead to arbitrary choices of what constitutes a highly modified version of an 'old engine' and what is a brand new engine.

The classification is complicated as game engines blend old and new technologies. Features considered advanced in a new game one year, become the expected kanon the next year. Games with a mix of older generation and newer feature are the norm. For example Jurassic Ogród: Trespasser (1998) introduced physics to the FPS games, obuwie it didn't become common until around 2002. Red Faction (2001) featured destructible walls and ground, something still not common in engines years later (for example in Unreal Tournament 2004 there are still no destructible objects). Battlezone (1998) and Battlezone II: Combat Commander (1999) added vehicle based combat to the usual FPS mix, which did not przebój the mainstream until later. Tribes 2, Battlefield 1942, Halo: Combat Evolved and Unreal Tournament 2004 fully realized the potential for vehicular-combat and first person shooter integration.

References

  1. ^ The Top 10 commercial engines from DevMaster.net

See also

  • List of game engines
  • Game programmer
  • Level designer
  • Video game developer
  • Video game publisher
  • First person shooter engine

External links

  • GameMiddleware.org, a reference website concerning game middleware and game engines available for commercial use
  • 3D Game and Graphics Engines Database, a comprehensive database of today's graphics and game engines
  • Terrain in Games, an extensive overview of terrain rendering in 1997-2000 game engines
  • , Engine001- a free game engine

Retrieved from "http://en.wikipedia.org/wiki/Game_engine"
Categories: Video game development | Game enginesHidden categories: All articles with unsourced statements | Articles with unsourced statements since October 2007

Password cracking

Posted under Uncategorized od admin on środa 2 lipiec 2008 at 4:40 po południu

The neutrality of this article is disputed.
Please see the discussion on the talk page.(January 2008)
Please do not remove this message until the dispute is resolved.

Password cracking is the process of recovering passwords from termin that has been stored in or transmitted by a computer ustrój. A common approach is to repeatedly try guesses for the password. The purpose of password cracking might be to help a user recover a forgotten password (though installing an entirely new password is less of a security risk, obuwie involves organizm administration privileges), to gain unauthorized access to a układ, or as a preventive measure by organizm administrators to check for easily crackable passwords.

Contents

Background

Passwords to access computer systems are usually stored, typically not in cleartext form, in a database so the organizm can perform password verification when users attempt to login. To preserve confidentiality of organizm passwords, the password verification termin is typically generated by applying a one-way function to the password, possibly in combination with other prekluzja. For simplicity in this discussion, when the one-way function (which may be either an encryption function or cryptographic hash) does not incorporate a secret key, other than the password, we will refer to the one way function employed as a hash and its output as a hashed password.

Even though functions that create hashed passwords may be cryptographically secure, possession of a hashed password provides a quick way to ankieta guesses for the password by applying the function to each guess, and comparing the result to the verification prekluzja. The most commonly used hash functions can be computed rapidly and the attacker can ankieta guesses repeatedly with different guesses until one succeeds,meaning the plaintext password has been recovered.

The term password cracking is typically limited to recovery of one or more plaintext passwords from hashed passwords, obuwie there are also many other ways of obtaining passwords illicitly; without the hashed version of a password, the attacker can still attempt access to the computer ustrój in question with guessed passwords. However well designed systems zakres the number of failed access attempts and can pogotowie administrators to trace the source of the attack if that quota is exceeded. With the hashed password, the attacker can work undetected, and if the attacker has obtained several hashed passwords, the chances for cracking at least one is quite high.

Otherwise it is possible to try to obtain the passwords through other different methods, such as social engineering, wiretapping, keystroke logging, login spoofing, dumpster diving, phishing, shoulder surfing, timing attack, acoustic cryptanalysis, using a Trojan Horse or virus, identity management układ attacks (such as abuse of Self-service password reset) and compromising host security (see password for details). However, cracking usually designates a guessing attack.

Cracking may be combined with other techniques. For example, use of a hash-based challenge-response authentication method for password verification may provide a hashed password to an eavesdropper, who can then crack the password. A number of stronger cryptographic protocols exist that do not expose hashed-passwords during verification over a network, either by protecting them in transmission using a high-grade key, or by using a zero-knowledge password proof.

Principal attack methods

Weak encryption

If a organizm uses a reversible function to obscure stored passwords, exploiting that weakness can recover even 'well-chosen' passwords. One example is the LM hash that Microsoft Windows uses by default to store user passwords that are less than 15 characters in length. LM hash converts the password into all uppercase letters then breaks the password into two 7-character fields which are then hashed separately, allowing each half to be attacked separately. Hash functions like SHA-512, SHA-1, and MD5 are considered impossible to invert when used correctly.

Guessing

See also: Password strength and Password policy

Many passwords can be guessed either by humans or by sophisticated cracking programs armed with dictionaries and the user's personal information.

Not surprisingly, many users choose weak passwords, usually one related to themselves in some way. Repeated research over some 40 years has demonstrated that around 40% of user-chosen passwords are readily guessable by programs. Examples of insecure choices include:

  • blank (none)
  • the words "password", "passcode", "admin" and their derivatives
  • the user's name or login name
  • the name of their significant other or another person
  • their birthplace or date of birth or a friend's, or a relative's
  • a pet's name
  • a dictionary word in any language
  • a name of a celebrity they like
  • automobile licence plate number
  • a row of letters from a kanon keyboard layout (eg, the qwerty keyboard -- qwerty itself, asdf, or qwertyuiop)
  • a simple modification of one of the preceding, such as suffixing a digit or reversing the medal of the letters.

and so on.

In one survey of MySpace passwords which had been phished, 3.8 percent of passwords were a single word found in a dictionary, and another 12 percent were a word dodać a final digit; two-thirds of the time that digit was 1.

Some users neglect to change the default password that came with their account on the computer organizm. And some administrators neglect to change default account passwords provided by the operating ustrój vendor or sprzęt supplier. A famous example is the use of FieldService as a user name with Guest as the password. If not changed at ustrój configuration time, anyone familiar with such systems will have 'cracked' an important password; such service accounts often have higher access privileges than a normal user account. Lists of default passwords are available on the Internet.

Personal termin about individuals are now available from various sources, many on-line, and can often be obtained by someone using social engineering techniques, such as posing as an opinion surveyor or a security control checker. Attackers who know the user may have information as well. For example, if a user chooses the password "19YaleLaw78" because he graduated from Yale Law School in 1978, a disgruntled business kolega might be able to guess the password.

Cracking programs exist which accept personal information about the user being attacked and generate common variations for passwords suggested by that information.

Brute force attack

A last ministerium is to try every possible password, known as a brute force attack. In theory, a brute force attack will always be successful since the rules for acceptable passwords must be publicly known, obuwie as the length of the password increases, so does the number of possible passwords. This method is unlikely to be practical unless the password is relatively small. Obuwie, how small is too small? This depends heavily on whether the prospective attacker has access to the hash of the password, in which case the attack is called an offline attack (it can be done without connection to the protected resource), or not, in which case it is called an online attack. Offline attack is generally a przelot easier, because testing a password is reduced to a quickly calculated mathematical computation; i.e., calculating the hash of the password to be tried and comparing it to the hash of the real password. In an online attack the attacker has to actually try to authenticate himself with all the possible passwords, where arbitrary rules and delays can be imposed by the układ and the attempts can be logged. A common current length recommendation for cases where the attacker will not have access to the hash is 8 or more randomly chosen characters combining letters, numbers, and special (punctuation, etc) characters. Systems which zakres passwords to numeric characters only, or upper case only, or, generally, which exclude possible password character choices make such attacks easier. Using longer passwords in such cases (if possible on a particular organizm) can compensate for a limited allowable character set. And, of course, even with an adequate range of character choice, users who ignore that range (using only upper case alphabetic characters, or digits alone, for instance) make brute force attacks much easier against those password choices.

Generic brute-force search techniques can be used to speed up the computation. Obuwie the real threat may be likely to be from smart brute-force techniques that exploit knowledge about how people tend to choose passwords. NIST SP 800-63 (2) provides further discussion of password quality, and suggests, for example, that an 8 character user-chosen password may provide somewhere between 18 and 30 bits of entropy, depending on how it is chosen. This amount of entropy is far less than what is generally considered safe for an encryption key.

How small is too small for offline attacks thus depends partly on an attacker's ingenuity and resources (e.g., available time, computing power, etc.), the latter of which will increase as computers get faster. Most commonly used hashes can be implemented using specialized sprzęt, allowing faster attacks. Large numbers of computers can be harnessed in parallel, each trying a separate portion of the search space. Unused overnight and koniec tygodnia time on office computers can also be used for this purpose.

The distinction between guessing, dictionary and brute force attacks is not strict. They are similar in that an attacker goes through a list of candidate passwords one by one; the list may be explicitly enumerated or implicitly defined, may or may not incorporate knowledge about the victim, and may or may not be linguistically derived. Each of the three approaches, particularly 'dictionary attack', is frequently used as an umbrella term to denote all the three attacks and the spectrum of attacks encompassed by them.

Precomputation

Further information: Rainbow table

In its most basic form, precomputation involves hashing each word in the dictionary (or any search space of candidate passwords) and storing the <plaintext, ciphertext> pairs in a way that enables lookup on the ciphertext field. This way, when a new encrypted password is obtained, password recovery is instantaneous. Precomputation can be very useful for a dictionary attack if salt is not used properly (see below), and the dramatic decrease in the cost of mass storage has made it practical for fairly large dictionaries.

Advanced precomputation methods exist that are even more effective. By applying a time-memory tradeoff, a middle ground can be reached - a search space of size N can be turned into an encrypted database of size O(N2/3) in which searching for an encrypted password takes time O(N2/3). The theory has recently been refined into a practical technique. Another example )

A technique similar to precomputation, known generically as memoization, can be used to crack multiple passwords at the cost of cracking just one. Since encrypting a word takes much longer than comparing it with a stored word, a przelot of effort is saved by encrypting each word only once and comparing it with each of the encrypted passwords using an efficient list search algorithm. The two approaches may of course be combined: the time-space tradeoff attack can be modified to crack multiple passwords simultaneously in a shorter time than cracking them one after the other.

Salting

Further information: Salt (cryptography)

The benefits of precomputation and memoization can be nullified by randomizing the hashing process. This is known as salting. When the user sets a password, a short, random string called the salt is suffixed to the password before encrypting it; the salt is stored along with the encrypted password so that it can be used during verification. Since the salt is usually different for each user, the attacker can no longer construct tables with a single encrypted version of each candidate password. Early Unix systems used a 12-bit salt. Attackers could still build tables with common passwords encrypted with all 4096 possible 12-bit salts. However, if the salt is long enough (e.g. 32 bits), there are too many possibilities and the attacker must repeat the encryption of every guess for each user.

Early Unix password vulnerability

Early Unix implementations used a 12-bit salt, which allowed for 4096 possibilities, and limited passwords to 8 characters. While 12 bits was good enough for most purposes in the 1970s (although some expressed doubts even then), by 2005 disk storage had become cheap enough that an attacker can precompute encryptions of millions of common passwords, including all 4096 possible salt variations for each password, and store the precomputed values on a single portable hard drive. An attacker with a larger budget can build a disk farm with all 6 character passwords and the most common 7 and 8 character passwords stored in encrypted form, for all 4096 possible salts. And when several thousand passwords are being cracked at once, memoization still offers some benefit. Since there is little downside to using a longer (say 32-, 64- or 128-bit) salt, and they render any precomputation or memoization hopeless, modern implementations choose to do so.

Prevention

Main article: Shadow password

The best method of preventing password cracking is to ensure that attackers cannot get access even to the encrypted password. For example, on the Unix operating ustrój, encrypted passwords were originally stored in a publicly accessible file /etc/passwd. On modern Unix (and similar) systems, on the other hand, they are stored in the file /etc/shadow, which is accessible only to programs running with enhanced privileges (ie, 'ustrój' privileges). This makes it harder for a malicious user to obtain the encrypted passwords in the first instance. Unfortunately, many common network protocols transmit the hashed passwords to allow remote authentication.

References

  1. ^ ZDNet Report: Sieć users picking safer passwords
  2. ^ Default Password List Pnenoelit.de Retrieved on 2007-05-07
  3. ^ John the Ripper project, John the Ripper cracking modes
  4. ^ Bruce Schneier, Choosing Secure Passwords
  1. Philippe Oechslin: Making a Faster Cryptanalytic Time-Memory Trade-Off. CRYPTO 2003: pp617–630
  2. NIST Special Publication 800-63: Electronic Authentication Guideline

See also

  • Cryptographic key length
  • Password-authenticated key agreement

External links

  • Password Cracking with Rainbowcrack and Rainbow Tables

v • d • e
Password Cracking Software

Ophcrack | Crack | Cain | John the Ripper | L0phtCrack | RainbowCrack | SAMInside

Retrieved from "http://en.wikipedia.org/wiki/Password_cracking"
Categories: All NPOV disputes | Cryptographic attacks | Security exploits | Organizm administrationHidden category: NPOV disputes from January 2008

Layout engine

Posted under Uncategorized od admin on środa 2 lipiec 2008 at 4:40 po południu

HTML

  • Character encodings
  • Dynamic HTML
  • Font family
  • HTML editor
  • HTML element
  • HTML scripting
  • Layout engine
  • Quirks mode
  • Style sheets
  • Unicode and HTML
  • W3C
  • Web colors
  • XHTML
  • Comparison of
    • web browsers
    • layout engines for
      • HTML
      • HTML 5
      • Non-standard HTML
      • XHTML

This box: view • talk • edit

A layout engine, or rendering engine, is software that takes web content (such as HTML, XML, wzornictwo files, etc.) and formatting information (such as CSS, XSL, etc.) and displays the formatted content on the screen. It "paints" on the content area of a window, which is displayed on a monitor or a printer. A layout engine is typically used for web browsers, poczta elektroniczna clients, or other applications that require the displaying (and editing) of web contents.

The term "layout engine" only reached popular usage when these became easily separable from the browser. For example, Gecko, the Mozilla project's open-source layout engine, is used by a variety of products derived from the Mozilla code base, including the Firefox web browser, the Thunderbird Poczta elektroniczna client, and Seamonkey application suite. Trident, the layout engine from Sieć Explorer, is used by many applications on the Microsoft Windows platform to render HTML, as in Outlook Express, some versions of Microsoft Outlook, and the mini-browsers in Winamp and RealPlayer.

Similarly, Opera Software's proprietary Presto engine is licensed to a number of other software vendors, as well as being used in Opera's own Opera web browser, and KDE's open-source KHTML engine is used both in KDE's own Konqueror web browser as well as being used, in an adapted form, as the basis for the rendering engine in Apple's Safari web browser.

The term rendering engine can also refer to text rendering engines like Pango or Uniscribe which make multilingual texts present in proper shape, taking into account bidirectional text, combinations of "basic characters" with accents, and other intricacies of multilingual text.

See also

  • List of layout engines
  • Layout manager
  • Comparison of layout engines
    • HTML
    • XML
    • XHTML
    • Graphics
    • CSS
    • DOM
    • HTML5
    • ECMAScript
    • SVG
  • Game engine
  • Rendering (computer graphics)
  • Rasterisation
  • Raster stylistyka processor
  • Page description language

v • d • e

Layout engines

List of layout engines

Amaya · Boxely · Gecko · GtkHTML · Gzilla · iCab · KHTML · Mariner · NetSurf · Robin · Tasman · Tkhtml · Trident · Presto · Prince · WebKit

Comparison of layout engines

HTML · XML · XHTML · Graphics · CSS · DOM · HTML 5 · ECMAScript · SVG · Deprecated and proprietary Tags and Atrributes

Retrieved from "http://en.wikipedia.org/wiki/Layout_engine"
Categories: Layout engines

« Poprzednia strona
 Page 42 of 42  « First  ... « 38  39  40  41  42 
buy viagra in toronto