Radeon 9000 series

The R300 GPU, introduced in August 2002 and developed by ATI Technologies, is its third generation of GPU used in "Radeon" graphics cards. This GPU features 3D acceleration based upon Direct3D 9.0 and OpenGL 2.0, a major improvement in features and performance compared to the preceding R200 design. R300 was the first fully Direct3D 9-capable consumer graphics chip. The processors also include 2D GUI acceleration, video acceleration, and multiple display outputs.
The first graphics cards using the R300 to be released were the Radeon 9700. It was the first time that ATI marketed its GPU as a Visual Processing Unit (VPU). R300 and its derivatives would form the basis for ATI's consumer and professional product lines for over 3 years.
Development.
ATI had held the lead for a while with the Radeon 8500 but NVIDIA retook the performance crown with the launch of the GeForce 4 Ti line. A new high-end refresh part, the 8500XT (R250) was supposedly in the works, ready to compete against NVIDIA's high-end offerings, particularly the top line Ti 4600. Pre-release information listed a 300 MHz core and RAM clock speed for the "R250" chip. ATI, perhaps mindful of what had happened to 3dfx when they took focus off their "Rampage" processor, abandoned it in favor of finishing off their next-generation R300 card. This proved to be a wise move, as it enabled ATI to take the lead in development for the first time instead of trailing NVIDIA. The R300, with its next-generation architecture giving it unprecedented features and performance, would have been superior to any R250 refresh.
The R3xx chip was designed by ATI's west coast team (formerly ArtX Inc.), and the first product to use it was the Radeon 9700 PRO (internal ATI code name: R300; internal ArtX codename: Khan), launched in August 2002. The architecture of R300 was quite different from its predecessor, Radeon 8500 ("R200"), in nearly every way. The core of 9700 PRO was manufactured on a 150 nm chip fabrication process, similar to the Radeon 8500. However, refined design and manufacturing techniques enabled a doubling of transistor count "and" a significant clock speed gain.
One major change with the manufacturing of the core was the use of the flip-chip packaging, a technology not used previously on video cards. Flip chip packaging allows far better cooling of the die by flipping it and exposing it directly to the cooling solution. ATI thus could achieve higher clock speeds. Radeon 9700 PRO was launched clocked at 325 MHz, ahead of the originally projected 300 MHz. With a transistor count of 110 million, it was the largest and most complex GPU of the time. A slower chip, the 9700, was launched a few months later, differing only by lower core and memory speeds. Despite that, the Radeon 9700 PRO was clocked significantly higher than the Matrox Parhelia 512, a card released but months before R300 and considered to be the pinnacle of graphics chip manufacturing (with 80 million transistors at 220 MHz), up until R300's arrival.
Architecture.
The chip adopted an architecture consisting of 8 pixel pipelines, each with 1 texture mapping unit (an 8x1 design). While this differed from the older chips using 2 (or 3 for the original Radeon) texture units per pipeline, this did not mean "R300" could not perform multi-texturing as efficiently as older chips. Its texture units could perform a new "loopback" operation which allowed them to sample up to 16 textures per geometry pass. The textures can be any combination of one, two, or three dimensions with bilinear, trilinear, or anisotropic filtering. This was part of the new DirectX 9 specification, along with more flexible floating-point-based Shader Model 2.0+ pixel shaders and vertex shaders. Equipped with 4 vertex shader units, "R300" possessed over twice the geometry processing capability of the preceding Radeon 8500 and the GeForce4 Ti 4600, in addition to the greater feature-set offered compared to DirectX 8 shaders.
ATI demonstrated part of what was capable with pixel shader PS2.0 with their "Rendering with Natural Light" demo. The demo was a real-time implementation of noted 3D graphics researcher Paul Debevec's paper on the topic of high dynamic range rendering. A noteworthy limitation is that all R300-generation chips were designed for a maximum floating point precision of 96-bit, or FP24, instead of DirectX 9's maximum of 128-bit FP32. DirectX 9.0 specified FP24 as a minimum level for conforming to the specification for full precision. This trade-off in precision offered the best combination of transistor usage and image quality for the manufacturing process at the time. It did cause a usually visibly imperceptible loss of quality when doing heavy blending. ATI's Radeon chips did not go above FP24 until R520.
The R300 was the first board to truly take advantage of a 256-bit memory bus. Matrox had released their Parhelia 512 several months earlier, but this board did not show great gains with its 256-bit bus. ATI, however, had not only doubled their bus to 256-bit, but also integrated an advanced crossbar memory controller, somewhat similar to NVIDIA's memory technology. Utilizing four individual load-balanced 64-bit memory controllers, ATI's memory implementation was quite capable of achieving high bandwidth efficiency by maintaining adequate granularity of memory transactions and thus working around memory latency limitations. "R300" was also given the latest refinement of ATI's innovative HyperZ memory bandwidth and fillrate saving technology, "HyperZ III". The demands of the 8x1 architecture required more bandwidth than the 128-bit bus designs of the previous generation due to having double the texture and pixel fillrate.
Radeon 9700 introduced ATI's multi-sample gamma-corrected anti-aliasing scheme. The chip offered sparse-sampling in modes including 2×, 4×, and 6×. Multi-sampling offered vastly superior performance over the supersampling method on older Radeons, and superior image quality compared to NVIDIA's offerings at the time. Anti-aliasing was, for the first time, a fully usable option even in the newest and most demanding titles of the day. The R300 also offered advanced anisotropic filtering which incurred a much smaller performance hit than the anisotropic solution of the GeForce4 and other competitors' cards, while offering significantly improved quality over Radeon 8500's anisotropic filtering implementation which was highly angle dependent.
On March 14, 2008, AMD released the 3D Register Reference for R3xx.
Performance.
Radeon 9700's advanced architecture was very efficient and, of course, more powerful compared to its older peers of 2002. Under normal conditions it beats the GeForce4 Ti 4600, the previous top-end card, by 15–20%. However, when anti-aliasing (AA) and/or anisotropic filtering (AF) were enabled it would beat the Ti 4600 by anywhere from 40–100%. At the time, this was quite astonishing, and resulted in the widespread acceptance of AA and AF as critical, truly usable features.
Besides advanced architecture, reviewers also took note of ATI's change in strategy. The 9700 would be the second of ATI's chips (after the 8500) to be shipped to third-party manufacturers instead of ATI producing all of its graphics cards, though ATI would still produce cards off of its highest-end chips. This freed up engineering resources that were channeled towards driver improvements, and the 9700 performed phenomenally well at launch because of this. id Software technical director John Carmack had the Radeon 9700 run the E3 "Doom 3" demonstration.
The performance and quality increases offered by the R300 GPU is considered to be one of the greatest in the history of 3D graphics, alongside the achievements GeForce 256 and Voodoo Graphics. Furthermore, NVIDIA's response in the form of the GeForce FX 5800 was both late to market and somewhat unimpressive, especially when pixel shading was used. R300 would become one of the GPUs with the longest useful lifetime in history, allowing playable performance in new games at least 3 years after its launch.
Further releases.
A few months later, the 9500 and 9500 PRO were launched. The 9500 PRO had half the memory bus width of the 9700 PRO, and the 9500 was also missing (disabled) half the pixel processing units and the hierarchical Z-buffer optimization unit (part of "HyperZ III"). With its full 8 pipelines and efficient architecture, the 9500 PRO outperformed all of NVIDIA's products (save the Ti 4600). Meanwhile, the 9500 also became popular because it could in some cases be modified into the much more powerful 9700. ATI only intended for the 9500 series to be a temporary solution to fill the gap for the 2002 Christmas season, prior to the release of the 9600. Since all of the R300 chips were based on the same physical die, ATI's margins on 9500 products were low. Radeon 9500 was one of the shortest-lived product of ATI, later replaced by the Radeon 9600 series. The logo and box package of the 9500 was resurrected in 2004 to market the unrelated and slower Radeon 9550 (which is a derivative of the 9600).
Refreshed.
In early 2003, the 9700 cards were replaced by the 9800 (or, R350). These were R300s with higher clock speeds, and improvements to the shader units and memory controller which enhanced anti-aliasing performance. They were designed to maintain a performance lead over the recently launched GeForce FX 5800 Ultra, which it managed to do without difficulty. The 9800 still held its own against the revised FX 5900, primarily (and significantly) in tasks involving heavy SM2.0 pixel shading. Another selling point for the 9800 was that it was still a single-slot card, compared to the dual-slot requirements of the FX 5800 and FX 5900. A later version of the 9800 Pro with 256 MiB of memory used GDDR2. The other two variants were the 9800, which was simply a lower-clocked 9800 Pro, and the 9800 SE, which had half the pixel processing units disabled (could sometimes be enabled again). Official ATI specifications dictate a 256-bit memory bus for the 9800 SE, but most of the manufacturers used a 128-bit bus. Usually, the 9800 SE with 256-bit memory bus was called "9800 SE Ultra" or "9800 SE Golden Version".
Alongside the 9800, the 9600 (a.k.a. RV350) series was rolled out in early 2003, and while the 9600 PRO didn't outperform the 9500 PRO that it was supposed to replace, it was much more economical for ATI to produce by way of a 130 nm process (all ATI's cards since the 7500/8500 had been 150 nm) and a simplified design. Radeon 9600's "RV350" core was basically a 9800 Pro cut in half, with exactly half of the same functional units, making it a 4×1 architecture with 2 vertex shaders. It also lost part of HyperZ III with the removal of the hierarchical z-buffer optimization unit, the same as Radeon 9500. Using a 130 nm process was also good for pushing up the core clock speed. The 9600 series, all with high default clocking, was shown to have quite a bit of headroom by overclockers (achieving over 500 MHz, from 400 MHz on the Pro model). While the 9600 series was less powerful than the 9500 and 9500 Pro it replaced, it did largely manage to maintain the 9500's lead over NVIDIA's GeForce FX 5600 Ultra, and it was ATI's cost-effective answer to the long-time mainstream performance board, GeForce4 Ti 4200.
During the summer of 2003, the Mobility Radeon 9600 was launched, based upon the RV350 core. Being the first laptop chip to offer DirectX 9.0 shaders, it enjoyed the same success of the previous Mobility Radeons. The Mobility Radeon 9600 was originally planned to use a RAM technology called GDDR2-M. The company developing that memory went bankrupt and the RAM never arrived, so ATI was forced to use regular DDR SDRAM. Undoubtedly there would have been power usage savings, and perhaps performance gains with GDDR2-M. In fall 2004, a slightly faster variant, the Mobility Radeon 9700 was launched (which was still based upon the RV350, and not the older R300 of the desktop Radeon 9700 despite the naming similarity).
Later in 2003, three new cards were launched: the 9800 XT (R360), the 9600 XT (RV360), and the 9600 SE (RV350). The 9800 XT was slightly faster than the 9800 PRO had been, while the 9600 XT competed well with the newly launched GeForce FX 5700 Ultra. The "RV360" chip on 9600 XT was the first graphics chip by ATI that utilized Low-K chip fabrication and allowed even higher clocking of the 9600 core (500 MHz default). The 9600 SE was ATI's answer to NVIDIA's GeForce FX 5200 Ultra, managing to outperform the 5200 while also being cheaper. Another "RV350" board followed in early 2004, on the Radeon 9550, which was a Radeon 9600 with a lower core clock (though an identical memory clock and bus width).
Worthy of note regarding the R300-based generation is that the entire lineup utilized single-slot cooling solutions. It was not until the R420 generation's Radeon X850 XT Platinum Edition, in December 2004, that ATI would adopt an official dual-slot cooling design.


