text:
Columbian exchange
From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
For the book, see The Columbian Exchange.
New World native plants. Clockwise, from top left: 1. Maize (Zea mays) 2. Tomato (Solanum lycopersicum) 3. Potato (Solanum tuberosum) 4. Vanilla (Vanilla) 5. Pará rubber tree (Hevea brasiliensis) 6. Cacao (Theobroma cacao) 7. Tobacco (Nicotiana rustica)
Old World native plants. Clockwise, from top left: 1. Citrus (Rutaceae); 2. Apple (Malus domestica); 3. Banana (Musa); 4. Mango (Mangifera); 5. Onion (Allium); 6. Coffee (Coffea); 7. Wheat (Triticum spp.); 8. Rice (Oryza sativa)
The Columbian exchange, also known as the Columbian interchange, named for Christopher Columbus, was the widespread transfer of plants, animals, culture, human populations, technology, and ideas between the Americas, West Africa, and the Old World in the 15th and 16th centuries. It also relates to European colonization and trade following Christopher Columbus's 1492 voyage.[1] Invasive species, including communicable diseases, were a byproduct of the Exchange. The changes in agriculture significantly altered and changed global populations. The most significant immediate impact of the Columbian exchange was the cultural exchanges and the transfer of people (both free and enslaved) between continents.
The new contact between the global population circulated a wide variety of crops and livestock, which supported increases in population in both hemispheres, although diseases initially caused precipitous declines in the numbers of indigenous peoples of the Americas. Traders returned to Europe with maize, potatoes, and tomatoes, which became very important crops in Europe by the 18th century.
The term was first used in 1972 by American historian Alfred W. Crosby in his environmental history book The Columbian Exchange.[2] It was rapidly adopted by other historians and journalists and has become widely known.
Contents
1 Origin of the term
2 Influence
2.1 Crops
2.1.1 Tomatoes
2.2 Livestock
2.3 Disease
2.4 Cultural exchanges
2.4.1 Trans Atlantic Slave Trade
3 Organism examples
4 Later history
5 See also
6 References
7 External links
Origin of the term[edit]
In 1972 Alfred W. Crosby, an American historian at the University of Texas at Austin, published The Columbian Exchange.[2] He published subsequent volumes within the same decade. His primary focus was mapping the biological and cultural transfers that occurred between the Old and New World. He studied the effects of Columbus' voyages between the two. Specifically, the global diffusion of crops, seeds, and plants from the New World back into the Old. His research made a lasting contribution to the way scholars understand the variety of contemporary ecosystems that arose due to these transfers. [3]
The term has become popular among historians and journalists, such as Charles C. Mann, whose book 1493 expands and updates Crosby's original research.[4]
Influence[edit]
Inca-era terraces on Taquile are used to grow traditional Andean staples such as quinoa and potatoes, alongside wheat, a European introduction.
Crops[edit]
Portuguese trading animals in Japan; detail of Nanban panel (1570–1616)
Several plants native to the Americas have spread around the world, including potato, maize, tomato, and tobacco.[5] Before 1500, potatoes were not grown outside of South America. By the 1840s, Ireland was so dependent on the potato that the proximate cause of the Great Famine was a potato disease.[6] Potatoes eventually became an important staple of the diet in much of Europe, contributing to about 25% of the population growth in Afro-Eurasia between 1700 and 1900.[7] Many European rulers, including Frederick the Great of Prussia and Catherine the Great of Russia, encouraged the cultivation of the potato.[8]
Maize and cassava, introduced by the Portuguese from South America in the 16th century,[9] have replaced sorghum and millet as Africa's most important food crops.[10] 16th-century Spanish colonizers introduced new staple crops to Asia from the Americas, including maize and sweet potatoes, and thereby contributed to population growth in Asia.[11] On a larger scale, the coming of potatoes and maize to the old world "resulted in caloric and nutritional improvements over previously existing staples" throughout the Eurasian landmass[12] as they created more varied and abundant food production.[13]
Tomatoes, which came to Europe from the New World via Spain, were initially prized in Italy mainly for their ornamental value (see below). From the 19th century tomato sauces became typical of Neapolitan cuisine and, ultimately, Italian cuisine in general.[14] Coffee (introduced in the Americas circa 1720) from Africa and the Middle East and sugarcane (introduced from South Asia) from the Spanish West Indies became the main export commodity crops of extensive Latin American plantations. Introduced to India by the Portuguese, chili and potatoes from South America have become an integral part of Indian cuisine.[15]
Rice was another crop that became widely cultivated during the Columbian exchange. As the demand in the New World grew, so did the knowledge on how to cultivate it. The two primary species used were oryza glaberrima and oryza sativa; originating from West Africa and Southeast Asia respectively. Slave holders in the New World relied upon the skills of enslaved Africans to further cultivate both species. [16]. North and South Carolina were key places where rice was grown during the slave trade. Enslaved Africans brought their knowledge of water control, milling, winnowing, and other general agrarian practices to the fields. This widespread knowledge amongst enslaved Africans eventually led to rice becoming a staple dietary item in the New World. [17]
Citrus fruits, grapes, and oats were also brought to the Americas from Europe, specifically from the Mediterranean. At first, these crops struggled to adapt to the climate in the new world. However, by the late 19th century they began to grow more consistently. [18]
Tomatoes[edit]
It took three centuries after their introduction in Europe for tomatoes to become widely accepted. Of all the New World plants introduced to Italy, only the potato took as long as the tomato to gain acceptance. In large part this was due to 16th-century physicians believing that this native Mexican fruit was poisonous and the generator of "melancholic humours". In 1544, Pietro Andrea Mattioli, a Tuscan physician and botanist, suggested that tomatoes might be edible, but no record exists of anyone consuming them at this time. On October 31, 1548, the tomato was given its first name anywhere in Europe when a house steward of Cosimo I de' Medici, Duke of Florence, wrote to the De' Medici's private secretary that the basket of pomi d'oro "had arrived safely". At this time, the label pomi d'oro was also used to refer to figs, melons, and citrus fruits in treatises by scientists.[19]
In the early years, tomatoes were mainly grown as ornamentals in Italy. For example, the Florentine aristocrat Giovan Vettorio Soderini wrote how they "were to be sought only for their beauty" and were grown only in gardens or flower beds. Tomatoes were grown in elite town and country gardens in the fifty years or so following their arrival in Europe and were only occasionally depicted in works of art. However, in 1592 the head gardener at the botanical garden of Aranjuez near Madrid, under the patronage of Philip II of Spain, wrote, "it is said [tomatoes] are good for sauces". Besides this account, tomatoes remained exotic plants grown for ornamental purposes, but rarely for culinary use. The combination of pasta with tomato sauce was developed only in the late nineteenth century. Today around 32,000 acres (12,950 ha) of tomatoes are cultivated in Italy, although there are still areas where relatively few tomatoes are grown and consumed.[19]
Livestock[edit]
Further information: Plains Indians § The horse
Initially, at least, the Columbian exchange of animals largely went through one route, from Europe to the New World, as the Eurasian regions had domesticated many more animals. Horses, donkeys, mules, pigs, cattle, sheep, goats, chickens, large dogs, cats and bees were rapidly adopted by native peoples for transport, food, and other uses.[20] One of the first European exports to the Americas, the horse, changed the lives of many Native American tribes. The mountain tribes shifted to a nomadic lifestyle, as opposed to agriculture, based on hunting bison on horseback and moved down to the Great Plains. The existing Plains tribes expanded their territories with horses, and the animals were considered so valuable that horse herds became a measure of wealth.[21]
Still, the effects of the introduction of European livestock on the environments and peoples of the New World were not always positive. In the Caribbean, the proliferation of European animals had large effects on native fauna and undergrowth and damaged conucos, plots managed by indigenous peoples for subsistence.[22]
Disease[edit]
Further information: Influx of disease in the Caribbean, Virgin soil epidemic, and Cocoliztli epidemics
European exploration of tropical areas was aided by the New World discovery of quinine, the first effective treatment for malaria. Europeans suffered from this disease, but some indigenous populations had developed at least partial resistance to it. In Africa, resistance to malaria has been associated with other genetic changes among sub-Saharan Africans and their descendants, which can cause sickle-cell disease.[1]:164 In fact, the resistance of sub-Saharan Africans to malaria in the Southern United States contributed to the development of slavery in those regions.[23]
Before regular communication had been established between the two hemispheres, the varieties of domesticated animals and infectious diseases that jumped to humans, such as smallpox, were substantially more numerous in the Old World than in the New due to more extensive long-distance trade networks. Many had migrated west across Eurasia with animals or people, or were brought by traders from Asia, so diseases of two continents were suffered by all occupants. While Europeans and Asians were affected by the Eurasian diseases, their endemic status in those continents over centuries resulted in many people gaining acquired immunity.
By contrast, "Old World" diseases had a devastating effect when introduced to Native American populations via European carriers, as the people in the Americas had no natural immunity to the new diseases. Measles caused many deaths. The smallpox epidemics are believed to have caused the largest death tolls among Native Americans, surpassing any wars[24] and far exceeding the comparative loss of life in Europe due to the Black Death.[1]:164 It is estimated that upwards of 80–95 percent of the Native American population died in these epidemics within the first 100–150 years following 1492. Many regions in the Americas lost 100%.[1]:165 The beginning of demographic collapse on the North American continent has typically been attributed to the spread of a well-documented smallpox epidemic from Hispaniola in December 1518.[22] At that point in time, approximately only 10,000 indigenous people were still alive in Hispaniola.[22]
Similarly, yellow fever is thought to have been brought to the Americas from Africa via the Atlantic slave trade. Because it was endemic in Africa, many people there had acquired immunity. Europeans suffered higher rates of death than did African-descended persons when exposed to yellow fever in Africa and the Americas, where numerous epidemics swept the colonies beginning in the 17th century and continuing into the late 19th century. The disease caused widespread fatalities in the Caribbean during the heyday of slave-based sugar plantation.[22] The replacement of native forests by sugar plantations and factories facilitated its spread in the tropical area by reducing the number of potential natural mosquito predators.[22] The means of yellow fever transmission was unknown until 1881, when Carlos Finlay suggested that the disease was transmitted through mosquitoes, now known to be female mosquitoes of the species Aedes aegypti.[22]
The history of syphilis has been well-studied, but the exact origin of the disease is unknown and remains a subject of debate.[25] There are two primary hypotheses: one proposes that syphilis was carried to Europe from the Americas by the crew of Christopher Columbus in the early 1490s, while the other proposes that syphilis previously existed in Europe but went unrecognized.[26] These are referred to as the "Columbian" and "pre-Columbian" hypotheses.[26] The first written descriptions of the disease in the Old World came in 1493.[27] The first large outbreak of syphilis in Europe occurred in 1494/1495 in Naples, Italy, among the army of Charles VIII, during their invasion of Naples.[26][28][29][30]
Cultural exchanges[edit]
One of the influences related to the migration of people were cultural exchanges. For example, in the article "The Myth of Early Globalization: The Atlantic Economy, 1500–1800" Pieter Emmer makes the point that "from 1500 onward, a 'clash of cultures' had begun in the Atlantic".[31] This clash of culture transferred European values to indigenous cultures. For example, the emergence of private property in regions where there were little to no rights to lands, the concepts of monogamy and the nuclear family, the role of women and children in the family system, and the "superiority of free labor".[32] An example of this type of cultural exchange occurred during the 1500s in North America. When these early European colonizers first entered North America, they encountered fence-less lands which indicated to them that this land was unimproved. For these Europeans, they were seeking economic opportunities, therefore, land and resources were important for the success of the mission. When these colonizers entered North America they encountered a fully established culture of people called the Powhatan. The Powhatan farmers in Virginia scattered their farm plots within larger cleared areas. These larger cleared areas were a communal place for naturally growing and useful plants. As the Europeans viewed fences as "hallmarks of civilization" they set about transforming "the land into something more suitable for themselves".[33] In implementing their practices, the Europeans enslaved, murdered, and exploited indigenous populations. Furthermore, in cases of enslaved peoples (and in particular, enslaved Africans) the Europeans simultaneously implemented their value system while at the same time justifying enslaving people through a philosophy which reduced the enslaved people to property. Thus, the slave traders and some of the plantation owners used the concept of family to exploit and control the enslaved people. In other subtle ways, which had a large impact the cultural exchanges involved sharing practices and traditions. An example of this can be found in the tobacco industry.
Tobacco was one of the luxury goods which was spread as a direct result of the Columbian exchange. As is discussed in regard to the trans-Atlantic slave trade, the tobacco trade increased demand for free labor and spread tobacco worldwide. In discussing the widespread uses of tobacco, the Spanish physician Nicolas Monardes (1493–1588) noted that "The black people that have gone from these parts to the Indies, have taken up the same manner and use of tobacco that the Indians have".[34] As the European colonizers and enslaved Africans traveled the globe and came into contact with indigenous peoples, they took with them the cultural practices related to tobacco, and spread them to additional regions. Therefore, demand for tobacco grew in the course of the cultural exchanges and increased contacts among peoples.

