Please enable JavaScript.
Coggle requires JavaScript to display documents.
1.2.2 application genration (linkers loaders and libarys (why reuse code…
1.2.2 application genration
the nature of applications
application
allows user to carry out a task and produce somthing on a computer
word proccer
desktop publishers
spreadsheats
DBMS
slide and presentation
multimedia / editing
photo and grpahics
communications , chat , IM
social networking
Email
browers
gaming
utility
small programs that have one purpose is for maintance and well runing of a computer
e.g
antivirus
disk defragmentation
compresion
file mangmers
fire walls
backing up utilities
system
considerations
speed
cost
hardware
memory
cloud based
application vs utility
application make or do somthing
power point
word
publisher
utility small and for upkeep
compresser
file magers
backup
defrag
antivirus
open Vs closed source programs
open
any software which is supplied along with its source code
allowed to be alterd
allowed to be reditubted
free
encourages mass user development and creativity
linux
secrity bugs can be found
lacsk polish
thousands of people
army's of volnterrs
pre made functionality can be specilsed
closed source
supplied pre complied
source code not avaliable
copyrighted
proprietaty
polished
more secure
translateors
asmeblers
low level assmble code to machine code
one to one relationship
each line is one line of machine code
not portable - processors spedific
compiler
high level
to object code
one to many
complies hole code
source code no longer needed
runs faster but takes time to comple
software becomes hardware specific
interpreter
high level
to bject code
one to many
converts one level to machine code at a time
good for debugging
runs instantly until error is found
needs access to whole source code and translater for every time the code is run
excutes slowly
makes soft ware tranferable
application genration
how compilers compile souce code to object code
compilers run through parses and performs actions to carry out set tasks once complete the efficient machine code is ready
lexical anaylisi
all comments and white spaces are removed
code is turned in to tokens - lexi coins
in order to keep track of variables and functions a symbol table is created including information on data types and scope
syntax anaylisis
checks against rules
abstract syntax tree is created
if any rules broken a error is genrated
code genrated
sytnax tree is turned in to object code
opitmised
removes redundant code
variables and presdures uncalled
linkers loaders and libarys
why reuse code libraries
dont re invent the wheel
pre tested
saves timed
pre compliled
adds reference to library to use
object code is combined using a linker to add in the libarys
static liking ocmbines libarys
meaning all code is added to finsh code making prgams large
each program have there own copy of the code
dynamic linkings
library stored in computer to reduce file size
loaders are now used
API used to add libraries even when written in different languages
linker
compiles in too a single file