Green Hills Software

Green Hills Software is a privately owned company that builds operating systems and programming tools for embedded systems. The firm was founded in 1982 by Dan O'Dowd and Carl Rosenberg. Its world headquarters are in Santa Barbara, California.
History.
Green Hills Software and Wind River Systems enacted a 99-year contract as cooperative peers in the embedded software engineering market throughout the 1990s, with their relationship ending in a series of lawsuits throughout the early 2000s. This resulted in their opposite parting of ways, whereupon Wind River devoted itself to publicly embrace Linux and open-source software but Green Hills initiated a public relations campaign decrying its use in issues of national security.
In 2008, the Green Hills real-time operating system (RTOS) named Integrity-178 was the first system to be certified by the National Information Assurance Partnership (NIAP), composed of National Security Agency (NSA) and National Institute of Standards and Technology (NIST), to Evaluation Assurance Level (EAL) 6+.
By November 2008, it was announced that a commercialized version of Integrity 178-B will be available to be sold to the private sector by Integrity Global Security, a subsidiary of Green Hills Software.
On March 27, 2012, a contract was announced between Green Hills Software and Nintendo. This designates MULTI as the official integrated development environment and toolchain for Nintendo and its licensed developers to program the Wii U video game console.
On February 25, 2014, it was announced that the operating system Integrity had been chosen by Urban Aeronautics for their AirMule flying car unmanned aerial vehicle (UAV), since renamed the Tactical Robotics Cormorant.
Selected products.
Real-time operating systems.
Integrity is a POSIX real-time operating system (RTOS). An Integrity variant, named Integrity-178B, was certified to Common Criteria Evaluation Assurance Level (EAL) 6+, High Robustness in November 2008.
Micro Velosity (stylized as "µ-velOSity") is a real-time microkernel for resource-constrained devices.
Compilers.
Green Hills produces compilers for the programming languages C, C++, Fortran, and Ada. They are cross-platform, for 32- and 64-bit microprocessors, including ARM, Blackfin, ColdFire, MIPS, PowerPC, SuperH, StarCore, x86, V850, and XScale.
Integrated development environments.
MULTI is an integrated development environment (IDE) for the programming languages C, C++, Embedded C++ (EC++), and Ada, aimed at embedded engineers.
TimeMachine is a set of tools for optimizing and debugging C and C++ software. TimeMachine (introduced 2003) supports reverse debugging, a feature that later also became available in the free GNU Debugger (GDB) 7.0 (2009).


Microkernel