Trans Atlantic Slave Trade[edit]
The Trans Atlantic Slave Trade was the transfer of Africans from primarily West Africa to parts of the Americas between the 16th and 19th century.[35] About 10 million slaves arrived in the Americas from Africa. The journey that enslaved Africans took from parts of Africa to America is commonly known as the middle passage. [36]
Enslaved Africans had a significant influence on the emerging African American culture in the New World. The presence of Enslaved Africans not only represented skilled labor but it also gave way to a new population which represented a hybrid of the two cultures. [37] The Birth of African American Culture: An Anthropological Perspective is a book written by Sidney Mintz and Richard Price further detailing the cultural impact of Enslaved Africans in America. Mintz and Price's book helped to publicize how integral the socialization aspects of plantation life were to the structures of black culture.
The treatment of Enslaved Africans during the Trans Atlantic Slave Trade became one of the most controversial topics in the history of the New World. Since its abolishment in 1865, it has remained a key subject in politics, pop culture and media.
Organism examples[edit]
See also: New World crops, Agriculture in Mesoamerica, Muisca agriculture, and List of food origins
Post-Columbian transfers of native organisms with close ties to humans
Type of organism
Old World to New World
New World to Old World
Domesticated animals
cat (domestic – wild species already present)
cattle
chicken
donkey
goat (the goats of the Old World, genus Capra, are different from the mountain goat of the New World, genus Oreamnos)
guineafowl
honey bee (European honey bee – other wild and domesticated species already present)
horse
rabbit (domestic)
pig
sheep (domestic)
water buffalo
alpaca
guinea pig
llama
Muscovy duck
turkey
Cultivated plants
adzuki bean
almond
apple
apricot
asparagus
baobab
banana (including cooking banana)
barley
basil
beetroot
black-eyed pea
Brassica oleracea-derived vegetables
broccoli
Brussels sprout
cabbage
cauliflower
collard greens
kale
kohlrabi
rapeseed
broad bean
cantaloupe
carrot
celery
chestnut
chickpea
citrus (orange, lemon, etc.)
coffee
common fig
coriander (also known as cilantro)
cucumber
cumin
eggplant (aubergine)
Elaeis (oil palm)
fennel
finger millet
foxtail millet
flax
garlic
ginger
hazelnut
hemp (including cannabis)
kola nut
leek
lentil
lettuce
mango
mangosteen
millet
Momordica charantia (bitter melon)
mung bean
oat
okra
olive
onion
opium
oregano
parsnip
pea
peach
pear
pearl millet
pistachio
pomegranate
proso millet
radish
raspberry
rice
rye
sesame
sorghum
soybean
spinach
sugarcane and sugar beet
tamarind
taro
turmeric
turnip
watermelon
walnut (commercial varieties)
wheat
yam (sometimes misnamed "sweet potato")
acai
Acca sellowiana (feijoa, pineapple guava, Brazilian guava, guavasteen)
Annona reticulata (custard apple)
agave
allspice
amaranth (as grain)
annatto
arracacha
arrowroot or Maranta arundinacea
avocado
black walnut
blueberry (commercial varieties)
Brazil nut
Calathea allouia (leren)
Canna indica (achira)
capsicum (bell pepper and chili pepper)
cashew
cassava (manioc, tapioca, yuca)
chayote
cherimoya
chia
coca leaf
cocoa bean
cotton (long-staple species)
cranberry (large cranberry, or bearberry species)
cucurbita (many squashes and gourds)
butternut squash
pumpkin
zucchini (courgette)
Eryngium foetidum (culantro, Mexican coriander)
guarana
guava (common)
Helianthus (sunflower)
Jerusalem artichoke
jicama
maize (corn)
Manilkara zapota (sapodilla)
mashua
Opuntia ficus-indica (prickly pear)
Oxalis tuberosa (New Zealand yam)
papaya
passionfruit
peanut
pecan
Phaseolus vulgaris (beans: pinto, lima, kidney, etc.)
physalis (cape gooseberry)
pineapple
pitaya (dragon fruit)
potato
quinoa
rubber
soursop
stevia
strawberry (commercial varieties)
sugar-apple
sugar maple
sweet potato
tamarillo
tobacco
tomato
tomatillo
ulluco
vanilla
wild rice
yerba mate
yucca
Cultivated fungi
Agaricus bisporus (button mushrooms, chestnut mushrooms, portobello mushrooms)
cloud ear fungus
enoki mushroom
oyster mushroom (some varieties)
Rhizopus oligosporus (tempeh)
shiitake mushroom
snow ear fungus
truffle
huitlacoche (corn smut)
oyster mushroom (some varieties)
Infectious diseases
bubonic plague
chickenpox
cholera
diphtheria
influenza
leprosy
malaria
measles
pertussis
scarlet fever
smallpox
typhoid fever
typhus
yaws
yellow fever
Chagas disease
Nonvenereal endemic syphilis
pinta
syphilis (disputed)
Later history[edit]
Further information: Introduced species, Invasive species, and Lists of invasive species
Plants that arrived by land, sea, or air in the times before 1492 are called archaeophytes, and plants introduced to Europe after those times are called neophytes. Invasive species of plants and pathogens also were introduced by chance, including such weeds as tumbleweeds (Salsola spp.) and wild oats (Avena fatua). Some plants introduced intentionally, such as the kudzu vine introduced in 1894 from Japan to the United States to help control soil erosion, have since been found to be invasive pests in the new environment.
Fungi have also been transported, such as the one responsible for Dutch elm disease, killing American elms in North American forests and cities, where many had been planted as street trees. Some of the invasive species have become serious ecosystem and economic problems after establishing in the New World environments.[38][39] A beneficial, although probably unintentional, introduction is Saccharomyces eubayanus, the yeast responsible for lager beer now thought to have originated in Patagonia.[40]
In addition to these, many animals were introduced to new habitats on the other side of the world either accidentally or incidentally. These include such animals as brown rats, earthworms (apparently absent from parts of the pre-Columbian New World), and zebra mussels, which arrived on ships.[41] Escaped and feral populations of non-indigenous animals have thrived in both the Old and New Worlds, often negatively impacting or displacing native species. In the New World, populations of feral European cats, pigs, horses and cattle are common, and the Burmese python and green iguana are considered problematic in Florida. In the Old World, Eastern gray squirrel have been particularly successful in colonising Great Britain and populations of raccoons can now be found in some regions of Germany, the Caucasus and Japan. Fur farm escapees such as coypu and American mink have extensive populations.
See also[edit]
Agriculture and agronomy portal
Indigenous peoples of the Americas portal
New Spain portal
Alfred W. Crosby
Domestication
Great American Interchange
Glossary of invasion biology terms
Guns, Germs, and Steel
Indian Givers: How the Indians of the Americas Transformed the World
List of food plants native to the Americas
Population history of indigenous peoples of the Americas
Pre-Columbian trans-oceanic contact theories
Transformation of culture
1493: Uncovering the New World Columbus Created
1491: New Revelations of the Americas Before Columbus
References[edit]
^ Jump up to: a b c d Nunn, Nathan; Qian, Nancy (2010). "The Columbian Exchange: A History of Disease, Food, and Ideas". Journal of Economic Perspectives. 24 (2): 163–188. CiteSeerX 10.1.1.232.9242. doi:10.1257/jep.24.2.163. JSTOR 25703506.
^ Jump up to: a b Gambino, Megan (October 4, 2011). "Alfred W. Crosby on the Columbian Exchange". Smithsonian Magazine. Retrieved October 19, 2018.
Jump up ^ Carney, Judith (2001). Black Rice: The African Origins of Rice Cultivation in the Americas. United States of America: Harvard University Press. pp. 4–5.
Jump up ^ de Vorsey, Louis (2001). "The Tragedy of the Columbian Exchange". In McIlwraith, Thomas F; Muller, Edward K. North America: The Historical Geography of a Changing Continent. Lanham, MD: Rowman & Littlefield. p. 27. Thanks to…Crosby's work, the term 'Columbian exchange' is now widely used…
Jump up ^ Ley, Willy (December 1965). "The Healthfull Aromatick Herbe". For Your Information. Galaxy Science Fiction. pp. 88–98.
Jump up ^ "The Impact of the Potato", History Magazine
Jump up ^ Nathan, Nunn; Nancy, Qian (2011). "The Potato's Contribution to Population and Urbanization: Evidence from a Historical Experiment". Quarterly Journal of Economics. 2: 593–650.
Jump up ^ Crosby, Alfred (2003). The Columbian Exchange: Biological and Cultural Consequences of 1492. Westport, Connecticut: Praeger. p. 184.
Jump up ^ "Super-Sized Cassava Plants May Help Fight Hunger In Africa" Archived December 8, 2013, at the Wayback Machine., The Ohio State University
Jump up ^ "Maize Streak Virus-Resistant Transgenic Maize: an African solution to an African Problem", Scitizen, August 7, 2007
Jump up ^ "China's Population: Readings and Maps", Columbia University, East Asian Curriculum Project
Jump up ^ Nathan, Nunn; Nancy, Qian (2010). "The Columbian Exchange: A History of Disease, Food and Ideas" (PDF). Journal of Economic Perspectives. 2: 163–88, 167.
Jump up ^ Crosby, Alfred W. (2003). The Columbian Exchange: Biological and Cultural Consequences of 1492. Praeger. p. 177.
Jump up ^ Riley, Gillian, ed. (2007). "Tomato". The Oxford Companion to Italian Food. Oxford University Press. pp. 529–530. ISBN 978-0-19-860617-8.
Jump up ^ Collingham, Lizzie (2006). "Vindaloo: the Portuguese and the chilli pepper". Curry: A Tale of Cooks and Conquerors. Oxford: Oxford University Press. pp. 47–73. ISBN 978-0-19-988381-3.
Jump up ^ Carney, Judith A. (2001). "African Rice in the Columbian Exchange". The Journal of African History. 42 (3): 377–396. JSTOR 3647168.
Jump up ^ Carney, Judith (2001). Black Rice: The African Origins of Rice Cultivation in the Americas. United States of America: Harvard University Press. pp. 4–5.
Jump up ^ McNeill, J.R. "The Columbian Exchange". NCpedia. State Library of North Carolina. Retrieved 23 October 2018.
^ Jump up to: a b A History of the Tomato in Italy Pomodoro!, David Gentilcore (New York, NY: Columbia University Press, 2010).
Jump up ^ Michael Francis, John, ed. (2006). "Columbian Exchange—Livestock". Iberia and the Americas: Culture, Politics, and History: a Multidisciplinary Encyclopedia. ABC-CLIO. pp. 303–308. ISBN 978-1-85109-421-9.
Jump up ^ This transfer reintroduced horses to the Americas, as the species had died out there prior to the development of the modern horse in Eurasia.
^ Jump up to: a b c d e f Palmié, Stephan (2011). The Caribbean: A History of the Region and Its Peoples. Chicago: University of Chicago Press. ISBN 9780226645087.
Jump up ^ Esposito, Elena (Summer 2015). "Side Effects of Immunities: the African Slave Trade" (PDF). European University Institute.
Jump up ^ "The Story Of... Smallpox – and other Deadly Eurasian Germs", Guns, Germs and Steel, PBS Archived 17 January 2010 at WebCite
Jump up ^ Kent ME, Romanelli F (February 2008). "Reexamining syphilis: an update on epidemiology, clinical manifestations, and management". Ann Pharmacother. 42 (2): 226–36. doi:10.1345/aph.1K086. PMID 18212261.
^ Jump up to: a b c Farhi, D; Dupin, N (Sep–Oct 2010). "Origins of syphilis and management in the immunocompetent patient: facts and controversies". Clinics in Dermatology. 28 (5): 533–8. doi:10.1016/j.clindermatol.2010.03.011. PMID 20797514.
Jump up ^ Smith, Tara C. (December 23, 2015). "Thanks Columbus! The true story of how syphilis spread to Europe". Quartz. Retrieved 1 September 2016. The first cases of the disease in the Old World were described in 1493.
Jump up ^ Franzen, C (December 2008). "Syphilis in composers and musicians—Mozart, Beethoven, Paganini, Schubert, Schumann, Smetana". European Journal of Clinical Microbiology & Infectious Diseases. 27 (12): 1151–7. doi:10.1007/s10096-008-0571-x. PMID 18592279.
Jump up ^ A New Skeleton and an Old Debate About Syphilis; The Atlantic; Cari Romm; February 18, 2016
Jump up ^ Choi, Charles Q. (December 27, 2011). "Case Closed? Columbus Introduced Syphilis to Europe". Scientific American. Retrieved 1 September 2016.
Jump up ^ Emmer, Pieter. "The Myth of Early Globalization: The Atlantic Economy, 1500–1800." European Review 11, no. 1. Feb. 2003. p. 45–46
Jump up ^ Emmer, Pieter. "The Myth of Early Globalization: The Atlantic Economy, 1500–1800." European Review 11, no. 1. Feb. 2003. p. 46
Jump up ^ Mann, Charles. 1493: Uncovering the New World Columbus Created. New York, New York: Vintage Books, 2011. loc. 1094 and 1050
Jump up ^ Monardes, Nicholas. "Of the Tabaco and of his Greate Vertues." Frampton, John trans, Wolf, Michael, ed. Taboacco.org. Accessed June 1, 2017 http://archive.tobacco.org/History/monardes.html
Jump up ^ Carney, Judith (2001). Black Rice. Harvard University Press. pp. 2–8.
Jump up ^ Gates, Louis. "100 Amazing Facts About the Negro". PBS. WNET. Retrieved 25 October 2018.
Jump up ^ Carney, Judith (2001). Black Rice. Harvard University Press. pp. 2–8.
Jump up ^ Simberloff, Daniel (2000). "Introduced Species: The Threat to Biodiversity & What Can Be Done". American Institute of Biological Sciences: Bringing Biology to Informed Decision Making.
Jump up ^ Fernández Pérez, Joaquin and Ignacio González Tascón (eds.) (1991). La agricultura viajera. Barcelona, Spain: Lunwerg Editores, S. A.
Jump up ^ Elusive Lager Yeast Found in Patagonia, Discovery News, August 23, 2011
Jump up ^ Hoddle, M. S. "Quagga & Zebra Mussels". Center for Invasive Species Research, University of California, Riverside . Retrieved June 29, 2010.
External links[edit]
The Columbian Exchange: Plants, Animals, and Disease between the Old and New Worlds by Alfred W. Crosby (2009)
Worlds Together, Worlds Apart by Jeremy Adelman, Stephen Aron, Stephen Kotkin, et al.
Foods that Changed the World by Steven R. King from the Wayback Machine
The Columbian Exchange video, study guide, analysis, and teaching guide
show
v
t
e
Indigenous peoples of the Americas
Pre-history
Paleo-Indians
Pre-Columbian era
Classification
Archaeology
Genetics
Mythology/Religion
Mythologies of the indigenous peoples of the Americas
List of deities
Native American religion
Mesoamerican mythology
Mesoamerican religion
European
colonization
European colonization
Population history
Columbian exchange
Modern groups
by country
North America
Canada
Costa Rica
Dominica
El Salvador
Greenland
Jamaica
Mexico
Panama
Trinidad and Tobago
United States
South America
Argentina
Bolivia
Brazil
Chile
Colombia
Ecuador
Guyana
Paraguay
Peru
Suriname
Uruguay
Venezuela
Related topics
Indigenous American studies
Indigenous languages
Indigenous movements
Indigenous art
Artists
Writers
Category
Portal
show
v
t
e
Pre-Columbian North America
Periods
Lithic
Archaic
Formative
Classic
Post-Classic
Archaeological
cultures
Adena
Alachua
Ancient Beringian
Ancient Pueblo (Anasazi)
Baytown
Belle Glade
Buttermilk Creek Complex
Caborn-Welborn
Calf Creek
Caloosahatchee
Clovis
Coles Creek
Comondú
Deptford
Folsom
Fort Ancient
Fort Walton
Fremont
Glacial Kame
Glades
Hohokam
Hopewell
List of Hopewell sites
La Jolla
Las Palmas
Leon-Jefferson
Mississippian
List of Mississippian sites
Mogollon
Monongahela
Old Cordilleran
Oneota
Paleo-Arctic
Paleo-Indians
Patayan
Plano
Plaquemine
Poverty Point
Red Ocher
Santa Rosa-Swift Creek
St. Johns
Steed-Kisker
Tchefuncte
Tocobaga
Troyville
Archaeological
sites
Angel Mounds
Anzick Clovis burial
Bandelier National Monument
Blue Spring Shelter
The Bluff Point Stoneworks
Brewster
Cahokia
Candelaria Cave
Casa Grande
Chaco Canyon
Coso Rock Art District
Crystal River Archaeological State Park
Cuarenta Casas
Cueva de la Olla
Eaker
El Fin del Mundo
El Vallecito
Effigy Mounds National Monument
Etowah Indian Mounds
Eva
Folsom Site
Fort Ancient
Fort Center
Fort Juelson
Four Mounds
Gila Cliff Dwellings National Monument
Glenwood
Grimes Point
Holly Bluff Site
Hopewell Culture National Historical Park
Huápoca
Kimball Village
Kincaid Mounds
Kolomoki Mounds
Lake Jackson Mounds
L'Anse aux Meadows
Marksville
Marmes Rockshelter
Meadowcroft Rockshelter
Mesa Verde
Moaning Cavern
Moorehead Circle
Morrison Mounds
Moundville
Mummy Cave
Nodena Site
Ocmulgee National Monument
Old Stone Fort
Orwell Site
Paquime
Parkin Park
Pinson Mounds
Portsmouth Earthworks
Poverty Point
Pueblo Bonito
Recapture Canyon
Rock Eagle
Rock Hawk
Russell Cave National Monument
Salmon Ruins
Serpent Mound
Sierra de San Francisco
Spiro Mounds
SunWatch
Taos Pueblo
Toltec Mounds
Town Creek Indian Mound
Turkey River Mounds
Upward Sun River site
Velda Mound
West Oak Forest Earthlodge
Winterville
Wupatki National Monument
Human
remains
Anzick-1
Arlington Springs Man
Buhl Woman
Kennewick Man
La Brea Woman
Leanderthal Lady
Minnesota Woman
Spirit Cave mummy
Miscellaneous
Aridoamerica
Black drink
Ceremonial pipe
Chunkey
Clovis point
Container Revolution
Eastern Agricultural Complex
Eden point
Effigy mound
Falcon dancer
Folsom point
Green Corn Ceremony
Horned Serpent
Kiva
Medicine wheel
Metallurgy
Mi'kmaq hieroglyphic writing
Mound Builders
N.A.G.P.R.A.
Norse colonization of North America
Oasisamerica
Piasa
Southeastern Ceremonial Complex
Stickball
Three Sisters agriculture
Thunderbird
Underwater panther
Water glyphs
Related
Genetic history
Portal of Indigenous peoples of North America
Pre-Columbian era
show
v
t
e
Globalization
Journals
Outline
Studies
Aspects
Alter-globalization
Anti-globalization
Counter-hegemonic globalization
Cultural globalization
Deglobalization
Democratic globalization
Economic globalization
Environmental globalization
Financial globalization
Global citizenship
education
Global governance
Global health
History of
archaic
early modern
Military globalization
Political globalization
Trade globalization
Workforce globalization
Issues
Global
Disease
Digital divide
Labor arbitrage
Population
Warming
Water crisis
Other
Brain drain
reverse
Climate change
Climate justice
Development aid
Economic inequality
Endangered languages
Fair trade
Forced migration
Human rights
Illicit financial flows
Invasive species
Investor-state disputes
New international division of labour
North–South divide
Offshoring
Race to the bottom
pollution havens
Transnational crime
McDonaldization
Westernization
American imperialism
British Empire
World war
Theories
Capital accumulation
Dependency
Development
Earth system
Fiscal localism
Modernization
ecological
history of
Primitive accumulation
Social change
World history
World-systems
Notable
scholars
Samir Amin
Arjun Appadurai
K. Anthony Appiah
Daniele Archibugi
Giovanni Arrighi
Ravi Batra
Jean Baudrillard
Zygmunt Bauman
Ulrich Beck
Walden Bello
Jagdish Bhagwati
Robert Brenner
Manuel Castells
Noam Chomsky
Alfred Crosby
Christopher Chase-Dunn
Andre G. Frank
Thomas Friedman
Anthony Giddens
Peter Gowan
Michael Hardt
David Harvey
David Held
Paul Hirst
Michael Hudson
Paul James
Ibn Khaldun
Naomi Klein
Antonio Negri
George Ritzer
Dani Rodrik
Jeffrey Sachs
Saskia Sassen
John R. Saul
Vandana Shiva
Joseph Stiglitz
John Urry
Immanuel Wallerstein
Portal
Category
Biological exchange across Atlantic Ocean
Retrieved from "https://en.wikipedia.org/w/index.php?title=Columbian_exchange&oldid=866486130"
Categories:
Age of Discovery
Agricultural revolutions
History of agriculture
History of Europe
History of globalization
History of indigenous peoples of the Americas
History of the Americas
Horticulture and gardening
Introduced species
Invasive species
Spanish colonization of the Americas
Spain in the Age of Discovery
History of the Atlantic Ocean
Hidden categories:
Webarchive template wayback links
Webarchive template webcite links
Use mdy dates from November 2014
Articles with short description
Navigation menu
Personal tools
Not logged in
Talk
Contributions
Create account
Log in
Namespaces
Article
Talk
Variants
Views
Read
Edit
View history
More
Search
Navigation
Main page
Contents
Featured content
Current events
Random article
Donate to Wikipedia
Wikipedia store
Interaction
Help
About Wikipedia
Community portal
Recent changes
Contact page
Tools
What links here
Related changes
Upload file
Special pages
Permanent link
Page information
Wikidata item
Cite this page
Print/export
Create a book
Download as PDF
Printable version
Languages
العربية
Български
Català
Čeština
Deutsch
Español
Esperanto
Euskara
فارسی
Français
Galego
한국어
हिन्दी
Bahasa Indonesia
Italiano
Latina
Македонски
മലയാളം
Nederlands
日本語
Norsk
Português
Русский
Simple English
Suomi
Tagalog
Українська
中文
19 more
Edit links
This page was last edited on 30 October 2018, at 16:50 (UTC).
Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.
Privacy policy
About Wikipedia
Disclaimers
Contact Wikipedia
Developers
Cookie statement
Mobile view
Enable previews

