Introduction
Electroniccomputer,alsoknownascomputer,acomputerusesdigitalelectronictechnologytoinstructitaccordingtoaseriesofinstructionsAserialdevicethatautomaticallyperformsarbitraryarithmeticorlogicaloperations.General-purposecomputersarecapableofperforminganextremelywiderangeoftasksbecauseoftheirabilitytofollowageneralsetofoperationscalled"programs."
Computersareusedascontrolsystemsforvariousindustrialandconsumerequipment.Thisincludessimplespecific-purposeequipment(suchasmicrowaveovensandremotecontrols),industrialequipment(suchasindustrialrobotsandcomputer-aideddesign),andgeneral-purposeequipment(suchasmobiledevicessuchaspersonalcomputersandsmartphones).Althoughtherearemanykindsofcomputers,accordingtoTuringmachinetheory,acomputerwiththemostbasicfunctionsshouldbeabletoaccomplishanythingothercomputerscando.Therefore,intheory,everythingfromsmartphonestosupercomputersshouldbeabletocompletethesametasks(regardlessoftimeandstoragefactors).Duetotherapidadvancementoftechnology,thenextgenerationofcomputerswillalwayssignificantlyoutperformtheirpredecessorsinperformance.Thisphenomenonissometimesreferredtoas"Moore'sLaw."ThroughtheInternet,computersareconnectedtoeachother,whichgreatlyincreasesthespeedofinformationexchange,whichinturnpromotesthedevelopmentofscienceandtechnology.Inthe21stcentury,theapplicationofcomputershasinvolvedallaspectsandallwalksoflife.
Sinceancienttimes,simplemanualdevices-likeanabacus-havehelpedpeopleperformcalculations.Atthebeginningoftheindustrialrevolution,allkindsofmachineryappeared,theoriginalintentionwastoautomaticallycompletelengthyandtedioustasks,suchasweavingpatternsonlooms.Morecomplexmachinesappearedatthebeginningofthe20thcenturyandusedanalogcircuitstoperformcomplexandspecificcalculations.ThefirstdigitalelectroniccomputerappearedduringWorldWarII.Sincethen,thespeed,powerconsumptionandversatilityofcomputershavecontinuedtoincrease.Inmoderntimes,theapplicationofmechanicalcomputershasbeencompletelyreplacedbyelectroniccomputers.
Computershavedifferentformsofcomposition.Earlycomputerswerethesizeofahouse,buttodaysomeembeddedcomputersmaybesmallerthanadeckofplayingcards.Ofcourse,eventodaytherearestillalargenumberofhugesupercomputersservingspecialscientificcomputingortransactionprocessingneedsforlargeorganizations.TherelativelysmallonesdesignedforpersonalapplicationsarecalledPersonalComputers(PCs),whicharereferredtoas"microcomputers"inChina.Todayweusuallyrefertothiswhenweusetheterm"computer",butthemostcommonformofcomputerapplicationnowisembedded.Embeddedcomputersareusuallyrelativelysimpleandsmall,andareusedtocontrolotherdevices-whetheritisAircraft,industrialrobotsordigitalcameras.
Technicalresearchrelatedtocomputersiscalledcomputerscience,and"computertechnology"referstothecombinationofmanytechnicalandempiricalresultsderivedfromtheapplicationofcomputerscienceresultstoengineeringpractice."Computertechnology"and"computerscience"aretworelatedbutdifferentconcepts.Thedifferencebetweenthemisthattheformeremphasizespracticeandthelatteremphasizestheory.Asfordata-centricresearch,itiscalledinformationtechnology.
Traditionally,moderncomputersincludeatleastoneprocessingunit(usuallyacentralprocessingunit(CPU))andsomeformofmemory.Theprocessingcomponentperformsarithmeticandlogicaloperations,andthesortingandcontrolunitcanchangetheorderofoperationsinresponsetostoredinformation.Peripheraldevicesincludeinputdevices(keyboard,mouse,joystick,etc.),outputdevices(displayscreen,printer,etc.),andinput/outputdevicesthatperformtwofunctions(suchastouchscreens).Peripheralequipmentallowsinformationtoberetrievedfromexternalsources,andallowsoperationresultstobesavedandretrieved.
>Mainarticle:Computerhardwarehistory
Originally,theoriginalEnglishword"computer"referstoapersonwhoisengagedindatacalculation.Andtheyoftenneedsomemechanicalcomputingequipmentoranalogcomputers.
Theancestorsoftheseearlycomputingdevicesincludetheabacus,andtheAntikytheramachineryusedbytheancientGreekstocalculateplanetarymovementsdatingbackto87BC.WiththerenewedprosperityofEuropeanmathematicsandengineeringattheendoftheMiddleAges,in1623,GermanpolymathWilhelmSchickardtooktheleadindevelopingEurope’sfirstcomputingdevice,whichwascapableofaddingandsubtractingnumberswithinsixdigitsandoutputtinganswersviabells.The"computingclock".Userotatinggearstooperate.
In1642,theFrenchmathematicianBryschPascalimprovedonthe"sliderule"madebytheBritishmathematicianWilliamOughtredtoenableeight-digitcalculations.Manyproductswerealsosold,whichbecameafashionablecommodityatthattime.
In1801,theFrenchmanJosephMarieJacquardimprovedthedesignoftheloom,usingaseriesofperforatedpapercardsasaprocedureforweavingcomplexpatterns.Althoughthismachinecalledthe"Jacquardloom"isnotconsideredarealcomputer,itsprogrammablenaturemakesitanimportantstepinthedevelopmentofmoderncomputers.
CharlesBabbageconceivedanddesignedthefirstfullyprogrammablecomputerin1820.However,duetotechnicalconditions,financialconstraints,andunbearableconstantrepairstothedesign,thiscomputernevercameoutinhislifetime.Aroundthelate19thcentury,manytechnologiesthatlaterprovedtobeofgreatsignificancetocomputerscienceappearedoneafteranother,includingpunchedcardsandvacuumtubes.German-AmericanstatisticianHermanHollydesignedawatchmakingmachineinwhichpunchedcardswereusedforlarge-scaleautomaticdataprocessing.
Inthefirsthalfofthe20thcentury,inordertomeettheneedsofscientificcomputing,manyspecializedanalogcomputerswithincreasingcomplexityweredeveloped.Thesecomputersusethemechanicalorelectronicmodelofthespecificproblemtheyareaimedatasthebasisforcalculation.Fromthe1930stothe1940s,theperformanceofcomputersbecamestrongerandtheirversatilityimproved,andthekeyfeaturesofmoderncomputerswerecontinuouslyadded.
In1937,ClaudeShannon,a21-year-oldMITgraduatestudent,publishedhisgreatpaper"AnalysisofSymbolsinRelaysandSwitchingCircuits",whichfirstmentioneddigitalelectronictechnology.Applications.Heshowedpeoplehowtouseswitchestoimplementlogicalandmathematicaloperations.Sincethen,hehasfurtherconsolidatedhisideasbystudyingVannivalBush'sdifferentialsimulator.Thisisanimportantmomentmarkingthebeginningofthedesignofbinaryelectroniccircuitsandtheapplicationoflogicgates.Thepioneersofthebirthofthesekeyideasshouldinclude:AlmonStrogg,whoappliedforapatentforadevicecontainingalogicgatecircuit;NikolaTesla,asearlyas1898,appliedforacircuitdevicecontaininglogicgates;LeeDeForest,in1907,hereplacedtherelaywithavacuumtube.
Itisquitedifficulttodefinetheso-called"firstelectroniccomputer"alongsuchalongjourneyofsearchingupanddown.OnMay12,1941,GermanengineerKonradZusecompletedhisTuringcompletemechatroniccomputer"Z3",whichisthefirstcomputerwithautomaticbinarymathematicalcalculationsandfeasibleprogrammingfunctions,butNotyetan"electronic"computer.Inaddition,othernotableachievementsmainlyinclude:
TheAtanasov-Berrycomputer,whichwasborninthesummerof1941,wastheworld’sfirstelectroniccomputer.Itusedavacuumtubecalculatorandbinaryvalues.Reusablememory;themysteriousColossuscomputershownintheUKin1943,althoughitsprogrammingabilityisextremelylimited,itconvincespeoplethattheuseofvacuumtubesisbothtrustworthyandcanachieveelectrifiedreprogramming;HarvardUniversityMarkOne;andthebinary-basedENIAC,thefullnameistheElectronicNumericalIntegralCalculator,thisisthefirstgeneralpurposecomputer,butduetoitsstructuraldesignisnotflexibleenough,ithastobereprogrammedeverytimeitisreprogrammedConnecttheelectroniccircuit.
IntheSecondWorldWarinthe1940s,inordertotrainbomberpilots,theUSNavyaskedtheMassachusettsInstituteofTechnologywhetheritcoulddevelopacalculatorthatcouldcontrolaflightsimulator.Theoriginalideaofthemilitarywastousethecalculatortoinstantlyreflectthedatageneratedbythepilot'ssimulationoperationsonthedashboard.UnliketheprevioustrainingsystemLinktrainingaircraft,themilitaryplanningsystemcansimulateasrealisticallyaspossiblebasedontheaerodynamicmodel,sothatitcanbeappliedtovarioustypesofaircraft.SoMITcreatedtheCycloneProject,whichproducedtheworld'sfirstcyclonecomputerthatcanprocessdatainrealtime,andinventedamagneticcorestoragedevice.Thishasmadeahistoriccontributiontothedevelopmentofpersonalcomputers.
TheteamthatdevelopedEniakfurtherimprovedthedesigninresponsetoitsshortcomings,andfinallypresentedthevonNeumannstructure(programstoragearchitecture)weknowtoday.Thissystemisthefoundationofallcomputerstoday.Inthemiddleandlate1940s,alargenumberofcomputersbasedonthissystembegantobedeveloped,ofwhichtheUKwasthefirst.AlthoughthefirstdevelopedandputintooperationwastheSmall-ScaleExperimentalMachine(SSEM),thepracticalmachinedevelopedisprobablytheDelayedStorageElectronicAutomaticCalculator(EDSAC).
Duringthe1950s,vacuumtubecomputersdominated.OnSeptember12,1958,undertheleadershipofRobertNoyce,thefounderofIntel,theintegratedcircuitwasinvented.Amicroprocessorwasintroducedsoon.Calculatorsdesignedbetween1959and1964aregenerallycalledsecond-generationcalculators.
Inthe1960s,transistorcomputersreplacedit.Transistorsaresmaller,faster,cheaper,andmorereliable,whichallowsthemtobeproducedcommercially.Calculatorsfrom1964to1972aregenerallycalledthird-generationcalculators.Alargenumberofintegratedcircuitsareused,andthetypicalmodelistheIBM360series.
Inthe1970s,theintroductionofintegratedcircuittechnologygreatlyreducedtheproductioncostofcomputers,andcomputersbegantospreadtothousandsofhouseholds.Calculatorsafter1972aretraditionallycalledfourth-generationcalculators.Basedonlarge-scaleintegratedcircuits,andlaterultra-large-scaleintegratedcircuits.Intel4004isthefirstmicroprocessorintroducedbyIntelCorporationoftheUnitedStates(Intel)andtheworld'sfirstmicroprocessor;releasedonNovember15,1971.OnApril1,1972,INTELintroducedthe8008microprocessor.In1976,SteveJobsandSteveWozniakfoundedAppleComputer.AndlauncheditsAppleIcalculator.InMay1977,theAppleIIcalculatorwasreleased.OnJune1,1979,INTELreleasedthe8-bit8088microprocessor.
In1982,microcomputersbegantospread,andalargenumberofthementeredschoolsandhomes.Commodore64calculatorwasreleasedinJanuary1982atapriceofUS$595.
InFebruary1982,Intel80286wasreleased.Theclockfrequencyisincreasedto20MHz,andaprotectionmodeisadded,whichcanaccess640KBmemory.Supportmorethan1MBofvirtualmemory.Itruns2.7millioninstructionspersecondandintegrates134,000transistors.
InNovember1990,MicrosoftreleasedthefirstgenerationofMPC(MultimediaPC,multimediapersonalcomputerstandard):theprocessorisatleast80286/12MHz(laterincreasedto80386SX/16MHz),thereisaCDdrive,transmissionrateNotlessthan150KB/sec.
OnOctober10,1994,Intelreleasedthe75MHzPentiumprocessor.OnNovember1,1995,PentiumProwasreleased.Themainfrequencycanreach200MHz,440millioninstructionsarecompletedpersecond,and5.5milliontransistorsareintegrated.OnJanuary8,1997,IntelreleasedPentiumMMX,whichenhancedgamingandmultimediafunctions.
Sincethen,thecalculatorhaschangedwitheachpassingday.TheMoore'sLawpublishedin1965hasbeencontinuouslyverified,andthepredictionwillstillbeapplicableinthenext10-15years.
Principle
Althoughcomputertechnologyhasdevelopeddazzlinglysincethebirthofthefirstelectronicgeneral-purposecomputerinthe1940s,today’scomputersstillbasicallyuseStoredprogramstructure,namelyvonNeumannstructure.Thisstructurerealizesapracticalgeneral-purposecomputer.
Thestoredprogramstructuredescribesacomputerasfourmainparts:arithmeticlogicunit,controlcircuit,memory,andinputandoutputdevices.Thesecomponentsareconnectedbyagroupofcables(especially,whenagroupoflinesareusedfordatatransmissionwithdifferentintentions,itisalsocalledabus),andisdrivenbyaclock(ofcourse,someothereventsarealsoMaydrivethecontrolcircuit).
Conceptually,thememoryofacomputercanberegardedasasetof"cell"units.Each"cell"hasanumber,calledanaddress;itcanalsostoreasmallerfixed-lengthmessage.Thisinformationcanbeeitherinstructions(tellthecomputerwhattodo)ordata(theprocessingobjectoftheinstruction).Inprinciple,every"cell"canstoreeitherofthetwo.
Thearithmeticlogicunit(ALU)canbecalledthebrainofthecomputer.Itcandotwotypesofoperations:Thefirsttypeisarithmeticoperations,suchasaddingandsubtractingtwonumbers.ThefunctionsofarithmeticoperationcomponentsareverylimitedinALU.Infact,someALUsdonotsupportcircuit-levelmultiplicationanddivisionoperationsatall(becauseuserscanonlyperformmultiplicationanddivisionoperationsthroughprogramming).Thesecondcategoryiscomparisonoperations,thatis,giventwonumbers,ALUcomparesthemtodeterminewhichisgreater.
Theinputandoutputsystemisameansbywhichacomputerreceivesinformationfromtheoutsideworldandfeedsbacktheresultsofcalculationstotheoutsideworld.Forastandardpersonalcomputer,theinputdevicesaremainlykeyboardandmouse,andtheoutputdevicesaremonitors,printers,andmanyotherI/Odevicesthatcanbeconnectedtothecomputer,whichwillbediscussedlater.
Thecontrolsystemconnectsthevariouspartsoftheabovecomputer.Itsfunctionistoreadinstructionsanddatafromthememoryandinputandoutputdevices,decodetheinstructions,anddeliverthecorrectinputrequiredbythematchinginstructionstotheALU,tellingtheALUwhatoperationstoperformonthesedataandwheretoreturntheresultdata.Animportantcomponentinthecontrolsystemisacounterthatkeepstrackoftheaddressofthecurrentinstruction.Usuallythiscounteraccumulateswiththeexecutionofinstructions,butsometimesiftheinstructioninstructstojump,thisruleisnotfollowed.
Sincethe1980s,theALUandthecontrolunit(thetwoarecollectivelyreferredtoasthecentralprocessingunit)havegraduallybeenintegratedintoanintegratedcircuitcalledamicroprocessor.Theworkingmodeofthistypeofcomputerisveryintuitive:inoneclockcycle,thecomputerfirstfetchesinstructionsanddatafromthememory,thenexecutestheinstructions,storesthedata,andthenfetchesthenextinstruction.Thisprocessisrepeateduntilaterminationinstructionisobtained.
Asexplainedbythecontroller,theinstructionsetexecutedbythearithmeticunitisawell-definedsimpleinstructionsetwithaverylimitednumber.Generallycanbedividedintofourcategories:1),datamovement(suchas:copyavaluefromstorageunitAtostorageunitB)2),digitallogicoperations(suchas:calculatethesumofstorageunitAandstorageunitB,theresultisreturnedStorageunitC)3),conditionverification(forexample:ifthevalueinstorageunitAis100,thenextinstructionaddressisstorageunitF)4),instructionserialmodification(forexample:thenextinstructionaddressisstorageunitF)
Instructions,likedata,arerepresentedinbinaryinthecomputer.Forexample,10110000isacopyinstructioncodeofanIntelx86seriesmicroprocessor.Theinstructionsetsupportedbyacertaincomputeristhemachinelanguageofthecomputer.Therefore,theuseofpopularmachinelanguagewillmakeiteasierforexistingsoftwaretorunonanewcomputer.Soforthosewhodevelopcommercialsoftwareformodels,theyusuallyonlyfocusononeorafewdifferentmachinelanguages.
Morepowerfulsmallcomputers,largecomputersandserversmaybedifferentfromtheabove-mentionedcomputers.TheyusuallysharetasksamongdifferentCPUsforexecution.Today,microprocessorsandmulti-corepersonalcomputersarealsomovinginthisdirection.
Supercomputersusuallyhaveanarchitecturethatissignificantlydifferentfrombasicstored-programcomputers.TheyusuallyhavethousandsofCPUs,butthesedesignsonlyseemtobeusefulforspecifictasks.Amongvariouscomputers,therearesomemicrocontrollersthatuseHarvardarchitecture,whichseparatesprogramsanddata.
Circuitrealization
Thephysicalrealizationoftheseconceptualdesignsmentionedaboveisdiverse.Aswementionedearlier,astoredprocedurecomputercanbeeitherBabbage'smechanicalordigitalelectronicbased.However,digitalcircuitscanimplementarithmeticandlogicaloperationsusingbinarynumbersthroughelectroniccontrolswitchessuchasrelays.Shannon’spapershowsushowtoarrangerelaystoformlogicgatesthatcanimplementsimpleBooleanoperations.Someotherscholarsquicklypointedoutthattheuseofvacuumtubescanreplacerelaycircuits.Vacuumtubeswerefirstusedasamplifiersinradiocircuits,andthenbegantobeusedmoreandmoreasfastswitchesindigitalelectroniccircuits.Whenonepinofthetubeisenergized,thecurrentcanpassfreelybetweentheothertwoends.
Wecandesignandcompletemanycomplextasksthroughthearrangementandcombinationoflogicgates.Forexample,theadderisoneofthem.Thedevicerealizestheadditionoftwonumbersinthefieldofelectronicsandsavestheresult-incomputerscience,suchamethodofachievingaspecificpurposethroughasetofoperationsiscalledanalgorithm.Intheend,peoplesuccessfullyassembledacompleteALUandcontrollerthroughaconsiderablenumberoflogicgatecircuits.Tosaythatitisahugenumber,justtakealookatCSIRAC,whichmaybethesmallestpracticaltubecomputer.Themachinecontains2,000electronictubes,manyofwhicharedual-purposedevices,whichmeansthatthereareatotalof2,000to4,000logicdevices.
Vacuumtubesareobviouslyincapableofmanufacturinglarge-scalegatecircuits.Expensive,unstable(especiallyinlargequantities),bloated,highenergyconsumption,andnotfastenough—althoughfarexceedingmechanicalswitchingcircuits.Allthiscausedthemtobereplacedbytransistorsinthe1960s.Thelatterissmallerinsize,easytooperate,highinreliability,moreenergy-efficient,andlowerincost.
Afterthe1960s,transistorsbegantobegraduallyreplacedbyintegratedcircuitsinwhichalargenumberoftransistors,othervariouselectricalcomponents,andconnectingwireswereplacedonasiliconboard.Inthe1970s,theALUandthecontroller,asthetwomajorpartsoftheCPU,begantobeintegratedonasinglechipandcalleda"microprocessor."Alongthedevelopmenthistoryofintegratedcircuits,wecanseethatthenumberofintegrateddevicesonachiphasgrownrapidly.Thefirstintegratedcircuitcontainedonlyafewdozencomponents,andby2015,thenumberoftransistorsonanIntelCorei7processorwasaslargeas1.9billion.
Whetheritisanelectrontube,atransistororanintegratedcircuit,theycanallbeusedasa"storage"componentinastoredprogramarchitecturebyusingaflip-flopdesignmechanism.Infact,flip-flopsareindeedusedassmall-scaleultra-high-speedstorage.However,almostnocomputerdesignusestriggersforlarge-scaledatastorage.TheearliestcomputerusedaWilliamselectrontubetosendanelectronbeamtoaTVscreenorseveralmercurydelaylines(thespeedofsoundwavespassingthroughthislineisextremelyslowenoughtobeconsidered"stored"onit)andthenreaditagain.Storedata.Ofcourse,theseeffectivebutnotveryelegantmethodswereeventuallyreplacedbymagneticstorage.Forexample,inamagneticcorememory,thecurrentrepresentinginformationcancreateapermanentweakmagneticfieldintheferrousmaterial.Whenthismagneticfieldisreadagain,datarecoveryisachieved.Dynamicrandomaccessmemorywasalsoinvented.Itisanintegratedcircuitcontainingalargeamountofcapacitance,andthesecapacitivedevicesareresponsibleforstoringthedatacharge—thestrengthofthechargeisdefinedasthevalueofthedata.
Inputandoutputdevices
Inputandoutputdevices(I/O)arethegeneraltermfordevicesthatsendinformationfromtheoutsideworldtothecomputeranddevicesthatreturnprocessingresultstotheoutsideworld.Thesereturnedresultsmaybevisuallyexperiencedbytheuser,orasinputtootherdevicescontrolledbythecomputer:forarobot,theoutputofthecontrollingcomputerisbasicallytherobotitself,suchasperformingvariousbehaviors.
Theinputandoutputdevicesofthefirstgenerationofcomputersareverylimited.Theusualinputdeviceisapunchcardreader,whichisusedtoloadinstructionsanddataintothememory;andtheoutputdeviceusedtostoretheresultsisgenerallyatape.Withtheadvancementofscienceandtechnology,therichnessofinputandoutputdeviceshasincreased.Takeapersonalcomputerasanexample:thekeyboardandmousearethemaintoolsfortheusertodirectlyinputinformationtothecomputer,whilethemonitor,printer,amplifier,andheadsetreturntheprocessingresults.Inaddition,therearemanyinputdevicesthatcanacceptotherdifferenttypesofinformation,suchasdigitalcamerasthatcaninputimages.Amongtheinputandoutputdevices,therearetwotypesthatareworthnoting:Thefirstcategoryissecondarystoragedevices,suchasharddisks,opticaldisks,orotherslow-speedbuthigh-capacitydevices.Thesecondiscomputernetworkaccessequipment,throughwhichdirectdatatransmissionbetweencomputershasgreatlyincreasedthevalueofcomputers.Today,theInternethasenabledtensofmillionsofcomputerstotransmitvarioustypesofdatatoeachother.
Program
Inshort,acomputerprogramisaserialofinstructionsthatthecomputerexecutes.Itcanbejustafewinstructionstoperformasimpletask,oritcanbeacomplexinstructionqueuethatmayhavetomanipulateahugeamountofdata.Manycomputerprogramscontainmillionsofinstructions,manyofwhichmaybeexecutedrepeatedly.In2005,atypicalpersonalcomputercouldexecuteapproximately3billioninstructionspersecond.Computersusuallydonotexecutesomeverycomplicatedinstructionstoobtainadditionalfunctions,buttheyaremoreinaccordancewiththeprogrammer'sarrangementtorunthosesimplerbutnumerousshortinstructions.
Undernormalcircumstances,programmersdonotdirectlywriteinstructionsforthecomputerinmachinelanguage.Theresultcanonlybetime-consuming,laborious,inefficient,andfullofloopholes.Therefore,programmersgenerallywriteprogramsin"high-level"languages,andthensomespecialcomputerprograms,suchasinterpretersorcompilers,translatethemintomachinelanguage.Someprogramminglanguageslookveryclosetomachinelanguage,suchasassembler,whichisconsideredlow-levellanguage.Otherlanguages,suchasProlog,whichisbasedonabstractprinciples,completelyignorethedetailsoftheactualoperationofthecomputerandcanbedescribedashigh-levellanguages.Foraspecifictask,thelanguageshouldbeselectedaccordingtoitsbusinesscharacteristics,programmerskills,availabletools,andcustomerneeds,ofwhichcustomerneedsarethemostimportant(theAdalanguageisusuallyrequiredforengineeringprojectsintheUSandChinesemilitary).
Computersoftwareisanothertermthatisnotequivalenttocomputerprograms.Computersoftwareisamoreinclusivetechnicaltermthatincludesvariousprogramsandallrelatedmaterialsusedtocompletetasks.Forexample,avideogameincludesnotonlytheprogramitself,butalsopictures,sounds,andotherdatacontenttocreateavirtualgameenvironment.Intheretailmarket,anapplicationonacomputerisjustacopyofsoftwareforalargenumberofusers.TheusualexamplehereisofcourseMicrosoft'sofficesoftwaregroup,whichincludesaseriesofinterrelatedprogramsforgeneralofficeneeds.
Usingthoseextremelysimplemachinelanguageinstructionstorealizecountlesspowerfulapplicationsoftwaremeansthatitsprogrammingscaleisdestinedtobelarge.TheC++high-levellanguagesourcecodecontainedintheWindowsXPoperatingsystemprogramreaches40millionlines.Ofcoursethisisnotthebiggest.Suchahugesoftwarescalealsoshowstheimportanceofmanagementinthedevelopmentprocess.Inactualprogramming,theprogramwillbesubdividedintoascalethateveryprogrammercancompleteinanacceptabletime.
Evenso,thesoftwaredevelopmentprocessisstillslow,unpredictable,andalotofomissions.Theemergenceofsoftwareengineeringfocusesonhowtospeedupworkprogressandimproveefficiencyandquality.
Functionlibraryandoperatingsystem
Shortlyafterthebirthofthecomputer,peoplefoundthatcertainspecifictaskshavetobeimplementedinmanydifferentprograms,suchascalculatingcertainstandardmathematicalfunctions.Forefficiencyreasons,thestandardversionsoftheseprogramsarecollectedintoa"library"foreachprogramtocall.Manytasksoftenrequireadditionalprocessingofawidevarietyofinputandoutputinterfaces.Atthistime,thelibraryusedforconnectioncancomeinhandy.
Inthe1960s,withtheindustrializationofcomputers,computerswereincreasinglyusedtoprocessdifferenttasksinanorganization.Soon,specialsoftwareappearedthatcouldautomaticallyscheduleandexecutejobs.Thesesoftwaresthatbothcontrolthehardwareandareresponsibleforjobschedulingarecalled"operatingsystems."AnexampleofanearlyoperatingsystemisIBM'sOS/360.
Incontinuousimprovement,theoperatingsystemhasintroducedatimesharingmechanism-concurrency.Thisallowsmultipledifferentusersto"simultaneously"usethemachinetoexecutetheirownprograms,anditlookslikeeveryonehastheirowncomputer.Tothisend,theoperatingsystemneedstoprovideeachuserwitha"virtualmachine"toseparatedifferentprograms.Asthenumberofdevicesthatneedtobecontrolledbytheoperatingsystemisincreasing,oneofthemistheharddisk.Therefore,theoperatingsystemhasintroducedfilemanagementanddirectorymanagement(folders),whichgreatlysimplifiestheapplicationofsuchpermanentstoragedevices.Inaddition,theoperatingsystemisalsoresponsibleforsecuritycontroltoensurethatuserscanonlyaccessthosefilesthathavebeenallowed.
Ofcourse,thelastimportantstepinthedevelopmentoftheoperatingsystemsofaristoprovideastandardgraphicaluserinterfacefortheprogram.Althoughthereisnotechnicalreasonthattheoperatingsystemmustprovidetheseinterfaces,operatingsystemvendorsalwayshopeandencouragethesoftwarerunningontheirsystemstobeconsistentorsimilarinappearanceandbehaviorcharacteristicstotheoperatingsystem.
Inadditiontotheabovecorefunctions,theoperatingsystemalsoencapsulatesaseriesofothercommonlyusedtools.Althoughsomeofthemarenotofgreatsignificancetocomputermanagement,theyareveryusefultousers.Forexample,Apple'sMacOSXincludesavideoeditingapplication.
Someoperatingsystemsforsmallercomputersmaynotusesomanyfeatures.Earlymicrocomputersdidnotprovideadditionalfunctionsduetolimitedmemoryandprocessingcapabilities,whileembeddedcomputersusedspecificoperatingsystemsorsimplydidnot.Theyoftendirectlyproxycertainfunctionsoftheoperatingsystemthroughapplications.
Application
Inthebeginning,largeandexpensivedigitalcomputersweremainlyusedtoperformscientificcalculations,especiallymilitarysubjects.Forexample,ENIACwasfirstusedtocalculatecross-sectionalneutrondensitywhendesigningartilleryshellsandhydrogenbombs(manysupercomputersstillplayahugeroleinsimulatingnucleartests).ThefirststoredprogramcomputerCSIRMkIdesignedinAustraliaisresponsiblefortheevaluationofrainfallinthecatchmentareaofhydropowerprojects.Othersareusedfordecryption,suchastheBritish"Colossus"programmablecomputer.Exceptfortheseearlyscientificormilitaryapplications,thepopularizationofcomputersinotherfieldsisalsoveryrapid.
Fromtheverybeginning,stored-programcomputershavebeencloselyrelatedtothesolutionofbusinessproblems.BeforethebirthofIBM'sfirstcommercialcomputer,BritishJ.LyonsandothersdesignedandmanufacturedLEOforassetmanagementorothercommercialpurposes.Duetocontinuedvolumeandcostcontrol,computersbegantospreadtosmallerorganizations.Coupledwiththeinventionofthemicroprocessorinthe1970s,cheapcomputersbecameareality.Inthe1980s,personalcomputersbecamepopular,andelectronicdocumentwritingandprinting,budgetcalculationsandotherrepetitivereporttasksbegantorelymoreandmoreoncomputers.
Ascomputersbecamecheaper,creativeartisticworkbegantousethem.Peopleusesynthesizers,computergraphicsandanimationtocreateandmodifysounds,images,andvideos.Theindustrializationofvideogamesalsoshowsthatcomputershavealsocreatedanewhistoryinentertainment.
Sincetheminiaturizationofcomputers,thecontrolofmechanicalequipmenthasbeguntorelyonthesupportofcomputers.Infact,itwaspreciselyinthepastthatthebuildingofasmallenoughembeddedcomputertocontroltheApollo1stimulatedtheleapofintegratedcircuittechnology.Today,itismuchmoredifficulttofindanactivemechanicaldevicethatisnotcontrolledbyacomputerthanitistofindadevicethatisevenpartiallycontrolledbyacomputer.Probablythemostfamouscomputer-controlleddevicesarerobots,whichhaveamoreorlesshumanappearanceandacertainsubsetofhumanbehavior.Inmassproduction,industrialrobotshavebecomecommonplace.However,completeanthropomorphicrobotsarestillinsciencefictionorlaboratory.
Robottechnologyisessentiallythephysicalexpressionlinkinthefieldofartificialintelligence(AIartificialintelligence).Theso-calledartificialintelligence(AIartificialintelligence)isavaguelydefinedconcept,butitiscertainthatthisdisciplineistryingtomakecomputershavecapabilitiesthattheydonotcurrentlyhavebutareinherentashumanbeings.Overtheyears,manynewmethodshavebeendevelopedtoallowcomputerstodothingsthatwerepreviouslythoughttobeonlyhuman.Suchasreadingandplayingchess.However,sofar,thedevelopmentofcomputerswiththegeneral"holistic"intelligenceofhumanbeingshasbeenveryslow.
Internet,Internet
Sincethe1950s,computershavebeenusedastoolsforcoordinatinginformationfromdifferentplaces.TheSageSystem(SAGE)oftheUSmilitaryisthefirstinthisregard.Alarge-scalesystem.Sincethen,aseriesofspecial-purposecommercialsystemssuchasthe"Saber"havealsocontinuedtoemerge.
Afterthe1970s,computerengineersinvariousuniversitiesintheUnitedStatesbegantousetelecommunicationstechnologytoconnecttheircomputers.SincethisworkissponsoredbyARPA,itscomputernetworkisalsocalledARPANET.Sincethen,thetechnologyusedintheARPAnetworkhasrapidlyspreadandevolved,andthisnetworkhasalsobrokenthroughthescopeofuniversitiesandmilitaryforcesandfinallyformedtoday'sInternet.Theemergenceofthenetworkhasledtotheredefinitionofcomputerattributesandboundaries.JohnGageandBillJoyofSunMicrosystemspointedout:"Thenetworkisthecomputer."Computeroperatingsystemsandapplicationprogramshavedevelopedinthedirectionofbeingabletoaccessnetworkresourcessuchasothercomputersinthenetwork.Initially,thesenetworkdeviceswereonlyusedbyhigh-endscientificworkers,butafterthe1990s,withtheproliferationofe-mailandWorldWideWebtechnology,andthecheapernetworkconnectiontechnologiessuchasEthernetandADSL,theInternethasbecomeubiquitous.ThetotalnumberofcomputersconnectedtotheInternettodayismorethantensofmillions;thepopularizationofwirelessInternettechnologymakestheInternetgohandinhandinthemobilecomputingenvironment.Forexample,Wi-FitechnologywidelyusedinnotebookcomputersisarepresentativeapplicationofwirelessInternetaccess.
Afterthe1990s,whenthetelephonemodemMODEMtechnologymatured,itwasdialedfromnarrowbandtelephonesandupgradedtobroadbanddata.Thisrepresentstheadventofaneweraofinternet,wherethespeedofjogginghaschangedtothespeedofdriving.Atthesametime,thehabitsofcomputerusersarechanged,andthewayofcommunicationontheInternet,suchasinstantmessagingorSKYPE,hasbeenmorepopular.Inthepast,onlytextmessagingcouldbeupgradedtovideoandaudiotransmission.However,theeraofcloudandbigdatacreatedvariousnewtypesofindustries,suchastheInternet.Stores,onlinee-commerce,onlineauctions,onlinesales,onlinegames,onlinedesignandinstallation,andincreasinglycommonclouddatadatabasesorbackuplibrariesareconstantlyoptimizingandchangingexistinghumanlives.
Thenextgenerationofcomputers
Sincetheadventofdigitalcomputers,thespeedandcapabilitiesofdigitalcomputershaveimprovedconsiderably,andsofartherearestillmanytopicsbeyondthecapabilitiesofcurrentcomputers.Forsomeofthesesubjects,traditionalcomputersareimpossibletoachieveinanycase,becausethetimetofindasolutioncannotkeepupwiththeexpansionspeedofthescaleoftheproblem.Therefore,scientistsbegantoturntheirattentiontobiologicalcomputingtechnologyandquantumtheorytosolvethistypeofproblem.Forexample,peopleplantousebiologicalprocessingtosolvespecificproblems(DNAcomputing).Duetotheexponentialgrowthofcelldivision,DNAcomputingsystemsarelikelytohavetheabilitytosolveproblemsofthesamescale.Ofcourse,suchasystemisdirectlylimitedbytheamountofDNAthatcanbecontrolled.
Quantumcomputers,asthenamesuggests,takeadvantageoftheextraordinarypropertiesofthequantumphysicsworld.Onceaquantumcomputercanbebuilt,itsincreaseinspeedwillmakeitdifficultforordinarycomputerstomatch.Ofcourse,thiskindofnext-generationcomputerinvolvingcryptographyandquantumphysicssimulationisstillatthestageofconception.
ComputerScience
Intoday'sworld,almostallmajorsarecloselyrelatedtocomputers.However,onlycertainprofessionsanddisciplinescanin-depthstudyofcomputermanufacturing,programmingandusetechnology,whichisusedtointerpretthemeaningofvariousacademictermsindifferentresearchfieldsincomputerdisciplines.Atthesametime,newdisciplinesarealsoemerginginendlessly.
Computerengineering:isabranchofelectronicengineeringthatmainlystudiescomputersoftwareandhardwareandtherelationshipbetweenthetwo.
Computerscience:isthetraditionaltermforacademicresearchoncomputers.Mainlyresearchcomputingtechnologyandefficientalgorithmstoperformspecifictasks.Thissubjectisforustodeterminewhetheraproblemissolvableinthecomputerfield,suchashowefficientlyitissolvable,andhowtomakeamoreefficientprogram.Today,manybrancheshavebeenderivedincomputerscience,andeachbranchconductsin-depthresearchondifferenttypesofproblems.
Softwareengineering:focusesontheresearchanddevelopmentofhigh-qualitysoftwaresystemmethodologyandpractices,andattemptstocompressandpredictdevelopmentcostsanddevelopmentcycles.
Informationsystem:studythecomputerapplicationofcomputersinawideorganizedenvironment(business-oriented).
Manydisciplinesareintertwinedwithotherdisciplines.Forexample,geographicinformationsystemexpertsusecomputertechnologytomanagegeographicinformation.
Therearethreelarge-scaleorganizationsdedicatedtocomputerscienceintheworld:BritishComputerSociety;AmericanComputerAssociation(AmericanComputerAssociation);AmericanInstituteofElectricalandElectronicsEngineers.