In computer science, a microkernel (often abbreviated as μ-kernel) is the near-minimum amount of software that can provide the mechanisms needed to implement an operating system (OS). These mechanisms include low-level address space management, thread management, and inter-process communication (IPC).
If the hardware provides multiple rings or CPU modes, the microkernel may be the only software executing at the most privileged level, which is generally referred to as supervisor or kernel mode. Traditional operating system functions, such as device drivers, protocol stacks and file systems, are typically removed from the microkernel itself and are instead run in user space.
In terms of the source code size, microkernels are often smaller than monolithic kernels. The MINIX 3 microkernel, for example, has only approximately 12,000 lines of code.
History.
Microkernels trace their roots back to Danish computer pioneer Per Brinch Hansen and his tenure in Danish computer company Regnecentralen where he led software development efforts for the RC 4000 computer. In 1967, Regnecentralen was installing a RC 4000 prototype in a Polish fertilizer plant in Puławy. The computer used a small real-time operating system tailored for the needs of the plant. Brinch Hansen and his team became concerned with the lack of generality and reusability of the RC 4000 system. They feared that each installation would require a different operating system so they started to investigate novel and more general ways of creating software for the RC 4000.
In 1969, their effort resulted in the completion of the RC 4000 Multiprogramming System. Its nucleus provided inter-process communication based on message-passing for up to 23 unprivileged processes, out of which 8 at a time were protected from one another. It further implemented scheduling of time slices of programs executed in parallel, initiation and control of program execution at the request of other running programs, and initiation of data transfers to or from peripherals. Besides these elementary mechanisms, it had no built-in strategy for program execution and resource allocation. This strategy was to be implemented by a hierarchy of running programs in which parent processes had complete control over child processes and acted as their operating systems.
Following Brinch Hansen's work, microkernels have been developed since the 1970s. The term microkernel itself first appeared no later than 1981. Microkernels were meant as a response to changes in the computer world, and to several challenges adapting existing "mono-kernels" to these new systems. New device drivers, protocol stacks, file systems and other low-level systems were being developed all the time. This code was normally located in the monolithic kernel, and thus required considerable work and careful code management to work on. Microkernels were developed with the idea that all of these services would be implemented as user-space programs, like any other, allowing them to be worked on monolithically and started and stopped like any other program. This would not only allow these services to be more easily worked on, but also separated the kernel code to allow it to be finely tuned without worrying about unintended side effects. Moreover, it would allow entirely new operating systems to be "built up" on a common core, aiding OS research.
Microkernels were a very hot topic in the 1980s when the first usable local area networks were being introduced.. The AmigaOS Exec kernel was an early example, introduced in 1986 and used in a PC with relative commercial success. The lack of memory protection, considered in other respects a flaw, allowed this kernel to have very high message-passing performance because it did not need to copy data while exchanging messages between user-space programs.
The same mechanisms that allowed the kernel to be distributed into user space also allowed the system to be distributed across network links. The first microkernels, notably Mach created by Richard Rashid, proved to have disappointing performance, but the inherent advantages appeared so great that it was a major line of research into the late 1990s. However, during this time the speed of computers grew greatly in relation to networking systems, and the disadvantages in performance came to overwhelm the advantages in development terms.
Many attempts were made to adapt the existing systems to have better performance, but the overhead was always considerable and most of these efforts required the user-space programs to be moved back into the kernel. By 2000, most large-scale Mach kernel efforts had ended, although Apple's macOS, released in 2001, still uses a hybrid kernel called XNU, which combines a heavily modified (hybrid) OSF/1's Mach kernel (OSFMK 7.3 kernel) with code from BSD UNIX, and this kernel is also used in iOS, tvOS, and watchOS. Windows NT, starting with NT 3.1 and continuing with Windows 10, uses a hybrid kernel design. , the Mach-based GNU Hurd is also functional and included in testing versions of Arch Linux and Debian.
Although major work on microkernels had largely ended, experimenters continued development. It has since been shown that many of the performance problems of earlier designs were not a fundamental limitation of the concept, but instead due to the designer's desire to use single-purpose systems to implement as many of these services as possible. Using a more pragmatic approach to the problem, including assembly code and relying on the processor to enforce concepts normally supported in software led to a new series of microkernels with dramatically improved performance.
Microkernels are closely related to exokernels. They also have much in common with hypervisors, but the latter make no claim to minimality and are specialized to supporting virtual machines; the L4 microkernel frequently finds use in a hypervisor capacity.
Introduction.
Early operating system kernels were rather small, partly because computer memory was limited. As the capability of computers grew, the number of devices the kernel had to control also grew. Throughout the early history of Unix, kernels were generally small, even though they contained various device drivers and file system implementations. When address spaces increased from 16 to 32 bits, kernel design was no longer constrained by the hardware architecture, and kernels began to grow larger.
The Berkeley Software Distribution (BSD) of Unix began the era of larger kernels. In addition to operating a basic system consisting of the CPU, disks and printers, BSD added a complete TCP/IP networking system and a number of "virtual" devices that allowed the existing programs to work 'invisibly' over the network. This growth continued for many years, resulting in kernels with millions of lines of source code. As a result of this growth, kernels were prone to bugs and became increasingly difficult to maintain.
The microkernel was intended to address this growth of kernels and the difficulties that resulted. In theory, the microkernel design allows for easier management of code due to its division into user space services. This also allows for increased security and stability resulting from the reduced amount of code running in kernel mode. For example, if a networking service crashed due to buffer overflow, only the networking service's memory would be corrupted, leaving the rest of the system still functional.
Inter-process communication.
Inter-process communication (IPC) is any mechanism which allows separate processes to communicate with each other, usually by sending messages. Shared memory is, strictly defined, also an inter-process communication mechanism, but the abbreviation IPC usually refers to message passing only, and it is the latter that is particularly relevant to microkernels. IPC allows the operating system to be built from a number of smaller programs called servers, which are used by other programs on the system, invoked via IPC. Most or all support for peripheral hardware is handled in this fashion, with servers for device drivers, network protocol stacks, file systems, graphics, etc.
IPC can be synchronous or asynchronous. Asynchronous IPC is analogous to network communication: the sender dispatches a message and continues executing. The receiver checks (polls) for the availability of the message, or is alerted to it via some notification mechanism. Asynchronous IPC requires that the kernel maintains buffers and queues for messages, and deals with buffer overflows; it also requires double copying of messages (sender to kernel and kernel to receiver). In synchronous IPC, the first party (sender or receiver) blocks until the other party is ready to perform the IPC. It does not require buffering or multiple copies, but the implicit rendezvous can make programming tricky. Most programmers prefer asynchronous send and synchronous receive.
First-generation microkernels typically supported synchronous as well as asynchronous IPC, and suffered from poor IPC performance. Jochen Liedtke assumed the design and implementation of the IPC mechanisms to be the underlying reason for this poor performance. In his L4 microkernel he pioneered methods that lowered IPC costs by an order of magnitude. These include an IPC system call that supports a send as well as a receive operation, making all IPC synchronous, and passing as much data as possible in registers. Furthermore, Liedtke introduced the concept of the "direct process switch", where during an IPC execution an (incomplete) context switch is performed from the sender directly to the receiver. If, as in L4, part or all of the message is passed in registers, this transfers the in-register part of the message without any copying at all. Furthermore, the overhead of invoking the scheduler is avoided; this is especially beneficial in the common case where IPC is used in an remote procedure call (RPC) type fashion by a client invoking a server. Another optimization, called "lazy scheduling", avoids traversing scheduling queues during IPC by leaving threads that block during IPC in the ready queue. Once the scheduler is invoked, it moves such threads to the appropriate waiting queue. As in many cases a thread gets unblocked before the next scheduler invocation, this approach saves significant work. Similar approaches have since been adopted by QNX and MINIX 3.
In a series of experiments, Chen and Bershad compared memory cycles per instruction (MCPI) of monolithic Ultrix with those of microkernel Mach combined with a 4.3BSD Unix server running in user space. Their results explained Mach's poorer performance by higher MCPI and demonstrated that IPC alone is not responsible for much of the system overhead, suggesting that optimizations focused exclusively on IPC will have limited impact. Liedtke later refined Chen and Bershad's results by making an observation that the bulk of the difference between Ultrix and Mach MCPI was caused by capacity cache-misses and concluding that drastically reducing the cache working set of a microkernel will solve the problem.
In a client-server system, most communication is essentially synchronous, even if using asynchronous primitives, as the typical operation is a client invoking a server and then waiting for a reply. As it also lends itself to more efficient implementation, most microkernels generally followed L4's lead and only provided a synchronous IPC primitive. Asynchronous IPC could be implemented on top by using helper threads. However, experience has shown that the utility of synchronous IPC is dubious: synchronous IPC forces a multi-threaded design onto otherwise simple systems, with the resulting synchronization complexities. Moreover, an RPC-like server invocation sequentializes client and server, which should be avoided if they are running on separate cores. Versions of L4 deployed in commercial products have therefore found it necessary to add an asynchronous notification mechanism to better support asynchronous communication. This signal-like mechanism does not carry data and therefore does not require buffering by the kernel. By having two forms of IPC, they have nonetheless violated the principle of minimality. Other versions of L4 have switched to asynchronous IPC completely.
As synchronous IPC blocks the first party until the other is ready, unrestricted use could easily lead to deadlocks. Furthermore, a client could easily mount a denial-of-service attack on a server by sending a request and never attempting to receive the reply. Therefore, synchronous IPC must provide a means to prevent indefinite blocking. Many microkernels provide timeouts on IPC calls, which limit the blocking time. In practice, choosing sensible timeout values is difficult, and systems almost inevitably use infinite timeouts for clients and zero timeouts for servers. As a consequence, the trend is towards not providing arbitrary timeouts, but only a flag which indicates that the IPC should fail immediately if the partner is not ready. This approach effectively provides a choice of the two timeout values of zero and infinity. Recent versions of L4 and MINIX have gone down this path (older versions of L4 used timeouts). QNX avoids the problem by requiring the client to specify the reply buffer as part of the message send call. When the server replies the kernel copies the data to the client's buffer, without having to wait for the client to receive the response explicitly.
Servers.
Microkernel servers are essentially daemon programs like any others, except that the kernel grants some of them privileges to interact with parts of physical memory that are otherwise off limits to most programs. This allows some servers, particularly device drivers, to interact directly with hardware.
A basic set of servers for a general-purpose microkernel includes file system servers, device driver servers, networking servers, display servers, and user interface device servers. This set of servers (drawn from QNX) provides roughly the set of services offered by a Unix monolithic kernel. The necessary servers are started at system startup and provide services, such as file, network, and device access, to ordinary application programs. With such servers running in the environment of a user application, server development is similar to ordinary application development, rather than the build-and-boot process needed for kernel development.
Additionally, many "crashes" can be corrected by simply stopping and restarting the server. However, part of the system state is lost with the failing server, hence this approach requires applications to cope with failure. A good example is a server responsible for TCP/IP connections: If this server is restarted, applications will experience a "lost" connection, a normal occurrence in a networked system. For other services, failure is less expected and may require changes to application code. For QNX, restart capability is offered as the QNX High Availability Toolkit.
Device drivers.
Device drivers frequently perform direct memory access (DMA), and therefore can write to arbitrary locations of physical memory, including various kernel data structures. Such drivers must therefore be trusted. It is a common misconception that this means that they must be part of the kernel. In fact, a driver is not inherently more or less trustworthy by being part of the kernel.
While running a device driver in user space does not necessarily reduce the damage a misbehaving driver can cause, in practice it is beneficial for system stability in the presence of buggy (rather than malicious) drivers: memory-access violations by the driver code itself (as opposed to the device) may still be caught by the memory-management hardware. Furthermore, many devices are not DMA-capable, their drivers can be made untrusted by running them in user space. Recently, an increasing number of computers feature IOMMUs, many of which can be used to restrict a device's access to physical memory. This also allows user-mode drivers to become untrusted.
User-mode drivers actually predate microkernels. The Michigan Terminal System (MTS), in 1967, supported user space drivers (including its file system support), the first operating system to be designed with that capability. Historically, drivers were less of a problem, as the number of devices was small and trusted anyway, so having them in the kernel simplified the design and avoided potential performance problems. This led to the traditional driver-in-the-kernel style of Unix, Linux, and Windows NT. With the proliferation of various kinds of peripherals, the amount of driver code escalated and in modern operating systems dominates the kernel in code size.
Essential components and minimality.
As a microkernel must allow building arbitrary operating system services on top, it must provide some core functionality. At a minimum, this includes:
This minimal design was pioneered by Brinch Hansen's Nucleus and the hypervisor of IBM's VM. It has since been formalised in Liedtke's "minimality principle":
A concept is tolerated inside the microkernel only if moving it outside the kernel, i.e., permitting competing implementations, would prevent the implementation of the system's required functionality.
Everything else can be done in a usermode program, although device drivers implemented as user programs may on some processor architectures require special privileges to access I/O hardware.
Related to the minimality principle, and equally important for microkernel design, is the separation of mechanism and policy, it is what enables the construction of arbitrary systems on top of a minimal kernel. Any policy built into the kernel cannot be overwritten at user level and therefore limits the generality of the microkernel. Policy implemented in user-level servers can be changed by replacing the servers (or letting the application choose between competing servers offering similar services).
For efficiency, most microkernels contain schedulers and manage timers, in violation of the minimality principle and the principle of policy-mechanism separation.
Start up (booting) of a microkernel-based system requires device drivers, which are not part of the kernel. Typically this means that they are packaged with the kernel in the boot image, and the kernel supports a bootstrap protocol that defines how the drivers are located and started; this is the traditional bootstrap procedure of L4 microkernels. Some microkernels simplify this by placing some key drivers inside the kernel (in violation of the minimality principle), LynxOS and the original Minix are examples. Some even include a file system in the kernel to simplify booting. A microkernel-based system may boot via multiboot compatible boot loader. Such systems usually load statically-linked servers to make an initial bootstrap or mount an OS image to continue bootstrapping.
A key component of a microkernel is a good IPC system and virtual-memory-manager design that allows implementing page-fault handling and swapping in usermode servers in a safe way. Since all services are performed by usermode programs, efficient means of communication between programs are essential, far more so than in monolithic kernels. The design of the IPC system makes or breaks a microkernel. To be effective, the IPC system must not only have low overhead, but also interact well with CPU scheduling.
Performance.
On most mainstream processors, obtaining a service is inherently more expensive in a microkernel-based system than a monolithic system. In the monolithic system, the service is obtained by a single system call, which requires two "mode switches" (changes of the processor's ring or CPU mode). In the microkernel-based system, the service is obtained by sending an IPC message to a server, and obtaining the result in another IPC message from the server. This requires a context switch if the drivers are implemented as processes, or a function call if they are implemented as procedures. In addition, passing actual data to the server and back may incur extra copying overhead, while in a monolithic system the kernel can directly access the data in the client's buffers.
Performance is therefore a potential issue in microkernel systems. The experience of first-generation microkernels such as Mach and ChorusOS showed that systems based on them performed very poorly. However, Jochen Liedtke showed that Mach's performance problems were the result of poor design and implementation, specifically Mach's excessive cache footprint. Liedtke demonstrated with his own L4 microkernel that through careful design and implementation, and especially by following the minimality principle, IPC costs could be reduced by more than an order of magnitude compared to Mach. L4's IPC performance is still unbeaten across a range of architectures.
While these results demonstrate that the poor performance of systems based on first-generation microkernels is not representative for second-generation kernels such as L4, this constitutes no proof that microkernel-based systems can be built with good performance. It has been shown that a monolithic Linux server ported to L4 exhibits only a few percent overhead over native Linux. However, such a single-server system exhibits few, if any, of the advantages microkernels are supposed to provide by structuring operating system functionality into separate servers.
A number of commercial multi-server systems exist, in particular the real-time systems QNX and Integrity. No comprehensive comparison of performance relative to monolithic systems has been published for those multiserver systems. Furthermore, performance does not seem to be the overriding concern for those commercial systems, which instead emphasize reliably quick interrupt handling response times (QNX) and simplicity for the sake of robustness. An attempt to build a high-performance multiserver operating system was the IBM Sawmill Linux project. However, this project was never completed.
It has been shown in the meantime that user-level device drivers can come close to the performance of in-kernel drivers even for such high-throughput, high-interrupt devices as Gigabit Ethernet. This seems to imply that high-performance multi-server systems are possible.
Security.
The security benefits of microkernels have been frequently discussed. In the context of security the minimality principle of microkernels is, some have argued, a direct consequence of the principle of least privilege, according to which all code should have only the privileges needed to provide required functionality. Minimality requires that a system's trusted computing base (TCB) should be kept minimal. As the kernel (the code that executes in the privileged mode of the hardware) has unvetted access to any data and can thus violate its integrity or confidentiality, the kernel is always part of the TCB. Minimizing it is natural in a security-driven design.
Consequently, microkernel designs have been used for systems designed for high-security applications, including KeyKOS, EROS and military systems. In fact common criteria (CC) at the highest assurance level (Evaluation Assurance Level (EAL) 7) has an explicit requirement that the target of evaluation be "simple", an acknowledgment of the practical impossibility of establishing true trustworthiness for a complex system. Again, the term "simple" is misleading and ill-defined. At least the Department of Defense Trusted Computer System Evaluation Criteria introduced somewhat more precise verbiage at the B3/A1 classes:
In 2018, a paper presented at the Asia-Pacific Systems Conference claimed that microkernels were demonstrably safer than monolithic kernels by investigating all published critical CVEs for the Linux kernel at the time. The study concluded that 40% of the issues could not occur at all in a formally verified microkernel, and only 4% of the issues would remain entirely unmitigated in such a system.
Third generation.
More recent work on microkernels has been focusing on formal specifications of the kernel API, and formal proofs of the API's security properties and implementation correctness. The first example of this is a mathematical proof of the confinement mechanisms in EROS, based on a simplified model of the EROS API. More recently (in 2007) a comprehensive set of machine-checked proofs was performed of the properties of the protection model of , a version of L4.
This has led to what is referred to as "third-generation microkernels", characterised by a security-oriented API with resource access controlled by capabilities, virtualization as a first-class concern, novel approaches to kernel resource management, and a design goal of suitability for formal analysis, besides the usual goal of high performance. Examples are Coyotos, , Nova, Redox and Fiasco.OC.
In the case of seL4, complete formal verification of the implementation has been achieved, i.e. a mathematical proof that the kernel's implementation is consistent with its formal specification. This provides a guarantee that the properties proved about the API actually hold for the real kernel, a degree of assurance which goes beyond even CC EAL7. It was followed by proofs of security-enforcement properties of the API, and a proof demonstrating that the executable binary code is a correct translation of the C implementation, taking the compiler out of the TCB. Taken together, these proofs establish an end-to-end proof of security properties of the kernel.
Nanokernel.
The term "nanokernel" or "picokernel" historically referred to:
There is also at least one case where the term nanokernel is used to refer not to a small kernel, but one that supports a nanosecond clock resolution.


Nokia E65

The Nokia E65 is a smartphone in the Eseries range, a S60 platform third edition device with slide action. It shared many of the features of the N95 (quad band GSM, 3G, wifi, bluetooth) released around the same time, but thinner, lighter and without the GPS.
It was followed fairly quickly by the E66, which was very similar but gained an FM radio, a newer release of S60, A2DP bluetooth, GPS and 3.2 mpixel camera.
Sales package contents.
Operation times vary depending on the network and usage.
Known issues.
Many users have experienced problems with the SIM connecting to the network after using the phone for some time. Most of them had to bring the phone to the Nokia center to get their phone repaired or replaced. The cause seems to be a design problem in the SIM container on the chassis of the phone. The SIM container is mainly built of a thin metal foil, which in time tends to bend, thus disconnecting the SIM from the mobile phone's SIM contacts. The problem can apparently be solved just by putting a bit of paper between the metal foil and the SIM, enabling it to make contact.
There's also difficulties in making connection to WLAN networks which use EAP-PEAP and MSchapV2 protocols if you update the phone's firmware (this is true as for firmware version 3.0633.69)
Other users experience problems with the phone connecting to third party GPS devices over Bluetooth. This seems to be a compatibility flaw in the Nokia Bluetooth stack of Nokia Maps as these devices do connect well when used with Google Maps on the E65.


Nintendo 3DS

The is a handheld game console produced by Nintendo. It was announced in March 2010 and unveiled at E3 2010 as the successor to the Nintendo DS. The system features backward compatibility with older Nintendo DS video games. As an eighth-generation console, its primary competitor was Sony's PlayStation Vita.
The handheld's most prominent feature is its ability to display stereoscopic 3D effects without the use of 3D glasses or additional accessories, and offers new features such as the StreetPass and SpotPass tag modes, powered by Nintendo Network; augmented reality using its 3D cameras; and Virtual Console, which allows owners to download and play games originally released on older video game systems. It is also pre-loaded with various applications including an online distribution store called Nintendo eShop; a social networking service called Miiverse (shut down on November 8, 2017); an Internet Browser; the Netflix, Hulu Plus, and YouTube streaming video services; Nintendo Video; a messaging application called Swapnote (known as Nintendo Letter Box in Europe and Australia); and Mii Maker.
The Nintendo 3DS was released in Japan on February 26, 2011, and worldwide beginning in March 2011. Less than six months later on July 28, 2011, Nintendo announced a significant price reduction from US$249 to US$169 amid disappointing launch sales. The company offered ten free Nintendo Entertainment System games and ten free Game Boy Advance games from the Nintendo eShop to consumers who bought the system at the original launch price. This strategy was considered a major success, and the console went on to become one of Nintendo's most successful handheld consoles in the first two years of its release. , the Nintendo 3DS family of systems combined have sold 75.92 million units, and games for the systems have sold 383.1 million units as of March 31, 2020.
The 3DS received multiple redesigns over the course of its life. The Nintendo 3DS XL, a larger model, was first released in Japan and Europe in July 2012, featuring a 90% larger screen. An "entry-level" version of the console, the Nintendo 2DS, with a fixed "slate" form factor and lacking autostereoscopic (3D) functionality, was released in Western markets in October 2013. The New Nintendo 3DS features a more powerful CPU, a second analog stick called the C-Stick, additional buttons, an improved camera, and other changes, and was first released in Japan in October 2014.
The 3DS family was discontinued on September 16, 2020, though the Nintendo eShop and Nintendo Network remain active in most regions. While the 3DS stands as the lowest-selling Nintendo handheld, largely due to major adoption of smart devices, it is still regarded as a success, hosting several critically acclaimed games that helped it stay competitive, and helping Nintendo stay relevant in the industry despite the commercial underperformance of the Wii U.
History.
Background.
Nintendo began experimenting with stereoscopic 3D video game technology in the 1980s. The Famicom 3D System, an accessory consisting of liquid crystal shutter glasses, was Nintendo's first product that enabled stereoscopic 3D effects. Although very few titles were released, Nintendo helped design one—called ""—which was co-developed by Nintendo and HAL Laboratory and released in 1988. The Famicom 3D System failed to garner market interest and was never released outside Japan.
Nintendo's second attempt with 3D development was the Virtual Boy, designed by Gunpei Yokoi, creator of the Game Boy handheld console and popular "Metroid" video game. It was a portable table-top system consisting of goggles and a controller that used a spinning disc to achieve full stereoscopic monochrome 3D. Released in 1995, the Virtual Boy sold fewer than a million units, with only 22 compatible game titles released, and was widely considered to be a commercial failure. Shigeru Miyamoto, known for his work on popular game franchises such as Mario and "The Legend of Zelda", commented in a 2011 interview that he felt conflicted about Yokoi's decision to use wire-frame models for 3D and suggested that the product may not have been marketed correctly. The failure of the Virtual Boy left many at Nintendo doubting the viability of 3D gaming.
Despite this, Nintendo continued to investigate the incorporation of 3D technology into later products. The GameCube, released in 2001, was also capable of displaying true stereoscopic 3D with an LCD attachment, though only the launch title "Luigi's Mansion" was ever designed to utilize it. Due to the expensive nature of the requisite peripheral technology at the time, the GameCube's 3D functionality was never marketed to the public. Nintendo later experimented with a 3D LCD during development of the Game Boy Advance SP, but the idea was shelved after it failed to achieve satisfactory results. Another attempt was made in preparation for a virtual navigation guide to be used on the Nintendo DS at Shigureden, an interactive museum in Japan. Nintendo president Hiroshi Yamauchi encouraged additional 3D research in an effort to use the technology in the exhibition. Although the project fell short, Nintendo was able to collect valuable research on liquid crystal which would later aid in the development of the Nintendo 3DS.
Development.
Speculation on the development of a successor to the Nintendo DS began in late 2009. At the time, Nintendo controlled as much as 68.3% of the handheld gaming market. In October 2009, tech tabloid Bright Side of News reported that Nvidia, a graphics processing unit (GPU) developer that recently made headway with its Tegra System-on-Chip processors, had been selected by Nintendo to develop hardware for their next generation portable game console. Later that month, speaking about the future for Nintendo's portable consoles, company president Satoru Iwata mentioned that while mobile broadband connectivity via subscription "doesn't fit Nintendo customers", he was interested in exploring options like Amazon's Whispernet found on the Amazon Kindle which provides free wireless connectivity to its customers for the sole purpose of browsing and purchasing content from the Kindle Store.
Nintendo had expressed interest in motion-sensing capabilities since the development of the original Nintendo DS, and an alleged comment by Satoru Iwata from a 2010 interview with Asahi Shimbun implied that the successor to the Nintendo DS would incorporate a motion sensor. The claim led to a minor dispute between the publication and Nintendo over its accuracy. In February 2010, video gaming website Computer and Video Games reported that a select "handful" of Japanese developers were in possession of software development kits for the Nintendo DS successor, with The Pokémon Company given special priority. According to their insider at an unspecified third-party development studio, the hardware features a "tilt" function that is similar to that of the iPhone, "but does a lot more".
Announcement.
On March 23, 2010, Nintendo officially announced the Nintendo 3DS handheld console, successor to the Nintendo DS family. According to industry analysts, the timing of Nintendo's original announcement, which had drawn attention away from the launch of the company's still-new Nintendo DSi XL handheld, was likely intended to preempt impending news leaks about the product by the Japanese press. In April 2010, a picture of a possible development build of the internal components of the 3DS was released as part of a U.S. Federal Communications Commission (FCC) filing by Mitsumi. An analysis of the image showed that it was likely genuine as it featured components known to be used in the Nintendo DS line along with features of the 3DS that had not been announced like a 5:3 top screen and a control nub similar to those used in Sony's PlayStation Portable systems.
In June 2010, video gaming website IGN reported that according to "several developers who have experienced 3DS in its current form," the system possesses processing power that "far exceed[s] the Nintendo Wii" and with 3D shaders, they could make games that "look close to current generation visuals on the Xbox 360 and PlayStation 3". IGN also cited "several developer sources" as saying that the system does not use the Nvidia Tegra mobile chipset.
The system was fully revealed at Nintendo's conference at E3 2010 on June 15, 2010. The first game revealed was ', and several other titles from third parties were also announced, including Square Enix with "Kingdom Hearts" and "Final Fantasy", Konami with ', Warner Bros. Interactive with , Ubisoft with ', Capcom with ' and ', and Activision with DJ Hero. Other Nintendo titles were later revealed after the conference, such as "Mario Kart 7", ', and remakes of "Star Fox 64" and '. Nintendo also demoed 3D trailers for DreamWorks' "How to Train Your Dragon", Warner Bros' ', and Disney's film "Tangled" on the 3DS. The 3DS design shown at E3 was almost final, but subject to minor changes.
On September 29, 2010, Nintendo announced that the Nintendo 3DS would be released in Japan on February 26, 2011. Furthermore, several additional features were announced: the inclusion of a "Mii Maker" (similar to the "Mii Channel" on the Wii), Virtual Console (including Game Boy and Game Boy Color), 3D Classics, a cradle for recharging the system's battery, multitasking, several included augmented reality games, an included 2 GB SD card, and stored game data, as well as the final names for the 3DS tag modes, StreetPass and SpotPass collectively. Nintendo further revealed that the system would be available at launch in two colors, "Aqua Blue" and "Cosmos Black", and that its launch price in Japan would be ¥25,000. The final physical design was also revealed at this event.
Pre-launch events.
On January 19, 2011, Nintendo held two simultaneous press conferences in Amsterdam and New York City, where it revealed all of the features of the Nintendo 3DS. In North America, the release date was confirmed as March 27, 2011 with a retail price of $249.99. In Europe, the release date was announced as March 25, 2011, though Nintendo said that pricing would be up to retailers. Most retailers priced the handheld between £219.99 and £229.99, though some retailers, such as Amazon, lowered the price following Sony's announcement of the PSP's successor on January 26, 2011, with some retailers pricing the handheld at around £200 in February.
In February 2011, Nintendo held four hands-on events in the UK named "Believe Your Eyes". February 5 and 6 saw simultaneous events in London and Manchester, while the 12th and 13th saw events in Glasgow and Bristol. Invitations to the events were offered first to Club Nintendo members, then later to members of the public via an online registration form. Guests watched two brief performances and trailers, then were given time to play a selection of games on 3DS devices. Attendees were then allowed into a second room, containing further games to play (mainly augmented reality-based) and in-device videos. In March, Nintendo held a few events in Australia at selected Westfield stores for people to try out the console, with a number of demos available.
Launch.
The Nintendo 3DS launched in Japan on February 26, 2011, priced at ¥25,000. On March 25, 2011, the system launched in Europe, with pricing set by individual retailers. On March 27, 2011, the Nintendo 3DS launched in North America, priced at US$249.99. On March 31, 2011, the system launched in Australia and New Zealand, priced at A$349.95. The system originally launched in all regions in both "Aqua Blue" and "Cosmo Black" color variations.
On July 28, 2011, Nintendo announced the Nintendo 3DS would be getting a price cut of almost a third of the console's original price, from $249.99 to $169.99 in North America, 25,000¥ to 15,000¥ in Japan, and $349.95 to $249.95 in Australia. Although in Europe, pricing is up to retailers, the system also received a substantial price cut. In an effort to compensate those who had paid the original price, the company introduced the "Nintendo 3DS Ambassador Program", through which existing 3DS owners were eligible (conditional that they must have accessed the Nintendo eShop at least once prior to August 21) to download ten Nintendo Entertainment System games and ten Game Boy Advance games at no extra cost. Nintendo further stated that the NES Ambassador titles would see future release to the general public on the Nintendo eShop, while there were no plans to make the Game Boy Advance Ambassador titles available. The ten NES games were released in North America on August 31 and in Europe on September 1, 2011. These include: "Balloon Fight", "Donkey Kong Jr.", "Ice Climber", "Metroid", "NES Open Tournament Golf", "Super Mario Bros.", "The Legend of Zelda", "Wrecking Crew", "Yoshi" (North America) / "Mario & Yoshi" (Europe & Australia), and '. The ten Game Boy Advance games were released in North America on December 16, 2011. These include: ', ', "Kirby & The Amazing Mirror", ', "Mario vs. Donkey Kong", "Metroid Fusion", ', ', "Wario Land 4", and ""
On April 28, 2012, the Nintendo 3DS launched in South Korea, in "Cosmos Black", "Misty Pink", and "Cobalt Blue" color variations. On September 28, 2012, the system launched in two other regions, Hong Kong and Taiwan, in "Cerulean Blue" and "Shimmer Pink".
Larger model.
Rumors of a larger model of the Nintendo 3DS being in production appeared during June 2012, when Japanese publication "Nikkei" wrote an article stating that the system was initially scheduled to be unveiled at E3 2012. However, Nintendo responded that these rumors were false and that the article was "entire speculation", but refrained from further commenting on the subject. Finally, on June 21, 2012, the system was announced during a Nintendo Direct presentation. Featuring 90% larger screens than the original Nintendo 3DS, the system was set to launch on all major regions during the middle of the year.
The Nintendo 3DS XL (Nintendo 3DS LL in Japan) was released on July 28, 2012, in Japan, priced at ¥18,900, and was available in "Silver + Black", "Red + Black" and "White" color variations. In Europe, the system launched on the same day but in "Silver + Black", "Blue + Black" and "Red + Black" color variations. On August 19, the Nintendo 3DS XL launched in North America, priced at US$199.99, and available in "Red + Black" and "Blue + Black". On August 23, 2012, Australia and New Zealand saw the launch of the new handheld, priced at AU$249.95, and available in the same color variations as in Europe, "Silver + Black", "Blue + Black" and "Red + Black". The launch of the Nintendo 3DS XL coincided with the release of "New Super Mario Bros. 2", the first Nintendo 3DS game to be available in both retail and downloadable versions.
On September 20, 2012, the Nintendo 3DS XL launched in South Korea, in "Silver + Black", "Red + Black", and "White" color variations. On September 28, 2012, the system launched in two other regions, Hong Kong and Taiwan, in "Blue + Black" and "White" color variations. In December 2012, Nintendo Chinese distribution partner, iQue, launched the iQue 3DS XL in three special editions, one featuring a Mario decal while the other two feature both Mario and Luigi.
Later years.
Nintendo officially announced their next console, the Nintendo Switch, in October 2016 and with worldwide release in March 2017. The Switch is a hybrid video game console that can be used both as a home console docked to a television or taken on-the-go to be used as a handheld system. While the Switch displaced the Wii U as Nintendo's primary home console in terms of production and distribution, Nintendo executives affirmed that the company would continue to support the 3DS with more first-party and third-party games in the immediate future. Fils-Aimé assured that the 3DS "has a long life in front of it", and that Nintendo intends for it to co-exist with the Switch, while Kimishima considered the 3DS as an entry-level product for younger players. In June 2017, Fils-Aimé said they would be supporting Nintendo 3DS beyond 2018. In July 2017, production of the New Nintendo 3DS had ended in Europe and Japan leaving the New Nintendo 3DS XL and then-recently released New Nintendo 2DS XL as the only 3DS models still in production worldwide. In June 2018, Nintendo said it was considering some possibilities for a successor to the Nintendo 3DS.
In June 2019, Nintendo confirmed that first party game development had ceased, but that the system would continue to be supported through the near future. With the unveiling of the Nintendo Switch Lite — a lower-end version of the Switch console — Nintendo of America CEO Doug Bowser stated that the company still planned to continue supporting the 3DS family as long as there was still demand. In November 2019, Bowser reaffirmed that Nintendo would continue to support the 3DS into 2020. On September 16, 2020, Nintendo confirmed that production of the Nintendo 3DS family of systems had ended. Nintendo currently has no plans to end existing online services such as online play and Nintendo eShop, as well as the option to redownload all previously purchased content, which will continue to be available "in the foreseeable future".
Hardware.
The Nintendo 3DS has custom components co-developed by the Nintendo Research & Engineering department and other manufacturers, all combined into a unified system on chip. Its main central processing unit (CPU) is a dual-core ARM11 MPCore-based processor manufactured at and clocked at . One processor core is dedicated to games and applications, while the other core is exclusive to the operating system, enabling multitasking and background tasks. These tasks are handled seamlessly in the background during gameplay or while the system is in sleep mode. The system also contains a single-core ARM9-based processor, enabling backward compatibility with both Nintendo DS and DSi titles. The graphics processor (GPU) is a PICA200 developed by Digital Media Professionals, running at . The system contains of random-access memory (RAM) consisting of of FCRAM developed by Fujitsu, with a peak bandwidth of .
The console contains two separate screens. The top screen is a 15:9 (5:3) autostereoscopic liquid-crystal display (LCD) with a resolution of (effectively per eye, or WQVGA). On the original 3DS, the screen measures , while on the 3DS XL it measures . It is autostereoscopic; it uses a parallax barrier to produce a three-dimensional effect without requiring special glasses. There is a "3D Depth Slider" next to the screen for adjusting the 3D effect or turning it off altogether. The bottom screen is a 4:3 resistive touchscreen with a display resolution of 320×240 pixels (QVGA). On the original Nintendo 3DS, the screen measures , while on the 3DS XL it measures .
The system features three camera sensors: two cameras on the outside of the device, capable of taking 3D photos and capturing 3D video; and one camera facing the user positioned above the top screen. All camera sensors have a maximum resolution of 640×480 pixels (0.3 megapixels, VGA) with one-point focus and can only achieve digital zoom. There is also a microphone in the bottom of the system.
The system includes of eMMC flash memory manufactured by either Toshiba or Samsung. The system's memory can be expanded via an SD memory card slot, which supports SD and SDHC memory cards. All the Nintendo 3DS systems come packaged with a 2 GB SD card while Nintendo 3DS XL systems include a SDHC card. The system uses 2.4 GHz 802.11 b/g wireless network connectivity with enhanced WPA2 security. There is also an infrared port on the back of the console, which allows the system to connect with certain peripherals such as the Circle Pad Pro and the amiibo reader/writer.
The Nintendo 3DS comes with a lithium ion battery. Its longevity fluctuates between 3 and 5 hours while playing Nintendo 3DS games and between 5 and 8 hours while playing Nintendo DS games, depending on brightness, volume and wireless settings. The Nintendo 3DS XL, however, comes with a 1750 mAh, 3.7 V lithium-ion battery capable of lasting between 3.5 and 6.5 hours playing 3DS games and 6 to 10 hours playing DS games. While the original 3DS weighs approximately , the larger XL version weighs approximately . When opened, the original 3DS is wide, broad, and thick. The XL version however, is wide, broad, and thick. The 3DS also come with a telescoping stylus, extendable to up to long, while the 3DS XL come with a regular stylus.
All systems in the Nintendo 3DS family use the same AC adapter used with the Nintendo DSi and Nintendo DSi XL. In order to reduce production costs, certain console bundles, such as Japanese and European releases of the Nintendo 3DS XL and the New Nintendo 3DS, were not bundled with an AC adapter, requiring players to either use one from an older system they may own or purchase one separately. Along with plugging the adapter directly into the system, the standard Nintendo 3DS comes with a charging cradle, which players place their system in to charge. Charging cradles for the Nintendo 3DS XL and New Nintendo 3DS systems are sold separately from their respective systems, and there is no cradle for the Nintendo 2DS.
Input.
The Nintendo 3DS input controls include the following: a round nub analog input called the Circle Pad, a D-pad, four face buttons (A, B, X, Y), bumper buttons (L, R), a Home button, Start and Select buttons, and a Power button. It also features a dedicated volume slider and a wireless switch, which turns on or off wireless communications. The touchscreen can be interacted with either the user's finger or a stylus bundled with the handheld. There is also a six-axis motion sensor, which includes a 3-axis accelerometer and a 3-axis gyroscope. Through the Circle Pad Pro accessory the system has access to a second Circle Pad and trigger buttons (Z, Z).
Game card.
The Nintendo 3DS Game Card is a media format used to physically distribute video games for Nintendo 3DS systems. The 3DS Game Card is similar in design to the Nintendo DS Game Card, but includes a small tab on the top left of the card that prevents 3DS Game Cards from being inserted into a Nintendo DS. These Game Cards can hold up to either 1 GB, 2 GB or 4 GB of game data depending on the game, which is 2, 4, and 8 times more storage, respectively, than the biggest Nintendo DS Game Card's capacity (512 MB). Some sources claim that an 8 GB version could be produced should a game ever require it.
Accessories.
Circle Pad Pro.
The Circle Pad Pro is an accessory/add-on which connects to a Nintendo 3DS system through infrared, adding support for a second Circle Pad, a substitute R button input (as the original one becomes difficult to reach), and an extra set of trigger buttons (Z / Z). The device was first released in Japan on December 10, 2011, coinciding with the release of "Monster Hunter 3G" in the region. It was subsequently released in Europe on January 27, 2012, in Australia on February 2, 2012, and in North America on February 7, 2012, coinciding with the release of "" in those regions.
Images of the device first appeared in September 2011 in Famitsu The first titles confirmed to compatible with the add-on were "Monster Hunter 3G", "Resident Evil: Revelations", ' , ', "", and "Shin Sangoku Musou VS".
The Nintendo 3DS XL version of the device, called the Circle Pad Pro XL, was released in Japan on November 15, 2012, Europe on March 22, 2013, and North America on April 17, 2013.
The C-Stick and Z / Z buttons on the New Nintendo 3DS are backward compatible with Circle Pad Pro-compatible titles.
Stand.
This accessory came bundled exclusively with every retail copy of "". The stand made the game, and other games with similar controls such as "Liberation Maiden", easier to play for various users, as it helped free the tension of suspending the console with one hand since the other hand would be using the stylus on the touch screen for longer periods than usual.
NFC Reader/Writer.
A near-field communication (NFC) reader and writer was released on September 25, 2015, in North America at and on October 2 in Europe, alongside "". This peripheral enables Amiibo support for the Nintendo 3DS, 3DS XL, and 2DS, a feature already built-in to New Nintendo 3DS systems. The accessory is powered by two AA batteries.
Other models.
The Nintendo 3DS family consists of six models. Apart from the regular-sized Nintendo 3DS, the Nintendo 3DS XL is a larger model of the console which was released on July 28, 2012, and features 90% larger screens than the original Nintendo 3DS. The Nintendo 2DS is a complete redesign of the handheld which was released on October 12, 2013, and is described as an "entry level" version of the 3DS. This console, while still capable of playing Nintendo DS and 3DS games, removes the 3D functionality and changes the form factor to a fixed, "slate" design. The New Nintendo 3DS, which also has an XL variant, adds additional controls and improved functionality, and is able to play certain games not compatible with the previous models. A cheaper alternative, the New Nintendo 2DS XL, incorporates some of the features from the New Nintendo 3DS with elements from the 2DS such as the lack of stereoscopic 3D functionality; it also shifts from the slate form factor of the original 2DS model to a clamshell design.
Nintendo 2DS.
The Nintendo 2DS (abbreviated to 2DS) was announced on August 28, 2013, as a new entry-level model of the Nintendo 3DS family. While its hardware and software are relatively similar to the Nintendo 3DS (and still offers compatibility with Nintendo DS and 3DS games), it lacks the 3DS's signature 3D screen, does not have internal stereo speakers (only using a mono speaker), and uses a slate-like form factor as opposed to the clamshell design used by its Nintendo DS and 3DS predecessors. The Nintendo 2DS was released in North America and Europe on October 12, 2013, coinciding with the launch of "Pokémon X" & "Y" and is being sold alongside the Nintendo 3DS and 3DS XL at a relatively lower price point.
As a cheaper model of the Nintendo 3DS family that plays both Nintendo DS and 3DS games, the Nintendo 2DS is seen as a market strategy to broaden the overall Nintendo handheld gaming market. As such, the 2DS is a handheld console targeted at a different audience than that of the regular Nintendo 3DS models, particularly younger users. Despite concerns from critics who felt that the company was trying to de-emphasize the 3D functionality by releasing the 2DS, Nintendo maintains that 3D is still part of their future plans.
New Nintendo 3DS.
The New Nintendo 3DS and New Nintendo 3DS XL (known as New Nintendo 3DS LL in Japan) are updated revisions of the 3DS and 3DS XL that were first unveiled during a Japanese Nintendo Direct presentation on August 29, 2014. The new models feature a more powerful processor, face tracking for improved 3D viewing angles, additional ZL/ZR shoulder buttons and a new "C-Stick" pointing stick that are comparable to and backward compatible with games that support the Circle Pad Pro, colored face buttons inspired by those of Super NES controllers, automatic brightness adjustment, microSD storage, larger batteries, and integrated near-field communications support for use with Amiibo products. The regular-sized New Nintendo 3DS also has slightly larger screens than the prior model, and a suite of interchangeable faceplates.
As with its predecessors, the New Nintendo 3DS is compatible with existing DS and 3DS titles. Some software titles, such as "Xenoblade Chronicles 3D" and Super Nintendo Entertainment System games released for Virtual Console, are specifically optimized for the device and its upgraded processor and are incompatible with the earlier 3DS and 2DS models.
The systems were released in Japan on October 11, 2014, in Australia and New Zealand on November 21, 2014, and at retail in Europe and North America on February 13, 2015. Only the XL version was made available in North America at launch, though the smaller model was later released in a series of limited edition bundles.
New Nintendo 2DS XL.
On April 27, 2017, Nintendo unveiled the New Nintendo 2DS XL (known as New Nintendo 2DS LL in Japan), which was released in North America and Europe on July 28, 2017 and Japan on July 29, 2017. The system is a variation of the New Nintendo 3DS line, featuring the additional hardware features and software compatibility of the New Nintendo 3DS, albeit without the stereoscopic 3D functionality, and a foldable form factor. The system did not receive a non-XL variant.
Software.
Operating system.
The Home Menu is a graphical user interface similar to the Nintendo DSi Menu and Wii U Menu for Nintendo 3DS systems. It is used to launch software stored on Nintendo DS and Nintendo 3DS Game Cards, applications installed on a SD card, and DSiWare titles installed in the system's internal memory. Application icons are set in a customizable grid navigable on the lower screen. On the upper screen, a special 3D animated logo is displayed for each individual app, as well as system information such as wireless signal strength, date and time, and battery life. Using the Home button, users can suspend the current software that is running and bring up the Home Menu, allowing the user to launch certain multitasking applications, such as the Internet Browser and Miiverse.
Similarly to the Nintendo DSi, the menu has updateable firmware. On April 25, 2012, a system update brought the introduction of a folder system, which allows users to put applications inside folders. On June 20, 2013, a system update brought the introduction of the "Save Data Backup" feature, which allows the user to back up save data from downloadable Nintendo 3DS software and most Virtual Console games. An update was released on October 30, 2014, to enable players to download custom themes for the Home Menu, based on various Nintendo titles.
Camera.
Nintendo 3DS Camera is a built-in photo and video recorder with an integrated media gallery and photo editing functionality. The app uses the system's two front-facing cameras to take 3D photos, and the user-facing camera to take regular 2D photos. All photographs are taken at a resolution of 640 x 480 px (VGA), or 0.3 megapixels. The two perspectives of 3D photographs are stored into two separate files, with JPG and MPO extensions.
There are various options and filters available when taking photos or recording video. There is also a "Low-Light" option, which is useful when taking photos and recording video in low lighting conditions.
On December 7, 2011, a system update added the ability to record 3D video along special recording options, such as the ability to make stop motion animations. All recording modes only allow a single video to be up to 10 minutes long.
Sound.
Nintendo 3DS Sound is a built-in music player and sound recorder. Supported filename extensions include MP3 audio with .mp3 and AAC audio with .mp4, .m4a, or .3GP. Audio files can be played from an SD card, with visualizations displayed on the upper screen. Music can be played while the console is closed, using the system's headphone jack. A set of sound manipulation options are available, as well as several audio filters. Ten-second voice recordings can also be recorded and edited. These can then be shared throughout other applications such as Swapnote. There is also a StreetPass function built-into the app, where users exchange song data to make a compatibility chart between them.
Nintendo eShop.
Nintendo eShop is the Nintendo 3DS's online software distribution service. Launched in June 2011, the eShop provides downloadable retail and download-only Nintendo 3DS titles, Virtual Console titles, and various applications and videos. It also allows users to purchase downloadable content (DLC) and automatically download patches for both physical and downloadable games. All content obtained from Nintendo eShop is attached to a Nintendo Network ID but can only be used in one system. Background downloading is possible via SpotPass, while playing games or in sleep mode. Up to ten downloads can be queued at a time and their status can be checked on the Home Menu. The Nintendo eShop supports simple user software reviews. Users can submit a review with "stars" ranging from one to five, representing its quality in a crescent order, and categorize software by whether it is suitable for hardcore or more casual players. User reviews can only be submitted after using the software for at least one hour.
Certain Latin American and Caribbean countries, which feature a more limited eShop, had their systems closed in July 2020. Countries in the region with the full eShop and the rest of the world are currently unaffected.
Miiverse.
Miiverse was an integrated social networking service, which allowed players to interact and share their gaming experiences through their personal Mii characters. It was originally launched on Wii U and was launched on the Nintendo 3DS on December 11, 2013, via a firmware update. Its functionality was similar to the Wii U version albeit without the private messaging feature, and required a Nintendo Network ID.
Miiverse allowed users to seamlessly share accomplishments, comments, hand written notes, and game screenshots with other players on various communities specific to their games and applications. It was possible to access Wii U communities on the Nintendo 3DS and vice versa. It was also possible to access Miiverse on any internet enabled smartphone, tablet and PC. The service was moderated through software filtering as well as a human resource team in order to ensure that the content shared by users was appropriate and that no spoilers were shared. It was also possible to post screenshots from certain games to social networking websites such as Twitter, Tumblr and/or Facebook via the "Nintendo 3DS Image Share" service.
On November 7, 2017, the Miiverse servers closed down for the 3DS and the Wii U.
Internet browser.
The Nintendo 3DS's internet browser was released via a firmware update on June 6, 2011, in North America and June 7, 2011 in Europe and Japan. It functions as a multitasking system application and can be used while another application is suspended in the background. The browser contains a text wrap option to automatically wrap text to the width of the screen at different zoom levels, and is mainly controlled with the stylus or the Circle Pad and the D-pad to cycle through links on the page. The browser supports HTML, CSS, JavaScript and some HTML5 elements but does not support Flash, video or music. It can also download and show 3D images with the .mpo file extension and allows users to save images on an SD card. Additionally the browser supports JPEG and MPO image uploads from the system's photo gallery. The user can also choose between the Google and the Yahoo! search engines, and can also create bookmarks.
The 3DS also shipped with the Nintendo Zone Viewer. The Nintendo Zone Viewer was a 3D enabled browser that was developed by Nintendo to support location-based Nintendo Zone interaction.
Video services.
"Nintendo Video" launched in Australia, Europe, and Japan on July 13, 2011, and in North America on July 21, 2011, along with a tutorial video. The service periodically updates its video content availability through SpotPass, automatically adding and deleting content from the console. Up to four videos can be available through the app at the same time. Nintendo Video content include: established series such as "Oscar's Oasis" and "Shaun the Sheep" (with fifteen exclusive episodes); original series such as "Dinosaur Office" and "BearShark" by CollegeHumor; short films; movie trailers; and sports videos by Redbull and BSkyB. The Nintendo Video app was discontinued in the Japanese, European and Oceania regions by April 2014, and in North America by July 2015. In North America at least, the "Nintendo Video" name continues to exist via a permanent Nintendo eShop category for all hosted videos that previously featured on the former app, as well as potential new content. The permanently hosted online "Nintendo Video" eShop videos can be viewed on-demand at any time without additional costs.
The Netflix streaming video service was released in North America on July 14, 2011. Netflix users are able to pause streaming video on the Nintendo 3DS and resume it on other Netflix-enabled devices. Only 2D content is available through the service. Nintendo announced on October 21, 2011, that Hulu Plus would be released on the Nintendo 3DS by the end of the year. On February 16, 2012, following the debut of Hulu on the Wii, Nintendo reiterated the announcement this time claiming it would be available on the 3DS sometime in 2012. Finally, on August 6, 2013, the Hulu application became available in Japan and on October 17, 2013, the Hulu Plus application was launched in North America, along with a one-week free trial. On November 29, 2013, the YouTube application was released for the Nintendo 3DS in Europe and North America. It was discontinued in August 2019.
Discontinued video services.
The "SpotPass TV" service launched in Japan on June 19, 2011. The service was a joint service between Nippon TV and Fuji TV that brought free 3D video content to Nintendo 3DS users in Japan. Types of content included programming teaching the user how to do magic tricks, Japanese idol sumo wrestling, sports, and 3D dating, among others. The service was terminated on June 20, 2012, a year after its inception. A Eurosport app launched in Europe and Australia on December 15, 2011, and worked similarly to the Nintendo Video app. It featured weekly episodes of "Watts Zap" and other compilation videos containing Eurosport content. The service was terminated on December 31, 2012, a year after its inception.
Swapnote.
Swapnote (known as Nintendo Letter Box in Europe and Australia) is a messaging application for the Nintendo 3DS. Swapnote was released on December 21, 2011, in Japan and on December 22 in Europe, Australia and North America, via the Nintendo eShop. The application is free and is pre-installed on newer systems. It allows users to send hand-written/drawn messages to registered friends via SpotPass either or other users via StreetPass. The app also allows users to freely embed pictures and sounds into their messages.
On October 31, 2013, Nintendo abruptly suspended the Swapnote/Nintendo Letter Box SpotPass functionality after discovering minors were sharing Friend Codes with strangers who had exploited the messaging service to allegedly exchange pornographic imagery.
Mii Maker.
Mii Maker is a system application that allows users to create Mii characters through either a selection of facial and body features, such as the nose, mouth, eyes, hair, among other, or by taking a photo using the system's cameras and auto-generate a personal Mii. Mii characters can also be added and shared by reading special QR codes with one of the cameras. It is also possible to import Mii characters from a Wii or a Wii U system. However, Mii created on Nintendo 3DS systems cannot be exported back to a Wii due to the addition of character parts in Mii Maker not present on the Wii's "Mii Channel". This restriction, however, is not applied when exporting a Mii from a Nintendo 3DS to a Wii U system.
Activity Log.
Activity Log is a system application that tracks game-play and keeps a record of which games have been played and for how long, as well as physical activity, such as counting every step taken while carrying a Nintendo 3DS using its built in pedometer. The feature encourages walking every day with the system in order to earn "Play Coins", at a maximum of 10 each day at a rate of one per 100 steps, to a total of 300 coins. Play Coins can then be used with compatible games and applications to acquire special content and a variety of other benefits.
Other network features.
Other network features of the Nintendo 3DS include the Nintendo Network, SpotPass and StreetPass. StreetPass Mii Plaza is a StreetPass application which comes pre-installed on every Nintendo 3DS system, while Nintendo Zone Viewer is a built-in application that detects and makes use of certified SpotPass hotspots. The service has since been discontinued.
"PictoChat", the decentralized wireless messaging software introduced with the Nintendo DS and supported by Nintendo DSi for exchanging text and drawings, is not present on 3DS.
Games.
Retail copies of games are supplied on proprietary cartridges called "Nintendo 3DS Game Cards", which are packaged in keep cases with simple instructions. In Europe, the boxes have a triangle at the bottom corner of the paper sleeve-insert side. The triangle is color-coded to identify the region for which the title is intended and which manual languages are included. Unlike with previous Nintendo consoles, the complete software manual is only available digitally via the system's Home Menu. Software published by Nintendo and by some third parties come packaged with Club Nintendo points, which can be redeemed for special rewards. Retail and download-only games are also available for download in the Nintendo eShop. All Nintendo 3DS consoles are region locked (software purchased in a region can be only played on that region's hardware).
A total of 384 million Nintendo 3DS games have been sold worldwide , with 49 titles surpassing the million-unit mark. The most successful game, "Mario Kart 7", has sold approximately 18 million units worldwide.
Launch titles.
The Nintendo 3DS launched in Japan with 8 games, in North America with 15 games and in Europe with 14 games. An additional thirty games were announced for release during the system's "launch window", which includes the three months after the system's launch date.
Augmented reality.
"AR Games" is a compilation of several augmented reality mini-games and simple tools, which is pre-installed on every Nintendo 3DS, along with 6 paper cards that interact with certain games. Five of the six cards have a picture of a character on them, consisting of Mario, Link, Kirby, Pikmin, and Samus. The sixth one is a question mark box from the "Super Mario Bros." series. Nintendo has also published downloadable versions of this card in larger sizes. By scanning the cards, real time graphics are augmented onto live footage. It is also possible to take 3D photos of Nintendo characters, using any to all 6 AR Cards, as well as their Miis.
Some AR cards are also compatible with other Nintendo 3DS games including "Nintendogs + Cats", ', "Pokédex 3D Pro", ', and "".
"Face Raiders" is another augmented reality application pre-installed on every Nintendo 3DS system. In order to start playing, the user must take pictures of peoples' faces. These faces then turn into enemies and attack the player, who must shoot them using the system's gyroscope. The background of the game is the rear camera's viewpoint. As people walk by in the background, the game takes their pictures from their faces, also adding them as enemies. It is also possible to collect faces from the system's image gallery, which is searched automatically for faces.
There are other Nintendo 3DS applications that similarly use the system's AR capabilities, such as "Photos with Mario", "Photos with Animal Crossing", "Pokémon Dream Radar", and "".
Download Play.
Download Play allows users to play local multiplayer games with other Nintendo 3DS systems using only one Game Card. Players must have their systems within wireless range (up to approximately 65 feet) of each other for the guest system to download the necessary data from the host system. Download Play on Nintendo 3DS systems is also backward compatible, meaning that it is also available for Nintendo DS games. Unlike Download Play on Nintendo DS, game data is stored on the system's SD card once downloaded to the guest system, no longer requiring a re-download for a future game session. Nintendo 3DS games can only transfer a maximum of 32 MB of data to other systems while in download play. Other forms of local multiplayer modes require each player to own the software that is currently being used.
Backward compatibility.
In addition to its own software, the Nintendo 3DS is backward compatible with all Nintendo DS and Nintendo DSi software. Like the DSi and DSi XL, the Nintendo 3DS is incompatible with DS software that requires use of the Game Boy Advance port. Nintendo DS and DSi software cannot be played with 3D visuals on the 3DS. The original DS display resolutions are displayed in a scaled and stretched fashion due to the increased resolution of the 3DS's screens. If the user holds down the START or SELECT buttons upon launching Nintendo DS software, the emulated screens will be displayed in the Nintendo DS's native resolution, albeit smaller with black borders. On the Nintendo 3DS XL, this method yields a viewing size for DS games similar to their native sizes (due to the larger screen size of the XL), unlike on the original 3DS models, where the games appear to be shrunk.
Virtual Console.
The Virtual Console service allows Nintendo 3DS owners to download and play games originally released for the Game Boy, Game Boy Color, Sega Game Gear, Nintendo Entertainment System, and exclusively for the New Nintendo 3DS models, Super Nintendo Entertainment System. Virtual Console games are distributed over broadband Internet via the Nintendo eShop, and are saved to a removable SD card. Once downloaded, Virtual Console games can be accessed from the Home Menu as individual apps. The service was launched on June 6 in North America and June 7, 2011 in Japan and Europe as part of a system update.
Nintendo and Sega also launched the "3D Classics" series, a selection of enhanced retro games for the Nintendo 3DS featuring updated stereoscopic graphics.
Non-gaming uses.
The Louvre Museum in Paris contracted Nintendo to create a 3DS-based audiovisual visitor guide. Titled "Nintendo 3DS Guide: Louvre", this guide contains over 30 hours of audio and over 1,000 photographs of artwork and the museum itself, including 3D views, and also provides navigation thanks to differential GPS transmitters installed within the museum. 3DS XLs pre-loaded with the guide are available for hire at the museum, and the software can also be purchased from the Nintendo eShop. Unlike most 3DS titles, the guide is not region locked.
Reception.
The Nintendo 3DS hardware has received largely positive reviews. IGN called its hardware design a "natural evolution of the Nintendo DSi system." CNET praised the device's 3D effect, while IGN called it "impressively sharp and clean", and impressively superior to its predecessors, although it was noted that the 3D effect only worked if the system was held at the right distance and angle. A common complaint was the 3DS's battery life; Engadget reported to get 3 hours of battery life from the system, while IGN reported 2 to 4.5 hours of play.
The Nintendo 3DS XL was very well received at launch. Reviewers generally recommended the console to new buyers of the Nintendo 3DS family, although not so much to current owners of a Nintendo 3DS. Kotaku mentioned it as "possibly the best portable gaming device ever...[and] a well-designed machine..." and that "it plays great games" while The Verge called it "the best portable gaming buy around right now." The Nintendo 3DS XL improves upon the battery life of the original 3DS. Kotaku claimed that the Nintendo 3DS XL's battery "lasts a cross-country flight.". Sam Byford of "The Verge" noted that the larger top screen makes more obvious problems with aliasing and low-resolution textures. He did, however, say that the 3D felt more immersive: "Where the 3DS felt like peering through a peephole into another world, the XL is almost like stepping through a door." On the other hand, Destructoid said the 3D effect on the XL was more subtle than on its predecessor. The Verge spoke positively of the build quality and design choices, saying the console improved on the original. A Destructoid reviewer said the 3DS XL was easier to use than the regular Nintendo 3DS, mainly due to his large hands. The Verge noted lowered sound quality from the original, the result of smaller speakers. Both The Verge and Gizmodo complained of low-quality cameras.
Sales.
Pre-launch.
Prior to its launch, Amazon UK announced that the Nintendo 3DS was their most pre-ordered video game system ever. Nintendo of America announced that the number of pre-orders were double the number of pre-orders for the Wii.
Launch.
The system launched in Japan on February 26, 2011, and sold its entire allotment of 400,000 Nintendo 3DS units during its release, amid reports of major queues outside retailers and pre-order sellouts. On March 25, 2011, the system launched in Europe, selling 303,000 units during its first two days of its release. In the UK 113,000 3DS units were sold during its opening weekend, making it Nintendo's most successful hardware launch in the country to this day. According to the NPD Group, Nintendo sold just under 500,000 Nintendo 3DS units during the month of March 2011 in the US, with 440,000 Nintendo 3DS units sold in its first week of release. As of March 31, 2011 the 3DS had sold 3.61 million units, short of the 4 million Nintendo projected. The Nintendo 3DS is also the fastest selling console in Australia, with 200,000 units sold through 37 weeks of availability.
Price cut.
Following the system's price cut of almost one third of its original price by the second quarter of 2011, sales saw an increase of more than 260 percent during the comparable 19-day time period in July. About 185,000 units were sold following a price cut on August 12. Nintendo sold more than 235,000 Nintendo 3DS systems in the United States in August, being the second best-selling dedicated game system for the month.
Approximately 8 months after its release, Nintendo of America announced that sales of the Nintendo 3DS had surpassed the original Nintendo DS in its first year, which was approximately 2.37 million units sold. During the 2011 holiday season, the Nintendo 3DS sold approximately 1.6 million units in Japan. By the end of 2011, Nintendo 3DS sales reached 4 million units sold in the United States. Overall, Nintendo sold 11.4 million Nintendo 3DS units worldwide, in 2011.
Subsequent sales.
On September 30, 2013, Nintendo president Satoru Iwata announced that the Nintendo 3DS had sold more than 5 million units in Japan during the year of 2013. This mark was only surpassed by its predecessor, the Nintendo DS.
Following the launch of the Nintendo 2DS, Nintendo sold 452,000 units of the Nintendo 3DS family in the United States, during the month of October, double the previous month's sales. As such, it achieved its sixth consecutive month as the best-selling video game console in the US. Total Nintendo 3DS first-party software sales for the month hit more than 2 million units, the highest since December 2011. North American retailer Target reported that the Nintendo 3DS XL was among its top-sellers during the Black Friday. On November 29, 2013, Nintendo of France deputy general manager Philippe Lavoué announced that Nintendo 3DS life-to-date hardware sales stand at 2.15 million units in France, in which 30 percent account for Nintendo 2DS sales. It was also announced that the 3DS possesses a market share of 50 percent of all video game systems sold, and that Nintendo 3DS software sales rose from 850,000 to 1,700,000 year-over-year in the region. According to the NPD Group, Nintendo sold around 770,000 units of the Nintendo 3DS family in November in North America, pushing the lifetime to nearly 10.5 million units in the region. On December 19, 2013, MCV reported that lifetime Nintendo 3DS family sales in the United Kingdom had hit 2 million units, making it the best-selling console of the year in the region.
By January 2014, Nintendo had sold 900,000 units in Spain. The fourth quarter of 2014 saw the release of the New Nintendo 3DS in Japan and Australia. Although having upgraded hardware, a few exclusive titles, and being capable of running SNES Virtual Console games, it is not treated as a new generation of console. It is considered to be part of the 3DS family, and is therefore included in these sales figures.
The first quarter of 2015 saw the release of the New Nintendo 3DS, part of the 3DS family and thus counted among these sales figures, in Europe and North America.
, Nintendo reports 75.71 million units have been shipped worldwide, of which 24.93 million were shipped to Japan, 25.67 million were shipped to the Americas, and 22.92 million were shipped to other territories including Europe.
Health concerns.
Nintendo has publicly stated that the 3D mode of the Nintendo 3DS is not intended for use by children ages six and younger, citing possible harm to their vision. Nintendo suggests that younger players use the device's 2D mode instead, although the American Optometric Association has assured parents that 3D gaming in moderation would not be harmful for children. Additionally, the 3DS may help in screening children before the age of 6 who have depth related vision problems according to Dr. Michael Duenas, associate director for health sciences and policy for the American Optometric Association, and Dr. Joe Ellis, the president of the optometrists' association. However, Dr. David Hunter, a pediatric ophthalmologist affiliated with the American Academy of Ophthalmology believes that it is largely speculative whether a child who has problems perceiving depth in real life would react to a 3DS in any way that parents would recognize as indicating any problems with depth perception. Duenas asserted that Nintendo's vague warning that "there is a possibility that 3-D images which send different images to the left and right eye could affect the development of vision in small children," was not specifically backed up by any scientific evidence, and that it was motivated by preventing possible liability rather than safeguarding against realistic harm.
The system's parental controls, safeguarded by a PIN, allow parents to disable autostereoscopic effects on systems intended for use by young children. Playing games in 3D has been suspected of causing headaches among some gamers.
Nintendo of America president Reggie Fils-Aimé partially cited these concerns as one of the influences of the creation of the Nintendo 2DS, an entry-level version of the Nintendo 3DS systems lacking 3D functionality.
Legal issues.
In 2011, 58-year-old former Sony employee Seijiro Tomita sued Nintendo for infringing a patent on the 3D screen that obviates the need for 3D glasses. On March 13, 2013, a United States federal jury ordered Nintendo to pay him US$30.2 million in damages. However, on August 7, 2013, that amount was reduced by 50% to US$15.1 million because the initial figure was, according to Judge Jed Rakoff, a federal judge, "intrinsically excessive" and "unsupported by the evidence presented at trial." He added that when the suit was originally filed in 2011 the 3DS was not profitable. Nintendo appealed unsuccessfully. On December 11, 2013, it was decided by Judge Rakoff that Nintendo pay 1.82% of the wholesale price of each unit sold to Tomita.
On July 17, 2015, Nintendo won a patent suit filed against eight of its handheld consoles, including the 3DS. The suit was originally filed by the Quintal Research Group after it secured a patent for a "computerized information retrieval system" in 2008. On March 17, 2018, the United States Appeals Court determined Nintendo had not violated Tomita's patent.


Veriexec

Veriexec is a file-signing scheme for the NetBSD operating system.
It introduces a special device node () through which a signature list can be loaded into the kernel. The list contains file paths, together with hashes and an expected file type ("DIRECT" for executables, "INDIRECT" for scripts and "FILE" for shared libraries and regular files). The kernel then verifies the contents of the signed files against their hashes just before they are opened in an codice_1 or codice_2 system call.
When Veriexec is enabled at level 0, the kernel will simply warn about signature mismatches. At level 1, it will prevent access to mismatched files. At level 2, it prevents signed files from being overwritten or deleted. At the highest, level 3, the kernel will not allow unsigned files to be accessed at all.