values: mw-page-base noprint

values: mw-head-base noprint

values: firstHeading firstHeading en

values: siteSub noprint

attrs: class href

values: mw-jump-link #mw-head

values: mw-jump-link #p-search

attrs: href title

values:
note
hatnote navigation-not-searchable

value: p

attrs: href class

value: i

values:
/wiki/Rubber_tree
mw-redirect
Rubber tree

values:
/wiki/Communicable_diseases
mw-redirect
Communicable diseases

values: checkbox button toctogglecheckbox toctogglecheckbox display:none

values: Cosimo I de' Medici, Grand Duke of Tuscany

values:
/wiki/Sickle-cell_disease
mw-redirect
Sickle-cell disease

values:
/wiki/Infectious_diseases
mw-redirect
Infectious diseases

values:
/wiki/Acquired_immunity
mw-redirect
Acquired immunity

values: Edit section: Trans Atlantic Slave Trade

values:
/wiki/Finger_millet
mw-redirect
Finger millet

values:
/wiki/Black_walnut
mw-redirect
Black walnut

values:
/wiki/Squash_(plant)
mw-redirect
Squash (plant)

values:
/wiki/Sugar_maple
mw-redirect
Sugar maple

values:
/wiki/Enoki_mushroom
mw-redirect
Enoki mushroom

