A code name , codename , call sign , or cryptonym is a code word or name used, sometimes clandestinely, to refer to another name, word, project, or person. Code names are often used for military purposes, or in espionage. They may also be used in industrial counter-espionage to protect secret projects and the like from business rivals, or to give names to projects whose marketing name has not yet been determined. Another reason for the use of names and phrases in the military is that they transmit with a lower level of cumulative errors over a walkie-talkie or radio link than actual names.
61-623: Android Lollipop ( codenamed Android L during development) is the fifth major version of the Android mobile operating system developed by Google and the 12th version of Android, spanning versions between 5.0 and 5.1.1. Unveiled on June 25, 2014, at the Google I/O 2014 conference, it became available through official over-the-air (OTA) updates on November 12, 2014, for select devices that run distributions of Android serviced by Google (such as Nexus and Google Play edition devices). Its source code
122-532: A P-code machine or virtual machine , that hide even the processor's instruction set . This is the approach followed by many interpreted languages such as AWK , and some languages like Java , which are meant to be compiled into some machine-independent intermediate representation code (such as bytecode ). This arrangement simplifies the task of language implementation and its adaptation to different machines, and improves efficiency of sophisticated language features such as reflective programming . It also allows
183-492: A marketing buzz for the project). Still others (such as Microsoft ) discuss code names publicly, and routinely use project code names on beta releases and such, but remove them from final product(s). In the case of Windows 95, the code name "CHICAGO" was left embedded in the INF File structure and remained required through Windows Me. At the other end of the spectrum, Apple includes the project code names for Mac OS X as part of
244-453: A "B", cargo aircraft with a "C". Training aircraft and reconnaissance aircraft were grouped under the word "miscellaneous", and received "M". The same convention applies to missiles, with air-launched ground attack missiles beginning with the letter "K" and surface-to-surface missiles (ranging from intercontinental ballistic missiles to antitank rockets) with the letter "S", air-to-air missiles "A", and surface-to-air missiles "G". Throughout
305-527: A British Naval intelligence officer, discloses in Beyond Top Secret Ultra that during World War II , Nazi Germany habitually used ad hoc code names as nicknames which often openly revealed or strongly hinted at their content or function. Some German code names: Conversely, Operation Wacht am Rhein (Watch on the Rhine ) was deliberately named to suggest the opposite of its purpose –
366-482: A PIN or pattern when being on a trusted location, or in proximity of a designated Bluetooth device or NFC tag . Lollipop was, additionally, to have device encryption enabled by default on all capable devices; however, due to performance issues, this change was held over to its successor, Android Marshmallow . A developer preview of Android L, build LPV79, was released for the Nexus 5 and 2013 Nexus 7 on June 26, 2014, in
427-411: A consistent experience across all platforms. Android 5.0 introduces a refreshed notification system. Individual notifications are now displayed on cards to adhere to the material design language, and batches of notifications can be grouped by the app that produced them. Notifications are now displayed on the lock screen as cards, and "heads up" notifications can also be displayed as large banners across
488-729: A defensive "watch" as opposed to a massive blitzkrieg operation, just as was Operation Weserübung ( Weser -exercise), which signified the plans to invade Norway and Denmark in April 1940. Britain and the United States developed the security policy of assigning code names intended to give no such clues to the uninitiated. For example, the British counter measures against the V-2 was called Operation Crossbow . The atomic bomb project centered in New Mexico
549-618: A hierarchy of runtime systems, with the CPU itself—or actually its logic at the microcode layer or below—acting as the lowest-level runtime system. Some compiled or interpreted languages provide an interface that allows application code to interact directly with the runtime system. An example is the Thread class in the Java language . The class allows code (that is animated by one thread) to do things such as start and stop other threads. Normally, core aspects of
610-438: A language's behavior such as task scheduling and resource management are not accessible in this fashion. Higher-level behaviors implemented by a runtime system may include tasks such as drawing text on the screen or making an Internet connection. It is often the case that operating systems provide these kinds of behaviors as well, and when available, the runtime system is implemented as an abstraction layer that translates
671-472: A left arrow, a house, and two squares, to a left triangle, a circle and a square. Lollipop also contains major new platform features for developers, with over 5,000 new APIs added for use by applications. For example, there is the possibility to save photos in a raw image format . Additionally, the Dalvik virtual machine was officially replaced by Android Runtime (ART), which is a new runtime environment that
SECTION 10
#1732883920579732-550: A missile was able to be photographed with a hand-held camera, instead of a reconnaissance aircraft, it was given a name like " Flanker " or " Scud " – always an English word, as international pilots worldwide are required to learn English. The Soviet manufacturer or designation – which may be mistakenly inferred by NATO – has nothing to do with it. Jet-powered aircraft received two-syllable names like Foxbat , while propeller aircraft were designated with short names like Bull . Fighter names began with an "F", bombers with
793-411: A number of issues including the management of application memory , how the program accesses variables , mechanisms for passing parameters between procedures , interfacing with the operating system (OS), among others. The compiler makes assumptions depending on the specific runtime system to generate correct code. Typically the runtime system will have some responsibility for setting up and managing
854-456: A person reading the code of the API that invokes a runtime system would not be able to understand the behavior of the API call just by knowing the language the call was written in. At some point, via some mechanism, the execution model stops being that of the language the call is written in and switches over to being the execution model implemented by the runtime system. For example, the trap instruction
915-424: A program can interact with via a runtime system. One unique application of a runtime environment is its use within an operating system that only allows it to run. In other words, from boot until power-down, the entire OS is dedicated to only the application(s) running within that runtime environment. Any other code that tries to run, or any failures in the application(s), will break the runtime environment. Breaking
976-485: A program is created, as well as in the computers where the program is intended to be run. The name comes from the compile time and runtime division from compiled languages , which similarly distinguishes the computer processes involved in the creation of a program (compilation) and its execution in the target machine (the runtime). Most programming languages have some form of runtime system that provides an environment in which programs run. This environment may address
1037-454: A program: compiling source code to an object file that contains all the functions versus compiling an entire program to an executable binary. The object file will only contain assembly code relevant to the included functions, while the executable binary will contain additional code that implements the runtime environment. The object file, on one hand, may be missing information from the runtime environment that will be resolved by linking . On
1098-496: Is also the gateway through which a running program interacts with the runtime environment . The runtime environment includes not only accessible state values, but also active entities with which the program can interact during execution. For example, environment variables are features of many operating systems, and are part of the runtime environment; a running program can access them via the runtime system. Likewise, hardware devices such as disks or DVD drives are active entities that
1159-410: Is one method of switching execution models. This difference is what distinguishes an API-invoked execution model, such as Pthreads, from a usual software library. Both Pthreads calls and software library calls are invoked via an API, but Pthreads behavior cannot be understood in terms of the language of the call. Rather, Pthreads calls bring into play an outside execution model, which is implemented by
1220-447: Is to never have to report to anyone that their son "was killed in an operation called 'Bunnyhug' or 'Ballyhoo'." Presently, British forces tend to use one-word names, presumably in keeping with their post-World War II policy of reserving single words for operations and two-word names for exercises. British operation code names are usually randomly generated by a computer and rarely reveal its components or any political implications unlike
1281-585: The Allies referring to nations, cities, geographical features, military units, military operations, diplomatic meetings, places, and individual persons were agreed upon, adapting pre-war naming procedures in use by the governments concerned. In the British case names were administered and controlled by the Inter Services Security Board (ISSB) staffed by the War Office . This procedure was coordinated with
SECTION 20
#17328839205791342-491: The Nexus 4 , 5, 7, and 10 ) and Google Play edition devices would receive updates to Lollipop "in the coming weeks"; one more developer preview build for Nexus devices and the new SDK revision for application developers would be released on October 17, 2014. Update schedules for third-party Android devices may vary by manufacturer. The full source code of Android 5.0 was pushed to AOSP on November 3, 2014, allowing developers and OEMs to begin producing their own builds of
1403-453: The stack and heap , and may include features such as garbage collection , threads or other dynamic features built into the language. Every programming language specifies an execution model , and many implement at least part of that model in a runtime system. One possible definition of runtime system behavior, among others, is "any behavior not directly attributable to the program itself". This definition includes putting parameters onto
1464-558: The Allies throughout the Pacific theater of war. This type of naming scheme differs from the other use of code names in that it does not have to be kept secret, but is a means of identification where the official nomenclature is unknown or uncertain. The policy of recognition reporting names was continued into the Cold War for Soviet, other Warsaw Pact , and Communist Chinese aircraft. Although this
1525-748: The American code name for the attack on the subtropical island of Okinawa in World War II was Operation Iceberg . The Soviet Union's project to base missiles in Cuba was named Operation Anadyr after their closest bomber base to the US (just across the Bering Strait from Nome, Alaska). The names of colors are generally avoided in American practice to avoid confusion with meteorological reporting practices. Britain, in contrast, made deliberately non-meaningful use of them, through
1586-565: The American names (e.g., the 2003 invasion of Iraq was called "Operation Telic" compared to Americans' "Operation Iraqi Freedom", obviously chosen for propaganda rather than secrecy). Americans prefer two-word names, whereas the Canadians and Australians use either. The French military currently prefer names drawn from nature (such as colors or the names of animals), for instance Opération Daguet ("brocket deer") or Opération Baliste ("Triggerfish"). The CIA uses alphabetical prefixes to designate
1647-788: The JIT process, improving system performance. Lollipop also aimed to improve battery consumption through a series of optimizations known as "Project Volta". Among its changes are a new battery saver mode, job-scheduling APIs which can restrict certain tasks to only occur over Wi-Fi , and batching of tasks to reduce the overall amount of time that internal radios are active on. The new developer tool called "Battery Historian" can be used for tracking battery consumption by apps while in use. The Android Extension Pack APIs also provide graphics functions such as new shaders , aiming to provide PC -level graphics for 3D games on Android devices. A number of system-level, enterprise-oriented features were also introduced under
1708-526: The Pthreads runtime system (this runtime system is often the OS kernel). As an extreme example, the physical CPU itself can be viewed as an implementation of the runtime system of a specific assembly language. In this view, the execution model is implemented by the physical CPU and memory systems. As an analogy, runtime systems for higher-level languages are themselves implemented using some other languages. This creates
1769-627: The Second World War, the British allocation practice favored one-word code names ( Jubilee , Frankton ). That of the Americans favored longer compound words, although the name Overlord was personally chosen by Winston Churchill himself. Many examples of both types can be cited, as can exceptions. Winston Churchill was particular about the quality of code names. He insisted that code words, especially for dangerous operations, would be not overly grand nor petty nor common. One emotional goal he mentions
1830-506: The United States code names are commonly set entirely in upper case. This is not done in other countries, though for the UK in British documents the code name is in upper case while operation is shortened to OP e.g., "Op. TELIC". This presents an opportunity for a bit of public-relations ( Operation Just Cause ), or for controversy over the naming choice (Operation Infinite Justice, renamed Operation Enduring Freedom ). Computers are now used to aid in
1891-427: The United States when it entered the war . Random lists of names were issued to users in alphabetical blocks of ten words and were selected as required. Words became available for re-use after six months and unused allocations could be reassigned at discretion and according to need. Judicious selection from the available allocation could result in clever meanings and result in an aptronym or backronym , although policy
Android Lollipop - Misplaced Pages Continue
1952-432: The banner "Android for Work". The Samsung Knox security framework was initially planned to be used as a foundation for "Android for Work", but instead Google opted to use its own technology for segregating personal and work-oriented data on a device, along with the accompanying APIs for managing the environment. With the "Smart Lock" feature, devices can also be configured so users do not have to perform device unlocking with
2013-417: The behavior is globally invariant: it holds over all executions. This systematic behavior implements the execution model of the language, as opposed to implementing semantics of the particular program (in which text is directly translated into code that computes results). This separation between the semantics of a particular program and the runtime environment is reflected by the different ways of compiling
2074-584: The code name " Frogfoot ". However, some names were appropriate, such as "Condor" for the Antonov An-124 , or, most famously, "Fulcrum" for the Mikoyan MiG-29 , which had a "pivotal" role in Soviet air-strategy. Code names were adopted by the following process. Aerial or space reconnaissance would note a new aircraft at a Warsaw Pact airbase. The intelligence units would then assign it a code name consisting of
2135-879: The form of flashable images. Source code for GPL -licensed components of the developer preview was released via Android Open Source Project (AOSP) in July 2014. A second developer preview build, LPV81C, was released on August 7, 2014, alongside the beta version of the Google Fit platform and SDK. As with the previous build, the second developer preview build is available only for the Nexus 5 and 2013 Nexus 7. On October 15, 2014, Google officially announced that Android L would be known as Android 5.0 "Lollipop". The company also unveiled launch devices for Android 5.0—including Motorola's Nexus 6 and HTC 's Nexus 9 —for release on November 3, 2014. Google stated that Nexus (including
2196-441: The implementation details of parallel runtime systems. A notable example of a parallel runtime system is Cilk , a popular parallel programming model. The proto-runtime toolkit was created to simplify the creation of parallel runtime systems. In addition to execution model behavior, a runtime system may also perform support services such as type checking , debugging , or code generation and optimization . The runtime system
2257-427: The invocation of the runtime system into an invocation of the operating system. This hides the complexity or variations in the services offered by different operating systems. This also implies that the OS kernel can itself be viewed as a runtime system, and that the set of OS calls that invoke OS behaviors may be viewed as interactions with a runtime system. In the limit, the runtime system may provide services such as
2318-441: The official abbreviation of the base, then a letter, for example, "Ram-A", signifying an aircraft sighted at Ramenskoye Airport . Missiles were given designations like "TT-5", for the fifth rocket seen at Tyura-Tam . When more information resulted in knowing a bit about what a missile was used for, it would be given a designation like "SS-6", for the sixth surface-to-surface missile design reported. Finally, when either an aircraft or
2379-451: The official name of the final product, a practice that was started in 2002 with Mac OS X v10.2 "Jaguar". Google and the AOSP also used this for their Android operating system until 2013, where the code name was different from the release name. Runtime environment In computer programming , a runtime system or runtime environment is a sub-system that exists in the computer where
2440-442: The operating system. On December 2, 2014, factory images for Nexus smartphones and tablets were updated to the 5.0.1 version, which introduces a few bug fixes, and a serious bug that affected Nexus 4 devices and prevented the audio from working during phone calls. A device-specific Lollipop 5.0.2 (LRX22G) version was released for the first-generation Nexus 7 on December 19, 2014. Android 5.1, an updated version of Lollipop,
2501-403: The other hand, the code in the object file still depends on assumptions in the runtime system; for example, a function may read parameters from a particular register or stack location, depending on the calling convention used by the runtime environment. Another example is the case of using an application programming interface (API) to interact with a runtime system. The calls to that API look
Android Lollipop - Misplaced Pages Continue
2562-503: The part of the agency supporting an operation. In many cases with the United States, the first word of the name has to do with the intent of the program. Programs with "have" as the first word, such as Have Blue for the stealth fighter development, are developmental programs, not meant to produce a production aircraft. Programs that start with Senior, such as Senior Trend for the F-117, are for aircraft in testing meant to enter production. In
2623-554: The platform, with the Android Runtime (ART) officially replacing Dalvik for improved application performance, and with changes intended to improve and optimize battery usage. As of December 2022, 1.21% devices run Lollipop 5.1 (API 22). However, this figure is misleading, as on tablets Android 5.1 is much more popular than it is on phones, being ranked 6th of all Android versions at 5.79% as of November 2023. Google Play Services support for Lollipop ended in July 2024. The release
2684-722: The presentation was dedicated to a new cross-platform design language referred to as " Material Design ". Expanding upon the " card " motifs first seen in Google Now , it is a design with increased use of grid-based layouts, responsive animations and transitions, padding, and depth effects such as lighting and shadows. Designer Matías Duarte explained that "unlike real paper, our digital material can expand and reform intelligently. Material has physical surfaces and edges. Seams and shadows provide meaning about what you can touch." The material design language would not only be used on Android, but across Google's suite of web software as well, providing
2745-437: The process stack, create space for local variables, and copy function call parameters onto the top of the stack. There are often no clear criteria for determining which language behaviors are part of the runtime system itself and which can be determined by any particular source program. For example, in C, the setup of the stack is part of the runtime system. It is not determined by the semantics of an individual program because
2806-497: The proto-runtime approach. Notable early examples of runtime systems are the interpreters for BASIC and Lisp . These environments also included a garbage collector . Forth is an early example of a language designed to be compiled into intermediate representation code; its runtime system was a virtual machine that interpreted that code. Another popular, if theoretical, example is Donald Knuth 's MIX computer. In C and later languages that supported dynamic memory allocation,
2867-433: The runtime environment in turn breaks the OS, stopping all processing and requiring a reboot. If the boot is from read-only memory, an extremely secure, simple, single-mission system is created. Examples of such directly bundled runtime systems include: The runtime system of the C language is a particular set of instructions inserted by the compiler into the executable image. Among other things, these instructions manage
2928-402: The same as calls to a regular software library , however at some point during the call the execution model changes. The runtime system implements an execution model different from that of the language the library is written in terms of. A person reading the code of a normal library would be able to understand the library's behavior by just knowing the language the library was written in. However,
2989-695: The same program to be executed on any machine without an explicit recompiling step, a feature that has become very important since the proliferation of the World Wide Web . To speed up execution, some runtime systems feature just-in-time compilation to machine code. A modern aspect of runtime systems is parallel execution behaviors, such as the behaviors exhibited by mutex constructs in Pthreads and parallel section constructs in OpenMP . A runtime system with such parallel execution behaviors may be modularized according to
3050-452: The selection. And further, there is a distinction between the secret names during former wars and the published names of recent ones. A project code name is a code name (usually a single word, short phrase or acronym) which is given to a project being developed by industry , academia , government, and other concerns. Project code names are typically used for several reasons: Different organizations have different policies regarding
3111-472: The stack before function calls, parallel execution of related behaviors, and disk I/O . By this definition, essentially every language has a runtime system, including compiled languages , interpreted languages , and embedded domain-specific languages . Even API -invoked standalone execution models, such as Pthreads ( POSIX threads ), have a runtime system that implements the execution model's behavior. Most scholarly papers on runtime systems focus on
SECTION 50
#17328839205793172-563: The system of rainbow codes . Although German and Italian aircraft were not given code names by their Allied opponents, in 1942, Captain Frank T. McCoy, an intelligence officer of the USAAF , invented a system for the identification of Japanese military aircraft. Initially using short, " hillbilly " boys' names such as " Pete ", " Jake ", and " Rufe ", the system was later extended to include girls' names and names of trees and birds, and became widely used by
3233-448: The top of the screen, along with their respective action buttons. A do-not-disturb feature is also added for notifications. The recent apps menu was redesigned to use a three-dimensional stack of cards to represent open apps. Individual apps can also display multiple cards in the recents menu, such as for a web browser's open tabs . Upon the release of this version, for most Android devices, the navigation buttons were completely changed from
3294-438: The use and publication of project code names. Some companies take great pains to never discuss or disclose project code names outside of the company (other than with outside entities who have a need to know, and typically are bound with a non-disclosure agreement ). Other companies never use them in official or formal communications, but widely disseminate project code names through informal channels (often in an attempt to create
3355-676: Was called the Manhattan Project , derived from the Manhattan Engineer District which managed the program. The code name for the American A-12 / SR-71 spy plane project, producing the fastest, highest-flying aircraft in the world, was Oxcart . The American group that planned that country's first ICBM was called the Teapot Committee . Although the word could stand for a menace to shipping (in this case, that of Japan),
3416-466: Was internally codenamed " Lemon Meringue Pie ". Android 5.0 was first unveiled under the codename "Android L" on June 25, 2014, during a keynote presentation at the Google I/O developers' conference. Alongside Lollipop, the presentation focused on a number of new Android-oriented platforms and technologies, including Android TV , in-car platform Android Auto , wearable computing platform Android Wear , and health tracking platform Google Fit . Part of
3477-467: Was introduced as a technology preview in KitKat. ART is a cross-platform runtime which supports the x86 , ARM , and MIPS architectures in both 32-bit and 64-bit environments. Unlike Dalvik, which uses just-in-time compilation (JIT), ART compiles apps upon installation , which are then run exclusively from the compiled version from then on. This technique removes the processing overhead associated with
3538-560: Was made available on November 3, 2014. The first phone with Android Lollipop was the Nexus 6 . One of the most prominent changes in the Lollipop release is a redesigned user interface built around a design language known as Material Design , which was made to retain a paper-like feel to the interface. Other changes include improvements to the notifications, which can be accessed from the lockscreen and displayed within applications as top-of-the-screen banners. Google also made internal changes to
3599-643: Was started by the Air Standards Co-ordinating Committee (ASCC) formed by the United States, United Kingdom, Canada, Australia, and New Zealand, it was extended throughout NATO as the NATO reporting name for aircraft, rockets and missiles. These names were considered by the Soviets as being like a nickname given to one's unit by the opponents in a battle. The Soviets did not like the Sukhoi Su-25 getting
3660-444: Was to select words that had no obviously deducible connection with what they were supposed to be concealing. Those for the major conference meetings had a partial naming sequence referring to devices or instruments which had a number as part of their meaning, e.g., the third meeting was "TRIDENT". Joseph Stalin , whose last name means "man of steel", was given the name "GLYPTIC", meaning "an image carved out of stone". Ewen Montagu ,
3721-633: Was unveiled in February 2015 as part of the Indonesian launch of Android One , and is preloaded on Android One devices sold in Indonesia and the Philippines. Google officially announced 5.1 by releasing updates for existing devices on March 9, 2015. In 2015, Amazon.com forked Lollipop to produce Fire OS 5 "Bellini" for Amazon's Fire HD -series devices. Code name During World War I , names common to
SECTION 60
#1732883920579#578421