values:
/wiki/Oyster_mushroom
mw-redirect
Oyster mushroom

values:
/wiki/Shiitake_mushroom
mw-redirect
Shiitake mushroom

values:
/wiki/Snow_ear_fungus
mw-redirect
Snow ear fungus

values: display:table-cell;padding:0.2em 0.2em 0.2em 0.3em;vertical-align:middle

values: Portal:Indigenous peoples of the Americas

values: margin:0.5em 0 0.5em 1em;border:solid #aaa 1px

values: List of food plants native to the Americas

values: Pre-Columbian trans-oceanic contact theories

values:
/wiki/Transformation_of_culture
mw-redirect
Transformation of culture

values:
nofollow
external text
//doi.org/10.1257%2Fjep.24.2.163

values:
nofollow
external text
//www.jstor.org/stable/25703506

values:
nofollow
external text
//www.jstor.org/stable/3647168

values:
nofollow
external text
//doi.org/10.1345%2Faph.1K086

values:
/wiki/PubMed_Identifier
mw-redirect
PubMed Identifier

values:
nofollow
external text
//www.ncbi.nlm.nih.gov/pubmed/18212261

values:
nofollow
external text
//www.ncbi.nlm.nih.gov/pubmed/20797514

values:
nofollow
external text
//doi.org/10.1007%2Fs10096-008-0571-x

values:
nofollow
external text
//www.ncbi.nlm.nih.gov/pubmed/18592279

values: -moz-column-width: 30em; -webkit-column-width: 30em; column-width: 30em; list-style-type: decimal;

values:
/wiki/Alfred_Crosby
mw-redirect
Alfred Crosby

values: Template:Indigenous peoples of the Americas

values: Template talk:Indigenous peoples of the Americas

values: Classification of indigenous peoples of the Americas

values: Genetic history of indigenous peoples of the Americas

attrs: alt src width height srcset data-file-width data-file-height

values:
navbox-image
5
width:1px;padding:0px 0px 0px 2px

values: List of Indigenous peoples of North America (page does not exist)

values:
/wiki/Indigenous_peoples_of_Jamaica
mw-redirect
Indigenous peoples of Jamaica

values: List of Indigenous peoples of South America

values: Visual arts by indigenous peoples of the Americas

values: List of indigenous artists of the Americas

values: List of writers from peoples indigenous to the Americas

values: Category:Indigenous peoples of the Americas

values: nowraplinks hlist collapsible autocollapse navbox-inner mw-collapsible mw-made-collapsible mw-collapsed

values: Template talk:Pre-Columbian North America

values: Motif S.E.C.C. crossincircle HRoe 2008.jpg

values: List of archaeological periods (North America)

values:
;Periods
:_Lithic
:_Archaic
:_Formative
:_Classic
:_Post-Classic

values: S.E.C.C. hero twins 3 HRoe 2007-transparent.png

values: Hopewell Culture National Historical Park

values: Lake Jackson Mounds Archaeological State Park

values: Rock Paintings of Sierra de San Francisco

values: Native American Graves Protection and Repatriation Act

values: Portal:Indigenous peoples of North America

values: nowraplinks hlist collapsible collapsed navbox-inner mw-collapsible mw-collapsed mw-made-collapsible

values:
/wiki/Global_digital_divide
mw-redirect
Global digital divide

attrs: alt src title width height srcset data-file-width data-file-height

values: navigation navbox Globalization padding:3px

values: shortdescription nomobile noexcerpt noprint searchaux

values: Category:History of indigenous peoples of the Americas

values: Category:Spanish colonization of the Americas

values: Category:Webarchive template wayback links

values: Category:Webarchive template webcite links

values: Category:Use mdy dates from November 2014

values: Category:Articles with short description

values: Discussion about edits from this IP address [ctrl-alt-n]

values: A list of edits made from this IP address [ctrl-alt-y]

values: You are encouraged to create an account and log in; however, it is not mandatory

values: You're encouraged to log in; however, it's not mandatory. [ctrl-alt-o]

values:
/wiki/Columbian_exchange
View the content page [ctrl-alt-c]
c

values: Discussion about the content page [ctrl-alt-t]

values: p-namespaces navigation vectorTabs p-namespaces-label

values:
p-variants
navigation
vectorMenu emptyPortlet
p-variants-label

values: Past revisions of this page [ctrl-alt-h]

values: p-views navigation vectorTabs p-views-label

values:
p-cactions
navigation
vectorMenu emptyPortlet
p-cactions-label

values:
mw-wiki-logo
/wiki/Main_Page
Visit the main page

values: portal navigation p-interaction p-interaction-label

values: List of all English Wikipedia pages containing links to this page [ctrl-alt-j]

values: Recent changes in pages linked from this page [ctrl-alt-k]

values:
/wiki/Wikipedia:File_Upload_Wizard
Upload files [ctrl-alt-u]
u

values: A list of all special pages [ctrl-alt-q]

values: Permanent link to this revision of the page

values: Link to connected data repository item [ctrl-alt-g]

values: Printable version of this page [ctrl-alt-p]

values: التبادل الكولومبي – Arabic

values: Колумбов обмен – Bulgarian

values:
interlanguage-link interwiki-bg
display: none;

values:
interlanguage-link interwiki-ca
display: none;

values:
interlanguage-link interwiki-cs
display: none;

values:
interlanguage-link interwiki-eo
display: none;

values:
interlanguage-link interwiki-eu
display: none;

values: مبادله کلمبی – Persian

values:
interlanguage-link interwiki-fa
display: none;

values:
interlanguage-link interwiki-gl
display: none;

values: 콜럼버스의 교환 – Korean

values:
interlanguage-link interwiki-ko
display: none;

values: कोलम्बियन विनिमय – Hindi

values:
interlanguage-link interwiki-it
display: none;

values:
interlanguage-link interwiki-la
display: none;

values: Колумбовска размена – Macedonian

values:
interlanguage-link interwiki-mk
display: none;

values: കൊളംബിയൻ കൈമാറ്റം – Malayalam

values:
interlanguage-link interwiki-ml
display: none;

values:
interlanguage-link interwiki-nl
display: none;

values: コロンブス交換 – Japanese

values:
interlanguage-link interwiki-ja
display: none;

values:
interlanguage-link interwiki-no
display: none;

values: Колумбов обмен – Russian

values:
interlanguage-link interwiki-simple
display: none;

values:
interlanguage-link interwiki-fi
display: none;

values:
interlanguage-link interwiki-tl
display: none;

values: Колумбів обмін – Ukrainian

values:
interlanguage-link interwiki-uk
display: none;

values: 哥倫布大交換 – Chinese

values: All languages (initial selection from common choices by you and others)

values: mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Columbian_exchange rootpage-Columbian_exchange skin-vector action-view


text:
Java virtual machine
From Wikipedia, the free encyclopedia
Jump to: navigation, search
"JRE" redirects here. For the podcast, see Joe Rogan Experience.
Java virtual machine
Designer
Sun Microsystems
Bits
32-bit
Introduced
1994
Type
Stack and register–register
Endianness
Big
Registers
General purpose
Per-method operand stack (up to 65535 operands) plus per-method local variables (up to 65535)
Overview of a Java virtual machine (JVM) architecture based on The Java Virtual Machine Specification Java SE 7 Edition
A Java virtual machine (JVM) is an abstract computing machine that enables a computer to run a Java program. There are three notions of the JVM: specification, implementation, and instance. The specification is a document that formally describes what is required of a JVM implementation. Having a single specification ensures all implementations are interoperable. A JVM implementation is a computer program that meets the requirements of the JVM specification. An instance of a JVM is an implementation running in a process that executes a computer program compiled into Java bytecode.
Java Runtime Environment (JRE) is a software package that contains what is required to run a Java program. It includes a Java Virtual Machine implementation together with an implementation of the Java Class Library. The Oracle Corporation, which owns the Java trademark, distributes a Java Runtime environment with their Java Virtual Machine called HotSpot.
Java Development Kit (JDK) is a superset of a JRE and contains tools for Java programmers, e.g. a javac compiler. The Java Development Kit is provided free of charge either by Oracle Corporation directly, or by the OpenJDK open source project, which is governed by Oracle.
Contents
[hide]
1 JVM specification
1.1 Class loader
1.2 Virtual machine architecture
1.3 Bytecode instructions
1.4 JVM languages
1.5 Bytecode verifier
1.5.1 Secure execution of remote code
1.6 Bytecode interpreter and just-in-time compiler
2 JVM in the web browser
2.1 Java applets
2.2 JavaScript JVMs and interpreters
2.3 Compilation to JavaScript
3 Java Runtime Environment
3.1 Performance
3.2 Generational heap
3.3 Security
4 See also
5 Notes
6 References
7 External links
JVM specification[edit]
The Java virtual machine is an abstract (virtual) computer defined by a specification. This specification omits implementation details that are not essential to ensure interoperability: the memory layout of run-time data areas, the garbage-collection algorithm used, and any internal optimization of the Java virtual machine instructions (their translation into machine code). The main reason for this omission is to not unnecessarily constrain implementers. Any Java application can be run only inside some concrete implementation of the abstract specification of the Java virtual machine.[1]
Starting with Java Platform, Standard Edition (J2SE) 5.0, changes to the JVM specification have been developed under the Java Community Process as JSR 924.[2] As of 2006[update], changes to specification to support changes proposed to the class file format (JSR 202)[3] are being done as a maintenance release of JSR 924. The specification for the JVM was published as the blue book,[4] The preface states:
We intend that this specification should sufficiently document the Java Virtual Machine to make possible compatible clean-room implementations. Oracle provides tests that verify the proper operation of implementations of the Java Virtual Machine.
One of Oracle's JVMs is named HotSpot, the other, inherited from BEA Systems is JRockit. Clean-room Java implementations include Kaffe and IBM J9. Oracle owns the Java trademark and may allow its use to certify implementation suites as fully compatible with Oracle's specification.
Class loader[edit]
Main article: Java Class loader
One of the organizational units of JVM byte code is a class. A class loader implementation must be able to recognize and load anything that conforms to the Java class file format. Any implementation is free to recognize other binary forms besides class files, but it must recognize class files.
The class loader performs three basic activities in this strict order:
Loading: finds and imports the binary data for a type
Linking: performs verification, preparation, and (optionally) resolution
Verification: ensures the correctness of the imported type
Preparation: allocates memory for class variables and initializing the memory to default values
Resolution: transforms symbolic references from the type into direct references.
Initialization: invokes Java code that initializes class variables to their proper starting values.
In general, there are two types of class loader: bootstrap class loader and user defined class loader.
Every Java virtual machine implementation must have a bootstrap class loader, capable of loading trusted classes. The Java virtual machine specification doesn't specify how a class loader should locate classes.
Virtual machine architecture[edit]
The JVM operates on primitive values (integers and floating-point numbers) and references. The JVM is fundamentally a 32-bit machine. long and double types, which are 64-bits, are supported natively, but consume two units of storage in a frame's local variables or operand stack, since each unit is 32 bits. boolean, byte, short, and char types are all sign-extended (except char which is zero-extended) and operated on as 32-bit integers, the same as int types. The smaller types only have a few type-specific instructions for loading, storing, and type conversion. boolean is not known at all to the JVM; booleans are operated on as 8-bit byte values, with 0 representing false and 1 representing true.
The JVM has a garbage-collected heap for storing objects and arrays. Code, constants, and other class data are stored in the "method area". The method area is logically part of the heap, but implementations may treat the method area separately from the heap, and for example might not garbage collect it. Each JVM thread also has its own call stack (called a "Java Virtual Machine stack" for clarity), which stores frames. A new frame is created each time a method is called, and the frame is destroyed when that method exits.
Each frame provides an "operand stack" and an array of "local variables". The operand stack is used for operands to computations and for receiving the return value of a called method, while local variables serve the same purpose as registers and are also used to pass method arguments. Thus, the JVM is both a stack machine and a register machine.
Bytecode instructions[edit]
Main article: Java bytecode
The JVM has instructions for the following groups of tasks:
Load and store
Arithmetic
Type conversion
Object creation and manipulation
Operand stack management (push / pop)
Control transfer (branching)
Method invocation and return
Throwing exceptions
Monitor-based concurrency
The aim is binary compatibility. Each particular host operating system needs its own implementation of the JVM and runtime. These JVMs interpret the bytecode semantically the same way, but the actual implementation may be different. More complex than just emulating bytecode is compatibly and efficiently implementing the Java core API that must be mapped to each host operating system.
These instructions operate on a set of common abstracted data types rather the native data types of any specific instruction set architecture.
JVM languages[edit]
Main article: List of JVM languages
A JVM language is any language with functionality that can be expressed in terms of a valid class file which can be hosted by the Java Virtual Machine. A class file contains Java Virtual Machine instructions (Java byte code) and a symbol table, as well as other ancillary information. The class file format is the hardware- and operating system-independent binary format used to represent compiled classes and interfaces.[5]
There are several JVM languages, both old languages ported to JVM and completely new languages. JRuby and Jython are perhaps the most well-known ports of existing languages, i.e. Ruby and Python respectively. Of the new languages that have been created from scratch to compile to Java bytecode, Clojure, Apache Groovy, Scala and Kotlin may be the most popular ones. A notable feature with the JVM languages is that they are compatible with each other, so that, for example, Scala libraries can be used with Java programs and vice versa.[6]
Java 7 JVM implements JSR 292: Supporting Dynamically Typed Languages[7] on the Java Platform, a new feature which supports dynamically typed languages in the JVM. This feature is developed within the Da Vinci Machine project whose mission is to extend the JVM so that it supports languages other than Java.[8][9]
Bytecode verifier[edit]
A basic philosophy of Java is that it is inherently safe from the standpoint that no user program can crash the host machine or otherwise interfere inappropriately with other operations on the host machine, and that it is possible to protect certain methods and data structures belonging to trusted code from access or corruption by untrusted code executing within the same JVM. Furthermore, common programmer errors that often led to data corruption or unpredictable behavior such as accessing off the end of an array or using an uninitialized pointer are not allowed to occur. Several features of Java combine to provide this safety, including the class model, the garbage-collected heap, and the verifier.
The JVM verifies all bytecode before it is executed. This verification consists primarily of three types of checks:
Branches are always to valid locations
Data is always initialized and references are always type-safe
Access to private or package private data and methods is rigidly controlled
The first two of these checks take place primarily during the verification step that occurs when a class is loaded and made eligible for use. The third is primarily performed dynamically, when data items or methods of a class are first accessed by another class.
The verifier permits only some bytecode sequences in valid programs, e.g. a jump (branch) instruction can only target an instruction within the same method. Furthermore, the verifier ensures that any given instruction operates on a fixed stack location,[10] allowing the JIT compiler to transform stack accesses into fixed register accesses. Because of this, that the JVM is a stack architecture does not imply a speed penalty for emulation on register-based architectures when using a JIT compiler. In the face of the code-verified JVM architecture, it makes no difference to a JIT compiler whether it gets named imaginary registers or imaginary stack positions that must be allocated to the target architecture's registers. In fact, code verification makes the JVM different from a classic stack architecture, of which efficient emulation with a JIT compiler is more complicated and typically carried out by a slower interpreter.
The original specification for the bytecode verifier used natural language that was incomplete or incorrect in some respects. A number of attempts have been made to specify the JVM as a formal system. By doing this, the security of current JVM implementations can more thoroughly be analyzed, and potential security exploits prevented. It will also be possible to optimize the JVM by skipping unnecessary safety checks, if the application being run is proven to be safe.[11]
Secure execution of remote code[edit]
A virtual machine architecture allows very fine-grained control over the actions that code within the machine is permitted to take. It assumes the code is "semantically" correct, that is, it successfully passed the (formal) bytecode verifier process, materialized by a tool, possibly off-board the virtual machine. This is designed to allow safe execution of untrusted code from remote sources, a model used by Java applets, and other secure code downloads. Once bytecode-verified, the downloaded code runs in a restricted "sandbox", which is designed to protect the user from misbehaving or malicious code. As an addition to the bytecode verification process, publishers can purchase a certificate with which to digitally sign applets as safe, giving them permission to ask the user to break out of the sandbox and access the local file system, clipboard, execute external pieces of software, or network.
Formal proof of bytecode verifiers have been done by the Javacard industry (Formal Development of an Embedded Verifier for Java Card Byte Code[12])
Bytecode interpreter and just-in-time compiler[edit]
For each hardware architecture a different Java bytecode interpreter is needed. When a computer has a Java bytecode interpreter, it can run any Java bytecode program, and the same program can be run on any computer that has such an interpreter.
When Java bytecode is executed by an interpreter, the execution will always be slower than the execution of the same program compiled into native machine language. This problem is mitigated by just-in-time (JIT) compilers for executing Java bytecode. A JIT compiler may translate Java bytecode into native machine language while executing the program. The translated parts of the program can then be executed much more quickly than they could be interpreted. This technique gets applied to those parts of a program frequently executed. This way a JIT compiler can significantly speed up the overall execution time.
There is no necessary connection between the Java programming language and Java bytecode. A program written in Java can be compiled directly into the machine language of a real computer and programs written in other languages than Java can be compiled into Java bytecode.
Java bytecode is intended to be platform-independent and secure.[13] Some JVM implementations do not include an interpreter, but consist only of a just-in-time compiler.[14]
JVM in the web browser[edit]
Since the very early stages of the design process, Java (and JVM) has been marketed as a web technology for creating Rich Internet Applications.
Java applets[edit]
Main article: Java applet
On the client side, web browsers may be extended with a NPAPI Java plugin which executes so called Java applets embedded into HTML pages. The applet is allowed to draw into a rectangular region on the page assigned to it and use a restricted set of APIs that allow for example access to user's microphone or 3D acceleration. Java applets were superior to JavaScript both in performance and features until approximately 2011, when JavaScript engines in browsers were made significantly faster and the HTML 5 suite of web technologies started enhancing JavaScript with new APIs. Java applets are not able to modify the page outside its rectangular region which is not true about JavaScript. Adobe Flash Player, the main competing technology, works in the same way in this respect. Java applets are not restricted to Java and in general can be created in any JVM language.
As of April 2014, Google Chrome does not allow the use of any NPAPI plugins.[15] Mozilla Firefox will also ban NPAPI plugins by the end of 2016. This means that Java applets can no longer be used in either browser.[16] Oracle ultimately announced in January 2016 that it will discontinue the Java web browser plugin effective Java 9.[17]
As of June 2015[update] according to W3Techs, Java applet use had fallen to 0.1% of all web sites. Flash had fallen to 10.8% and Silverlight to 0.1% of web sites.[18]
JavaScript JVMs and interpreters[edit]
As of May 2016, JavaPoly allows users to import unmodified Java libraries, and invoke them directly from JavaScript. JavaPoly allows websites to use run unmodified Java libraries, even if the user does not have Java installed on their computer.[19]
Compilation to JavaScript[edit]
With the continuing improvements in JavaScript execution speed, combined with the increased use of mobile devices whose web browsers do not implement support for plugins, there are efforts to target those users through compilation to JavaScript. It is possible to either compile the source code or JVM bytecode to JavaScript.
Compiling the JVM bytecode, which is universal across JVM languages, allows building upon the language's existing compiler to bytecode. The main JVM bytecode to JavaScript compilers are TeaVM,[20] the compiler contained in Dragome Web SDK,[21] Bck2Brwsr,[22] and j2js-compiler.[23]
Leading compilers from JVM languages to JavaScript include the Java-to-JavaScript compiler contained in Google Web Toolkit, Clojurescript (Clojure), GrooScript (Apache Groovy), Scala.js (Scala) and others.[24]
Java Runtime Environment[edit]
Main article: HotSpot
The Java Runtime Environment (JRE) released by Oracle is a software distribution containing a stand-alone Java VM (HotSpot), a browser plugin (discontinued since Java 9), the Java standard library (Java Class Library) and a configuration tool. It is the most common Java environment installed on Windows computers. It is freely available for download at the website java.com.
Performance[edit]
Main article: Java performance
The JVM specification gives a lot of leeway to implementors regarding the implementation details. Since Java 1.3, JRE from Oracle contains a JVM called HotSpot. It has been designed to be a high-performance JVM.
To speed-up code execution, HotSpot relies on just-in-time compilation. To speed-up object allocation and garbage collection, HotSpot uses generational heap.
Generational heap[edit]
The Java virtual machine heap is the area of memory used by the JVM for dynamic memory allocation.[25]
In HotSpot the heap is divided into generations:
The young generation stores short-lived objects that are created and immediately garbage collected.
Objects that persist longer are moved to the old generation (also called the tenured generation). This memory is subdivided into (two) Survivors spaces where the objects that survived the first and next garbage collections are stored.
The permanent generation (or permgen) was used for class definitions and associated metadata prior to Java 8. Permanent generation was not part of the heap.[26][27] The permanent generation was removed from Java 8.[28]
Originally there was no permanent generation, and objects and classes were stored together in the same area. But as class unloading occurs much more rarely than objects are collected, moving class structures to a specific area allowed significant performance improvements.[26]
Security[edit]
Oracle's JRE is installed on a large number of computers. Since any web page the user visits may run Java applets, Java provides an easily accessible attack surface to malicious web sites that the user visits. Kaspersky Labs reports that the Java web browser plugin is the method of choice for computer criminals. Java exploits are included in many exploit packs that hackers deploy onto hacked web sites.[29]
In the past, end users were often using an out-of-date version of JRE which was vulnerable to many known attacks. This led to the widely shared belief between users that Java is inherently insecure.[30] Since Java 1.7, Oracle's JRE for Windows includes automatic update functionality.
See also[edit]
Java portal
List of Java virtual machines
Comparison of Java virtual machines
Comparison of application virtual machines
Automated exception handling
Java performance
List of JVM languages
Java processor
Common Language Runtime
Notes[edit]
Jump up ^ Bill Venners, Inside the Java Virtual Machine Chapter 5
Jump up ^ "The Java Community Process(SM) Program - JSRs: Java Specification Requests - detail JSR# 924". Jcp.org. Retrieved 2015-06-26.
Jump up ^ "The Java Community Process(SM) Program - JSRs: Java Specification Requests - detail JSR# 202". Jcp.org. Retrieved 2015-06-26.
Jump up ^ The Java Virtual Machine Specification (the first and second editions are also available online).
Jump up ^ "The Java Virtual Machine Specification : Java SE 7 Edition" (PDF). Docs.oracle.com. Retrieved 2015-06-26.
Jump up ^ "Frequently Asked Questions - Java Interoperability". scala-lang.org. Retrieved 2015-11-18.
Jump up ^ "The Java Community Process(SM) Program - JSRs: Java Specification Requests - detail JSR# 292". Jcp.org. Retrieved 2015-06-26.
Jump up ^ "Da Vinci Machine project". Openjdk.java.net. Retrieved 2015-06-26.
Jump up ^ "New JDK 7 Feature: Support for Dynamically Typed Languages in the Java Virtual Machine". Oracle.com. Retrieved 2015-06-26.
Jump up ^ "The Verification process". The Java Virtual Machine Specification. Sun Microsystems. 1999. Retrieved 2009-05-31.
Jump up ^ Stephen N. Freund and John C. Mitchell. 1999. A formal framework for the Java bytecode language and verifier. In Proceedings of the 14th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications (OOPSLA '99), A. Michael Berman (Ed.) Association for Computing Machinery, New York, pp.147–166. doi:10.1145/320384.320397
Jump up ^ http://www-sop.inria.fr/everest/Lilian.Burdy/CBR02dsn.pdf
Jump up ^ David J. Eck, Introduction to Programming Using Java, Seventh Edition, Version 7.0, August 2014 at Section 1.3 "The Java Virtual Machine"
Jump up ^ Oracle JRockit Introduction Release R28 at 2. "Understanding Just-In-Time Compilation and Optimization"
Jump up ^ "Chrome starts pushing Java off the Web by disabling plugins". Ars Technica. Retrieved 9 December 2015.
Jump up ^ "Firefox will stop supporting plugins by end of 2016, following Chrome's lead". PC World. Retrieved 9 December 2015.
Jump up ^ "Oracle deprecates the Java browser plugin, prepares for its demise". Ars Technica. Retrieved 15 April 2016.
Jump up ^ "Historical yearly trends in the usage of client-side programming languages, June 2015". W3techs.com. Retrieved 2015-06-26.
Jump up ^ Krill, Paul (13 May 2016). "JavaPoly.js imports existing Java code and invokes it directly from JavaScript". InfoWorld. Retrieved 18 July 2016.
Jump up ^ "TeaVM project home page". Teavm.org. Retrieved 2015-06-26.
Jump up ^ "Dragome Web SDK". Dragome.com. Retrieved 2015-06-26.
Jump up ^ "Bck2Brwsr - APIDesign". Wiki.apidesign.org. Retrieved 2015-06-26.
Jump up ^ Wolfgang Kuehn (decatur). j2js-compiler GitHub
Jump up ^ "List of languages that compile to JS · jashkenas/coffeescript Wiki · GitHub". Github.com. 2015-06-19. Retrieved 2015-06-26.
Jump up ^ "Frequently Asked Questions about Garbage Collection in the Hotspot Java Virtual Machine". Sun Microsystems. 6 February 2003. Retrieved 7 February 2009.
^ Jump up to: a b Masamitsu, Jon (28 November 2006). "Presenting the Permanent Generation". Retrieved 7 February 2009.
Jump up ^ Nutter, Charles (11 September 2008). "A First Taste of InvokeDynamic". Retrieved 7 February 2009.
Jump up ^ "JEP 122: Remove the Permanent Generation". Oracle Corporation. 2012-12-04. Retrieved 2014-03-23.
Jump up ^ "Is there any protection against Java exploits? | Kaspersky Lab". Kaspersky.com. 2013-09-09. Retrieved 2015-06-26.
Jump up ^ "What Is Java, Is It Insecure, and Should I Use It?". Lifehacker.com. 2013-01-14. Retrieved 2015-06-26.
References[edit]
Clarifications and Amendments to the Java Virtual Machine Specification, Second Edition includes list of changes to be made to support J2SE 5.0 and JSR 45
JSR 45, specifies changes to the class file format to support source-level debugging of languages such as JavaServer Pages (JSP) and SQLJ that are translated to Java
External links[edit]
What is Java virtual machine (JVM)?
The Java Virtual Machine Specification
Java implementations at Curlie (based on DMOZ)
How to download and install prebuilt OpenJDK packages
How to Install Java? (JRE from Oracle)
[show]
v
t
e
Java virtual machines (comparison)
Sun/Oracle
HotSpot
KVM
OpenJDK
Maxine VM
Major implementations
Excelsior JET
JamVM
Jikes RVM
IBM J9
Embedded
Excelsior JET Embedded
JamaicaVM
Mika VM
Mysaifu
Squawk (Sun)
Others
CACAO
IcedTea
JX
more…
Discontinued
Apache Harmony
Dalvik
GCJ
IKVM.NET
JRockit
Kaffe
Microsoft JVM
SableVM
Jupiter
more…
[show]
v
t
e
Java
Platforms
Java language
JVM
Micro Edition
Standard Edition
Enterprise Edition
Java Card
Android SDK
Oracle technologies
Squawk
Java Development Kit
OpenJDK
Java virtual machine
JavaFX
Maxine VM
Platform technologies
Applets
Servlets
MIDlets
JSP
Web Start (JNLP)
Major third-party technologies
Blackdown
Eclipse
GNU Classpath
GWT
Harmony
Hibernate
IcedTea
Jazelle
Spring
Struts
TopLink
WildFly
History
Java version history
Java Community Process
Sun Microsystems
Free Java implementations
Major JVM languages
BeanShell
Clojure
Groovy
Oxygene
JRuby
Jython
Kotlin
Processing
Rhino
Scala
Tcl/Java
Conferences
JavaOne
Devoxx
[show]
v
t
e
Sun Microsystems (acquired by Oracle Corp, 2010)
People
Bill Joy
Andy Bechtolsheim
Scott McNealy
Vinod Khosla
List of notable employees
Hardware
Sun-1
Sun-2
Sun-3
Sun386i
Sun-4
SPARCstation
Netra
Ultra
Enterprise
Sun Blade
Sun Fire
SPARC Enterprise
SPARC
JavaStation
Sun Ray
Sun Modular Datacenter
more...
Software
SunOS
Solaris
NIS (+)
NFS
ZFS
SunView
NeWS
OpenWindows
Java Desktop System
Sun Studio
Java
StarOffice
iPlanet/Sun ONE/Java Enterprise System
Sun Secure Global Desktop
MySQL
Sun xVM
GlassFish
more...
Storage
StorageTek
Sun Open Storage
QFS
ZFS
High-performance computing
Sun Cloud
Sun Constellation System
Sun Visualization System
Sun Grid Engine
Lustre
Research
Sun Labs
picoJava
Fortress
Project Looking Glass
Education
SCPs
BlueJ
Community
Common Development and Distribution License
Java Community Process
NetBeans
OpenOffice.org
OpenSolaris
OpenSPARC
OpenJDK
OSUM
Retrieved from "https://en.wikipedia.org/w/index.php?title=Java_virtual_machine&oldid=818128168"
Categories:
Java (programming language)
Java platform
Java platform software
Java specification requests
Java virtual machine
Stack-based virtual machines
Hidden categories:
Articles containing potentially dated statements from 2006
All articles containing potentially dated statements
Articles containing potentially dated statements from June 2015
Articles with DMOZ links
Navigation menu
Personal tools
Not logged in
Talk
Contributions
Create account
Log in
Namespaces
Article
Talk
Variants
Views
Read
Edit
View history
More
Search
Navigation
Main page
Contents
Featured content
Current events
Random article
Donate to Wikipedia
Wikipedia store
Interaction
Help
About Wikipedia
Community portal
Recent changes
Contact page
Tools
What links here
Related changes
Upload file
Special pages
Permanent link
Page information
Wikidata item
Cite this page
Print/export
Create a book
Download as PDF
Printable version
Languages
አማርኛ
العربية
Azərbaycanca
বাংলা
Български
Bosanski
Català
Čeština
Deutsch
Español
فارسی
Français
한국어
हिन्दी
Hrvatski
Bahasa Indonesia
Interlingua
Italiano
עברית
Қазақша
Magyar
മലയാളം
Монгол
မြန်မာဘာသာ
Nederlands
日本語
ਪੰਜਾਬੀ
Polski
Português
Русский
Shqip
Simple English
Српски / srpski
Srpskohrvatski / српскохрватски
Svenska
Türkçe
Українська
中文
Edit links
This page was last edited on 1 January 2018, at 19:29.
Text is available under the Creative Commons Attribution-ShareAlike License; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization.
Privacy policy
About Wikipedia
Disclaimers
Contact Wikipedia
Developers
Cookie statement
Mobile view
Enable previews

key: html

type: local

value: div

attrs: id class

values: mw-page-base noprint

values: mw-head-base noprint

value: a

attrs: id class lang

values: firstHeading firstHeading en

values: siteSub noprint

values: jump-to-nav mw-jump

attrs: href class title

values:
/wiki/Joe_Rogan_Experience
mw-redirect
Joe Rogan Experience

attrs: role class

values:
note
hatnote navigation-not-searchable

value: caption

value: th

value: td

value: tr

values:
/wiki/32-bit_computing
mw-redirect
32-bit computing

values:
/wiki/General_purpose_register
mw-redirect
General purpose register

attrs: alt src width height class srcset data-file-width data-file-height

values:
/wiki/Process_virtual_machine
mw-redirect
Process virtual machine

values: plainlinks noexcerpt noprint asof-tag update

values:
/wiki/Class_(file_format)
mw-redirect
Class (file format)

values:
/wiki/Java_Class_loader
mw-redirect
Java Class loader

values: Edit section: Virtual machine architecture

values:
/wiki/Instruction_(computer_science)
mw-redirect
Instruction (computer science)

values:
/wiki/Dynamic_memory_allocation
mw-redirect
Dynamic memory allocation

values:
/wiki/Native_data_type
mw-redirect
Native data type

values:
/wiki/Java_byte_code
mw-redirect
Java byte code

values: Edit section: Secure execution of remote code

values:
/wiki/Clipboard_(software)
mw-redirect
Clipboard (software)

values: Edit section: Bytecode interpreter and just-in-time compiler

values:
/wiki/Rich_Internet_Applications
mw-redirect
Rich Internet Applications

values:
/wiki/Java_applets
mw-redirect
Java applets

values:
/wiki/Mozilla_Firefox
mw-redirect
Mozilla Firefox

values: Edit section: JavaScript JVMs and interpreters

values: display:table-cell;padding:0.2em 0.2em 0.2em 0.3em;vertical-align:middle

values: margin:0.5em 0 0.5em 1em;border:solid #aaa 1px

values: Comparison of application virtual machines

values:
nofollow
external text
http://www.jcp.org/en/jsr/detail?id=924

values:
nofollow
external text
http://www.jcp.org/en/jsr/detail?id=202

values:
nofollow
http://java.sun.com/docs/books/vmspec/
external text

values:
nofollow
external text
http://www.scala-lang.org/old/faq/4

values:
nofollow
external text
https://jcp.org/en/jsr/detail?id=292

values:
nofollow
http://openjdk.java.net/projects/mlvm/
external text

values:
nofollow
external text
https://doi.org/10.1145%2F320384.320397

values:
nofollow
http://teavm.org/
external text

values:
nofollow
http://www.dragome.com/
external text

values:
nofollow
external text
http://openjdk.java.net/jeps/122

values: -moz-column-width: 30em; -webkit-column-width: 30em; column-width: 30em; list-style-type: decimal;

values:
nofollow
external text
http://www.jcp.org/en/jsr/detail?id=45

values:
nofollow
http://openjdk.java.net/install/
external text

values: Category:Discontinued Java virtual machines

values: nowraplinks collapsible autocollapse navbox-inner

values:
navbox-image
7
width:1px;padding:0px 0px 0px 2px

values:
/wiki/Hibernate_(Java)
mw-redirect
Hibernate (Java)

values:
/wiki/Apache_Struts
mw-redirect
Apache Struts

values:
/wiki/Oracle_Solaris_Studio
mw-redirect
Oracle Solaris Studio

values: Common Development and Distribution License

values: Category:Articles containing potentially dated statements from 2006

values: Category:All articles containing potentially dated statements

values: Category:Articles containing potentially dated statements from June 2015

values: Discussion about edits from this IP address [ctrl-alt-n]

values: A list of edits made from this IP address [ctrl-alt-y]

values: You are encouraged to create an account and log in; however, it is not mandatory

values: You're encouraged to log in; however, it's not mandatory. [ctrl-alt-o]

values:
/wiki/Java_virtual_machine
View the content page [ctrl-alt-c]
c

values: Discussion about the content page [ctrl-alt-t]

values: p-namespaces navigation vectorTabs p-namespaces-label

values:
p-variants
navigation
vectorMenu emptyPortlet
p-variants-label

values: Past revisions of this page [ctrl-alt-h]

values: p-views navigation vectorTabs p-views-label

values:
p-cactions
navigation
vectorMenu emptyPortlet
p-cactions-label

values:
mw-wiki-logo
/wiki/Main_Page
Visit the main page

values:
/wiki/Main_Page
Visit the main page [ctrl-alt-z]
z

values: Featured content – the best of Wikipedia

values: Find background information on current events

values:
/wiki/Special:Random
Load a random article [ctrl-alt-x]
x

values: portal navigation p-navigation p-navigation-label

values: Guidance on how to use and edit Wikipedia

values: About the project, what you can do, where to find things

values: A list of recent changes in the wiki [ctrl-alt-r]

values: portal navigation p-interaction p-interaction-label

values: List of all English Wikipedia pages containing links to this page [ctrl-alt-j]

values: Recent changes in pages linked from this page [ctrl-alt-k]

values:
/wiki/Wikipedia:File_Upload_Wizard
Upload files [ctrl-alt-u]
u

values: A list of all special pages [ctrl-alt-q]

values: Permanent link to this revision of the page

values: Link to connected data repository item [ctrl-alt-g]

values: Printable version of this page [ctrl-alt-p]

values:
uls-settings-trigger
Language settings
0
button
true

values: ጃቫ ቨርቹአል ማሽን – Amharic

values: آلة جافا الافتراضية – Arabic

values:
https://az.wikipedia.org/wiki/JVM
JVM – Azerbaijani
az
az
interlanguage-link-target

values: জাভা ভার্চুয়াল মেশিন – Bangla

values: ماشین مجازی جاوا – Persian

values: 자바 가상 머신 – Korean

values: जावा आभासी मशीन – Hindi

values: Java виртуалды машинасы – Kazakh

values: ജാവ വെർച്വൽ മെഷീൻ – Malayalam

values: Java ဒြပ်မဲ့စက် – Burmese

values: ਜਾਵਾ ਵਰਚੁਅਲ ਮਸ਼ੀਨ – Punjabi

values: Јава виртуелна машина – Serbian

values: Java (virtualna mašina) – Serbo-Croatian

values: Віртуальна машина Java – Ukrainian

values: /static/images/wikimedia-button-1.5x.png 1.5x, /static/images/wikimedia-button-2x.png 2x

values: /static/images/poweredby_mediawiki_132x47.png 1.5x, /static/images/poweredby_mediawiki_176x62.png 2x

values:
suggestions
display: none; font-size: 13px;

values: mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Java_virtual_machine rootpage-Java_virtual_machine skin-vector action-view