Company
Server:
svn+git+trac+doxygen+bugzilla+apache+(html to pdf and vice versa)
client
svn+git,doxygen,web browser
2.self initializing system and self replicating system
a system can itself send to remote and execute a program,the remote should have a thread,stack
Tuesday, August 31, 2010
Tuesday, August 24, 2010
eng cont.
1.in addition to con/dec,network .... cloning is a scalable entity
2.mass as trasmit packet, transport system revolution
3.unison of bio and hightech industry
4.mass relocation with clone property , army ,replacement
5.initially law will allow only non-living objects
6.older tranports become legacy
7.mass as packet ...makes existing tech as legacy ...petrol is relocated
8.energy as packet will happen first than mass
9.unified wisdom ....p-s global network is more realistic than other two above
main idea being , wisdom account per person, queries sent to it and result from it obtained
using mobiles
can it create stories
can it create plots
can it create sub-plots
1.user should give feedbacks to the account, day to day basis
2.system on each feedback iterates till balance
3.on queries it gives back the possibilities
cloning can sometimes used as means of info transfer
eg ..the bit state travelling across adjescent blocks and the final one showing the same state
2.mass as trasmit packet, transport system revolution
3.unison of bio and hightech industry
4.mass relocation with clone property , army ,replacement
5.initially law will allow only non-living objects
6.older tranports become legacy
7.mass as packet ...makes existing tech as legacy ...petrol is relocated
8.energy as packet will happen first than mass
9.unified wisdom ....p-s global network is more realistic than other two above
main idea being , wisdom account per person, queries sent to it and result from it obtained
using mobiles
can it create stories
can it create plots
can it create sub-plots
1.user should give feedbacks to the account, day to day basis
2.system on each feedback iterates till balance
3.on queries it gives back the possibilities
cloning can sometimes used as means of info transfer
eg ..the bit state travelling across adjescent blocks and the final one showing the same state
eng
1.3 components
a.vm c++
b.bain loop
c.token-context bucket
1.objects,states,actions(behaviours)
2.input bkt,env bkt,output bkt
3.any of them can be pure object,state,action or combo
4.starts with input ...works through env bkt and ends in out bkt
2.p-s can contain direct tokens or indirect
lock-c, lock-s, door-frame, door
components can have inherited property A on B ...B is A
3.if energy can be packet with mass
4.conv-decon for mass-wave, then efficient transfer as per requirement
1.converter-deconverter,2 to n networking ...scope
a.vm c++
b.bain loop
c.token-context bucket
1.objects,states,actions(behaviours)
2.input bkt,env bkt,output bkt
3.any of them can be pure object,state,action or combo
4.starts with input ...works through env bkt and ends in out bkt
2.p-s can contain direct tokens or indirect
lock-c, lock-s, door-frame, door
components can have inherited property A on B ...B is A
3.if energy can be packet with mass
4.conv-decon for mass-wave, then efficient transfer as per requirement
1.converter-deconverter,2 to n networking ...scope
Sunday, August 22, 2010
eng
1.a technology that can measure the relative distance between two objects (radar ... in small range)
not indirect .. like from signals of cellphones etc
2.a technology that can recognize an object beyond visual range
not indirect
3.a technology that can recognize a particular object in a moving video
4.a technology that can recognize a sound as belonging to object
5.a technology that can count objects in front
6.a technology that can hijack a nearby connectivity to send emergency, that can detect nearby usable connectivity
7.realtime connectivity ... packet connectivity
1.that can calculate the number of words typed remotely(non indirect)
3.that can replicate a 3 d structure (not indirect)
4.a tecnology that can calculate the exact amount of water,oxygen required for a period of next 1 hr
5.a technology that can measure the infection organisms threashold
6.a technology that can create energy packets .. that can be networked
7.1 to n conversion of any technology
8.a technology that can heal tissue rupture within hours
9.a technology that can calculate and tell if a person is at balance or what is his balance threashold
10.
not indirect .. like from signals of cellphones etc
2.a technology that can recognize an object beyond visual range
not indirect
3.a technology that can recognize a particular object in a moving video
4.a technology that can recognize a sound as belonging to object
5.a technology that can count objects in front
6.a technology that can hijack a nearby connectivity to send emergency, that can detect nearby usable connectivity
7.realtime connectivity ... packet connectivity
1.that can calculate the number of words typed remotely(non indirect)
3.that can replicate a 3 d structure (not indirect)
4.a tecnology that can calculate the exact amount of water,oxygen required for a period of next 1 hr
5.a technology that can measure the infection organisms threashold
6.a technology that can create energy packets .. that can be networked
7.1 to n conversion of any technology
8.a technology that can heal tissue rupture within hours
9.a technology that can calculate and tell if a person is at balance or what is his balance threashold
10.
eng
1.by default control eng is running
2.incoming info is stored in xml format
3.during branch jumps,backlink is maintained, function call simulation
4.during a build cycle the xml info is used to build the target engine
5.existing operating system libraries are used to build this new structure
1.need to define the xml as a summerised problem and solution
2.that will allow to use this information in other scenarios
3.or the machine itself will be able to use this information in other contexts
1.an example representation of the problem,solution is by using sets
eg:a set representing communication domain consisting of 2 component sets sender,receiver
they exchange tokens
2.In a system there will be multiple ,p-s contexts ... it should be link these p-s contexts to
create new p-s contexts, purely by machine
2.incoming info is stored in xml format
3.during branch jumps,backlink is maintained, function call simulation
4.during a build cycle the xml info is used to build the target engine
5.existing operating system libraries are used to build this new structure
1.need to define the xml as a summerised problem and solution
2.that will allow to use this information in other scenarios
3.or the machine itself will be able to use this information in other contexts
1.an example representation of the problem,solution is by using sets
eg:a set representing communication domain consisting of 2 component sets sender,receiver
they exchange tokens
2.In a system there will be multiple ,p-s contexts ... it should be link these p-s contexts to
create new p-s contexts, purely by machine
eng
1.default has bain looper with stack and control transport
2.default looper has link to xml token representation
3.the looper can create a system by reading the representation of xml
4.similar to this n number of other xml contexts can be interpreted by the looper
5.the xml contains statics,events,types,states tokens
6.the xml context is again represented in set tokens
7.this notation will help different contexts to work combined way
2.default looper has link to xml token representation
3.the looper can create a system by reading the representation of xml
4.similar to this n number of other xml contexts can be interpreted by the looper
5.the xml contains statics,events,types,states tokens
6.the xml context is again represented in set tokens
7.this notation will help different contexts to work combined way
Saturday, August 21, 2010
eng
1.accounts on a common server,each account having a persistant thread
2.feedback through mail,special xml template
3.account to account communication
4.account to user communication, xml template
1.personal reminders,account settlements,threshold intimations,collaboration updates,database filling,xml based query and transfer
2.step 1 to 5 for goal
step 2 has 3 routes,step 3 has 2 routes
take right step at every instance to reach the goal
borrow information from another account - need to know when information is required and
how to ask for it and where from to ask
make a hypothesis, run it check the result and modify it
once the information is obtained , run it match the intermediate goals
ultimate and intermediate goals
storage,retrieval,verification all expressible by xml template
all action takes place in current context, can have link to other contexts
intermediate goals can pull in other contexts as well
need a sample where one previous state,hypothesis,current context , intermediate goal all
are expressed in xml
2.feedback through mail,special xml template
3.account to account communication
4.account to user communication, xml template
1.personal reminders,account settlements,threshold intimations,collaboration updates,database filling,xml based query and transfer
2.step 1 to 5 for goal
step 2 has 3 routes,step 3 has 2 routes
take right step at every instance to reach the goal
borrow information from another account - need to know when information is required and
how to ask for it and where from to ask
make a hypothesis, run it check the result and modify it
once the information is obtained , run it match the intermediate goals
ultimate and intermediate goals
storage,retrieval,verification all expressible by xml template
all action takes place in current context, can have link to other contexts
intermediate goals can pull in other contexts as well
need a sample where one previous state,hypothesis,current context , intermediate goal all
are expressed in xml
focus
1.push button focus is rare
2.natural way is by the process of elimination
3.thinking and retrying about subject or subjects,circling around it,then falling in place
2.natural way is by the process of elimination
3.thinking and retrying about subject or subjects,circling around it,then falling in place
Friday, August 20, 2010
work split
1. 100 for 80 - 20 rule
2. work unit,time unit
3. measure 100 in work and time unit
4. measure 20 in work and time unit
5. implementation should belong in 20, meaningful entity at a time
6.
2. work unit,time unit
3. measure 100 in work and time unit
4. measure 20 in work and time unit
5. implementation should belong in 20, meaningful entity at a time
6.
template query
1.A and B asks the server for similar information
2.A,B gives the template in which the information is sent
3.uses xml for this purpose
2.A,B gives the template in which the information is sent
3.uses xml for this purpose
Thursday, August 19, 2010
behavioural framework
1.the proto framework -- store,content model
2.control channel , normal channel
3.control mode,normal mode
4.ability to share objects to remote,file transfer
usage
begin with simple objects
sequentially build up the framework
get knowledge from another framework --- info share
motivation and means by which one framework asks another for objects
2.control channel , normal channel
3.control mode,normal mode
4.ability to share objects to remote,file transfer
usage
begin with simple objects
sequentially build up the framework
get knowledge from another framework --- info share
motivation and means by which one framework asks another for objects
Tuesday, August 17, 2010
inline
1.inline
2.static inline
3.extern inline
ssh-keygen -t rsa
strip --debug-str[-s,-o file] .ko
google gadgets
site has an editor and api support to create small web gadgets
2.static inline
3.extern inline
ssh-keygen -t rsa
strip --debug-str[-s,-o file] .ko
google gadgets
site has an editor and api support to create small web gadgets
c++
1.store == prcontext
2.content == prcontext
3.args = prevent
4.single thread while loop
stack of frame
each frame queue of doublet (store,prevent)
loop:
from top
get first doublet
execute ->move_data(prevent)
move_data:
get protolayer context
get buffer
get state
create new arg
find next instruction
enqueue at tail of current frame
2.content == prcontext
3.args = prevent
4.single thread while loop
stack of frame
each frame queue of doublet (store,prevent)
loop:
from top
get first doublet
execute ->move_data(prevent)
move_data:
get protolayer context
get buffer
get state
create new arg
find next instruction
enqueue at tail of current frame
c++
1.structurals form locations
2.locations contain other structures
3.*A = B relation
4.location and content are of same type
5.call into location is passed on to the content
6.makes possible for dynamic change of the content
7.content is data or instruction
8.content = content + event
2.locations contain other structures
3.*A = B relation
4.location and content are of same type
5.call into location is passed on to the content
6.makes possible for dynamic change of the content
7.content is data or instruction
8.content = content + event
Monday, August 16, 2010
composition
1.dash board arrangement is better during the development stage
2.in class composition at the time of deployment
2.in class composition at the time of deployment
pathfinder
1.compile a binary
keywords - os, source code, environment, toolchain
2.load os
do action
3.load source code
do
4.load env
5load toolchain
6.compile
problem domain -- has data
1.solution has data + actions
keywords - os, source code, environment, toolchain
2.load os
do action
3.load source code
do
4.load env
5load toolchain
6.compile
problem domain -- has data
1.solution has data + actions
Sunday, August 15, 2010
pathfinder
1.info stored in elements -- represented in xml format(metadata)
2.2 types static , structural info, dynamic info
3.static, basic framework of information domain
4.dynamic includes even state information with metadata
5.static,dynamic prints should be remotable
1.processing steps need to be associated with xml tree traversal,incoming tokens needs to be compared with the paths originating at current context and appropriate branch should be selected
2.2 types static , structural info, dynamic info
3.static, basic framework of information domain
4.dynamic includes even state information with metadata
5.static,dynamic prints should be remotable
1.processing steps need to be associated with xml tree traversal,incoming tokens needs to be compared with the paths originating at current context and appropriate branch should be selected
why c++ not in kernel
linux - choice by linus torvalds to keep it out
windows - at the time of nt,xp driverstudio was available written by israeli engineers for c++
support on kernel
now wdf supports it
it needs special libraries, for constructors etc ... exception would be out .. its heavy , RTTI may be out???
ecos is c++, but it doesnt have distinction between kernel and user
there is a kernel written by italian guy which is in c++ ... its makefile is complicated
nachos is c++ , more like an interpreter
these side things will never catch up because for software, progressive development will always preferred rather than starting from scratch
its an art to derive stability out of chaos, many softwares
windows - at the time of nt,xp driverstudio was available written by israeli engineers for c++
support on kernel
now wdf supports it
it needs special libraries, for constructors etc ... exception would be out .. its heavy , RTTI may be out???
ecos is c++, but it doesnt have distinction between kernel and user
there is a kernel written by italian guy which is in c++ ... its makefile is complicated
nachos is c++ , more like an interpreter
these side things will never catch up because for software, progressive development will always preferred rather than starting from scratch
its an art to derive stability out of chaos, many softwares
solutions
1.elimination
2.comparison
3.reinterpreting
4.transformation
2.comparison
3.reinterpreting
4.transformation
pathfinder
1.All practical information needs to be encoded by a process
2.There should be metadata associated with this encoding process
3.The encoded information should be stored in database
4.It should be possible to create new information to be encoded using the previously stored
information as an element
5.It should be possible to solve a problem in a given context using the previously stored encodings
and the current problem context
6.It should be possible to alternate solutions to the same problem using different paths
7.It should be possible to determine if the alternate path chosen is right or wrong based on some
parameters
8.A machine should be able to use this encoded database to define new problems and suggest solutions
9.This machine should definitely be able to solve currently known
10.These problems and solutions the machine should be able to store in its private database which
will have a communication link to public database
11.This machine should be able to collaborate with other similar machines on a concrete platform to
find new problem domains and solutions
12.
2.There should be metadata associated with this encoding process
3.The encoded information should be stored in database
4.It should be possible to create new information to be encoded using the previously stored
information as an element
5.It should be possible to solve a problem in a given context using the previously stored encodings
and the current problem context
6.It should be possible to alternate solutions to the same problem using different paths
7.It should be possible to determine if the alternate path chosen is right or wrong based on some
parameters
8.A machine should be able to use this encoded database to define new problems and suggest solutions
9.This machine should definitely be able to solve currently known
10.These problems and solutions the machine should be able to store in its private database which
will have a communication link to public database
11.This machine should be able to collaborate with other similar machines on a concrete platform to
find new problem domains and solutions
12.
organizer
1.should be able to setup on account basis
2.reminders,alarms,thresholds
3.through sms gateway should notify the mobile users
2.reminders,alarms,thresholds
3.through sms gateway should notify the mobile users
wireless sensors
1.source sends the beam across
2.objects reflect it
3.the reflected beam is interpreted and used to create sounds or vibrations
4.used for disabled persons
5.should be fittable on modile phones
2.objects reflect it
3.the reflected beam is interpreted and used to create sounds or vibrations
4.used for disabled persons
5.should be fittable on modile phones
Saturday, August 14, 2010
work flow
1.additional steps include
compilation
modification
debugging
2.favoured flow
50 - tht
20 - 15 code + 5 modification + compile
30 - debug
compilation
modification
debugging
2.favoured flow
50 - tht
20 - 15 code + 5 modification + compile
30 - debug
Thursday, August 12, 2010
protocol
1.dashboard configuration of protocol stack is not feasible because every layer setup
needs info about the previous layer and next layer
2.alternative is to do the setup within a layers context
3.when in the context it sets up the next layer , depth layers can be returned back
needs info about the previous layer and next layer
2.alternative is to do the setup within a layers context
3.when in the context it sets up the next layer , depth layers can be returned back
android graphics
1.graphics system is based on pipeline
2.A-->B-->rendering
3.in android there is the concept of surfaces,layers
4.its kind of stack arrangement where we see things that are on top
5.a layer can have multiple surfaces and multiple windows
6.a surface gets pushed to hardware for rendering
2.A-->B-->rendering
3.in android there is the concept of surfaces,layers
4.its kind of stack arrangement where we see things that are on top
5.a layer can have multiple surfaces and multiple windows
6.a surface gets pushed to hardware for rendering
protocol state machine
below are some state handling scenarios
1.before sending connection request, complete comes
2.before connection request pending, complete comes
3.without a previous connection, connection reconfiguration comes
4.without a previous connection, close comes
5.without sending a connection request accept or reject comes
baseline for some of the in/out requests, checking of states are mandatory
some of them passes through this first layer, another layer of checking
sometimes state transition calls are synchronous
1.nas connection request may call rrc connection request and wait till it is completed
before changing its state
1.before sending connection request, complete comes
2.before connection request pending, complete comes
3.without a previous connection, connection reconfiguration comes
4.without a previous connection, close comes
5.without sending a connection request accept or reject comes
baseline for some of the in/out requests, checking of states are mandatory
some of them passes through this first layer, another layer of checking
sometimes state transition calls are synchronous
1.nas connection request may call rrc connection request and wait till it is completed
before changing its state
work flow
1.total work progress should follow the ratio of 80/20
2. 80 on abstract level -- tgt
3. 20 on paper -- code
2. 80 on abstract level -- tgt
3. 20 on paper -- code
Wednesday, August 11, 2010
storage media
1.boot sector
contains an execitable program within 512 bytes
contains a partition table
2.Partition table
contains entries for the different types of file systems distributes over the entire disk space
contains the addressible max space for the filesystem
Max number of primary partitions is 4
May be chaining of partition tables are possible
contains an execitable program within 512 bytes
contains a partition table
2.Partition table
contains entries for the different types of file systems distributes over the entire disk space
contains the addressible max space for the filesystem
Max number of primary partitions is 4
May be chaining of partition tables are possible
msi, msix basic idea
1.legacy system motherboards have the pci interrupt lines hardwired to cpu's in 1 to 1 manner in a SMP system
2.so if a device was allocated INT A line its interrupt would endup on proc 1
3.though the interrupt post processing can happen on any proc x because of DPC
4.msi,msi-x provides mechanism to dynamically decide the destination of an interrupt
5.there is a junction to which the interrupts are routed and where it is decided upon the cpu on which it will end
6. the whole process is transparent to the software
7. in this method additional pre specified context informations can also be specified with the interrupt
8. earlier interrupt handler used to take device_object as the incoming parameter
9. now it will be possible to associate context parameter to different interrupt lines , so that
for that line you will get a corresponding context
10.for eg assume that we have 6 receive queues, that have been programmed to transfer interrupts to 3 lines
11. so every time data comes to a receive queue, interrupt handler with corresponding queue context or device object with a queue number as parameter will be called.
2.so if a device was allocated INT A line its interrupt would endup on proc 1
3.though the interrupt post processing can happen on any proc x because of DPC
4.msi,msi-x provides mechanism to dynamically decide the destination of an interrupt
5.there is a junction to which the interrupts are routed and where it is decided upon the cpu on which it will end
6. the whole process is transparent to the software
7. in this method additional pre specified context informations can also be specified with the interrupt
8. earlier interrupt handler used to take device_object as the incoming parameter
9. now it will be possible to associate context parameter to different interrupt lines , so that
for that line you will get a corresponding context
10.for eg assume that we have 6 receive queues, that have been programmed to transfer interrupts to 3 lines
11. so every time data comes to a receive queue, interrupt handler with corresponding queue context or device object with a queue number as parameter will be called.
c++ protocol
1. base class level specialization may be required
2. default contexts can increase in number based on specialization
3. demux,mux contexts can vary in implementation based on separate threads or live thread system
2. default contexts can increase in number based on specialization
3. demux,mux contexts can vary in implementation based on separate threads or live thread system
engineering everywhere
needs
1.a remote repo
2.basic environment, browser, bin cache(pkg), lib cache(pkg), ide, toolchains should be present in remote repo
3.fast download of the above to local repo
4.local repo has hooks to make the contents active on a button click
5.local repo has a rsync option so that any updation to its contents can be synced to remote repo
way to achieve this
1.use debootstrap , chroot method ... try first on usb pen drive
issues
1.typical remote repo size will be in gb's
1.a remote repo
2.basic environment, browser, bin cache(pkg), lib cache(pkg), ide, toolchains should be present in remote repo
3.fast download of the above to local repo
4.local repo has hooks to make the contents active on a button click
5.local repo has a rsync option so that any updation to its contents can be synced to remote repo
way to achieve this
1.use debootstrap , chroot method ... try first on usb pen drive
issues
1.typical remote repo size will be in gb's
compilers
1.cross compilers , host x, target y -- executable x, object-file y
2.cross debugger, host x, target y --- executable x, interprets y
linux kgdb basic idea
1.enable kernel hacking serial option ,select serial hardware
2.change kernel boot parameters,kgdbwait
3.when kernel boots it waits
4.on host open cross debugger,open vmlinuz from the kernel source root,set source path connect
5.to test if working set a well know system entry break point
6.press continue
7.it should hit the breakpoint
8.system.map is not necessary on target, it is used to resolve symbols in case of crashes on the kernel
2.cross debugger, host x, target y --- executable x, interprets y
linux kgdb basic idea
1.enable kernel hacking serial option ,select serial hardware
2.change kernel boot parameters,kgdbwait
3.when kernel boots it waits
4.on host open cross debugger,open vmlinuz from the kernel source root,set source path connect
5.to test if working set a well know system entry break point
6.press continue
7.it should hit the breakpoint
8.system.map is not necessary on target, it is used to resolve symbols in case of crashes on the kernel
Tuesday, August 10, 2010
arm board(beagle clones) - how to see it
1. has both wince and linux support
2. has 2 boot options .. from nand and mmc/sd
3. mmc/sd serves the purpose of floppy on desktop
4. with a bareskeleton nand , mmc booting can be used to flash other components to it
5. with a zero nand content , special techniques of using serial null modem cable to set it up for
basic booting
6. binaries used for mmc/sd booting .. MLO,uboot,kernel,rfs .. for nand XLOADER,uboot,kernel rfs
7. another important component the environment variables .. they are stored on the nand
8. there is separate section for mmc/sd env and nand env .. inaddition on the nand there are some other basic data
9. rfs can be on nand or sd interchangebly
10.some useful system running over it wince,0xdroid,rowboat etc
2. has 2 boot options .. from nand and mmc/sd
3. mmc/sd serves the purpose of floppy on desktop
4. with a bareskeleton nand , mmc booting can be used to flash other components to it
5. with a zero nand content , special techniques of using serial null modem cable to set it up for
basic booting
6. binaries used for mmc/sd booting .. MLO,uboot,kernel,rfs .. for nand XLOADER,uboot,kernel rfs
7. another important component the environment variables .. they are stored on the nand
8. there is separate section for mmc/sd env and nand env .. inaddition on the nand there are some other basic data
9. rfs can be on nand or sd interchangebly
10.some useful system running over it wince,0xdroid,rowboat etc
code.google.com
1.use eclipse for easier usage
2.install svn,openssh,git-core,git-svn on ubuntu
3.precreate google project
4.add repository path in eclipse
https://prototest.googlecode.com/svn/trunk
5.goto team option in the elclipse project,click on share project
6.when asked for username and passwd goto
https://code.google.com/hosting/settings
7.select files and commit
2.install svn,openssh,git-core,git-svn on ubuntu
3.precreate google project
4.add repository path in eclipse
https://prototest.googlecode.com/svn/trunk
5.goto team option in the elclipse project,click on share project
6.when asked for username and passwd goto
https://code.google.com/hosting/settings
7.select files and commit
c++, protocol
1.common class to keep reference count
2.common class to stackup or organize similar objects
3.common class that helps to minimize operations, and demux all operations through a single interface
4.contexts to define an operations ... the operation parameters will be symmetrical across but the context determines what is done
1.context contains src,sink and signature routine that is overloaded and takes a event pointer or void args
2.it moves the data in units , minimal transition in a system
3.All layers are contexts,has a default signature functions
4.a layer has a chain of contexts each having the signature function
5.when the source to signature function is null the signature function may be in a demux context
2.common class to stackup or organize similar objects
3.common class that helps to minimize operations, and demux all operations through a single interface
4.contexts to define an operations ... the operation parameters will be symmetrical across but the context determines what is done
1.context contains src,sink and signature routine that is overloaded and takes a event pointer or void args
2.it moves the data in units , minimal transition in a system
3.All layers are contexts,has a default signature functions
4.a layer has a chain of contexts each having the signature function
5.when the source to signature function is null the signature function may be in a demux context
code.google.com
it has its own repository either svn or mercurial
to add code , local system needs svn or mercurial installed
git and mercurial are alike because they allow collaboration better
there is also a way in which your personal repository can be mirrored on code.google.com.so the
original remains with you and what you see on the web is a mirror.In addition it provides all the
flexibilities of the hosted site
to add code , local system needs svn or mercurial installed
git and mercurial are alike because they allow collaboration better
there is also a way in which your personal repository can be mirrored on code.google.com.so the
original remains with you and what you see on the web is a mirror.In addition it provides all the
flexibilities of the hosted site
Monday, August 9, 2010
c++ -- protocols
1.the protocol system boundries will have n number of static classes
2.these statics are meant to link the new calls to entry points and in way sync into c++
3.at entries event object that has a span across the layers have to be created
4.if there are 3 layers, the event thus created together with polymorphism ,a single pointer
has to be casted to get appropriate layer data structures
5.physical medium better to design half duplex objects
2.these statics are meant to link the new calls to entry points and in way sync into c++
3.at entries event object that has a span across the layers have to be created
4.if there are 3 layers, the event thus created together with polymorphism ,a single pointer
has to be casted to get appropriate layer data structures
5.physical medium better to design half duplex objects
java abstract, interfaces
concept of abstract === nterface
both needs implementations in the included classes
interfaces can be extended independently
both needs implementations in the included classes
interfaces can be extended independently
Sunday, August 8, 2010
OFDM - mac
1. bandwidth determines subcarrier frequency spectrum
2. the duration of the data is determined by grant time
3. all 1500 frequencies are required to represent a sequence of symbols
ie IFFT is
1500 x 1 mul 1 x 1500 matrix multiplication
64 QAM at a go can decode 1 symbol of 8bits or 1 byte, in the cartisian coordinates amplitude and angles representthe 64 points on the graphs each representing particular symbol
incoming bitstream is organized as a 8bits or 1 symbol, they are then imprinted on a frequency, converted to time domain, raised by central frequency and sent out
phy starts with broadcasting zadoff-chou preambles from common shared set, eNb uses a ra process to select the UE and assigns dedicated resource for future communication with the UE
so when contention is resolved or a dedicated zadoff-chou preamble is detected , phy becomes ready to forward the accompanying messages to FFT of eNb side
phy view
phy has two threads
one deals with RACH
other with other channels
when RACH thread is done ,it handovers to other thread
when other thread needs RACH it invokes that
2. the duration of the data is determined by grant time
3. all 1500 frequencies are required to represent a sequence of symbols
ie IFFT is
1500 x 1 mul 1 x 1500 matrix multiplication
64 QAM at a go can decode 1 symbol of 8bits or 1 byte, in the cartisian coordinates amplitude and angles representthe 64 points on the graphs each representing particular symbol
incoming bitstream is organized as a 8bits or 1 symbol, they are then imprinted on a frequency, converted to time domain, raised by central frequency and sent out
phy starts with broadcasting zadoff-chou preambles from common shared set, eNb uses a ra process to select the UE and assigns dedicated resource for future communication with the UE
so when contention is resolved or a dedicated zadoff-chou preamble is detected , phy becomes ready to forward the accompanying messages to FFT of eNb side
phy view
phy has two threads
one deals with RACH
other with other channels
when RACH thread is done ,it handovers to other thread
when other thread needs RACH it invokes that
OFDM - mac
each ue has 3000 subfrequencies to work with, maybe 1500 are usable for data, 1 usable for synchronization
ue will not use all of them together, for max bandwidth
it will use a subset at a time, lower bandwidth
the allocation of the specific frequency set is indicated by eNb
so at a time multiple UE's will talk with eNb under different subsets of 3000 frequencies
if an eNb is overutilised another eNb in the same area can taken over more connections than 3000
the spectrum will be shared between different eNbs in the area
each spectrum band is split into 3000
Transport Block - mac unit
the centre frequency 1500 is used for special purpose
ue will not use all of them together, for max bandwidth
it will use a subset at a time, lower bandwidth
the allocation of the specific frequency set is indicated by eNb
so at a time multiple UE's will talk with eNb under different subsets of 3000 frequencies
if an eNb is overutilised another eNb in the same area can taken over more connections than 3000
the spectrum will be shared between different eNbs in the area
each spectrum band is split into 3000
Transport Block - mac unit
the centre frequency 1500 is used for special purpose
lte - mac
1.RACH - random access channel
2.DLSCH - downlink shared channel
3.PUSCH - uplink channel
4.BCH - broadcast channel
5.PCH - paging channel
6.MCH - multicast channel
the system begins by activities on the RACH, to get initial access ie exclusive radio access
once it it done control data is sent using the accquired resource
2.DLSCH - downlink shared channel
3.PUSCH - uplink channel
4.BCH - broadcast channel
5.PCH - paging channel
6.MCH - multicast channel
the system begins by activities on the RACH, to get initial access ie exclusive radio access
once it it done control data is sent using the accquired resource
virtual memory, physical memory and os
In windows mdl holds an association between the physical pages and virtual buffers
A scatter gather entry represents a contiguous physical memory
It can span multiple pages if the vm associated extends
mostly the first SGE will have this
in this case from the virtual address find the corresponding physical address
this physical address will be on a page boundry by default
then calculate the offset of vm by finding the nearest page rounded vm and taking the difference
apply this difference to physical address
then start calculating the pages till but the last one
find the offset of the last one
In linux the procedure is same but the skb contains SGL with SGE's
A scatter gather entry represents a contiguous physical memory
It can span multiple pages if the vm associated extends
mostly the first SGE will have this
in this case from the virtual address find the corresponding physical address
this physical address will be on a page boundry by default
then calculate the offset of vm by finding the nearest page rounded vm and taking the difference
apply this difference to physical address
then start calculating the pages till but the last one
find the offset of the last one
In linux the procedure is same but the skb contains SGL with SGE's
protocol implementation
basic requirements
each layer of the protocol has a control block, and a set of callback functions and call forward functions
control block to store all the protocol related variables
callback functions for the lower layer to call into this layer
call forward functions to call into the lower layer
inaddition to this sublayering can be done in each layer
effectively top layer should handle serialization, and each lower layer handles only discontinuities
queues might be required at each layers
pre allocated buffers can be allocated for data
mostly cannot do away with dynamic allocation because there will be some linked list structures
if these can be populated during initialization all is good, otherwise need to handle systemwide
discontinuity
each layer of the protocol has a control block, and a set of callback functions and call forward functions
control block to store all the protocol related variables
callback functions for the lower layer to call into this layer
call forward functions to call into the lower layer
inaddition to this sublayering can be done in each layer
effectively top layer should handle serialization, and each lower layer handles only discontinuities
queues might be required at each layers
pre allocated buffers can be allocated for data
mostly cannot do away with dynamic allocation because there will be some linked list structures
if these can be populated during initialization all is good, otherwise need to handle systemwide
discontinuity
memory barrier
In SMP cpus sync with each other using MESI protocol
suppose a drivers buffer and a variable is declared side by side in its control block
ie
struct device {
char a;
char buff[x];
};
Unfortunately if the variable and the buffer happen to share same cache line , problems can arise
see the sequence
1.Dma writes to the buffer with shared cache line
2.user thread writes to the variable with shared cacheline
3.please note that the cpu handling dma write after process and the cpu associated with thread
might be different
4.so if the dma write after processing happens first and variable write after processing happends next the original dma content will be overwritten by the variable write
suppose a drivers buffer and a variable is declared side by side in its control block
ie
struct device {
char a;
char buff[x];
};
Unfortunately if the variable and the buffer happen to share same cache line , problems can arise
see the sequence
1.Dma writes to the buffer with shared cache line
2.user thread writes to the variable with shared cacheline
3.please note that the cpu handling dma write after process and the cpu associated with thread
might be different
4.so if the dma write after processing happens first and variable write after processing happends next the original dma content will be overwritten by the variable write
wince
wince has support for 8139 and NE2000 hardware under KITL
what it means is that in addition to normal 8139 and NE2000 drivers , its initialization
code has a custom driver (which is not the other 8139,NE2000 driver) that gets initialized
at the booting time.This will get discarded later if its not used by KITL
so if we need to debug a network driver in wince we need atleast 2 n/w interfaces once being
8139 compatible for eg dlink
its too difficult with the wince to bootup with usb,but since most of the time the images are on the usb so you cannot do without it too
Need dos to format the usb to create a FAT partition with bootsector written and command.com
later the loaded wince image can be made to use another partition on the usb as its filesystem
what it means is that in addition to normal 8139 and NE2000 drivers , its initialization
code has a custom driver (which is not the other 8139,NE2000 driver) that gets initialized
at the booting time.This will get discarded later if its not used by KITL
so if we need to debug a network driver in wince we need atleast 2 n/w interfaces once being
8139 compatible for eg dlink
its too difficult with the wince to bootup with usb,but since most of the time the images are on the usb so you cannot do without it too
Need dos to format the usb to create a FAT partition with bootsector written and command.com
later the loaded wince image can be made to use another partition on the usb as its filesystem
How to see linux
1.basic linux infrastructure contains
grub,initrd,kernel,rootfs
we need grub preinstalled on the boot medium
initrd binary
kernel binary
and expanded rfs or ramdisk rfs
each of the 4 can be setup independent of each other(compare with windows .. do we have this flex)
Interestingly initrd is almost similar to rfs, so what really happening is that at one stage of
booting kernel chooses initrd as its rfs and later switches to another rfs and this can be continued further if required
so rfs and kernel highly flexible design
now another interesting thing, all the devices are also files, it gives yet another level of
powerful feature
at the time of boot up kernel loads all the drivers and is initialized ... but if the device
nodes are not present as files on the rfs devices are unusable
so simply we can create device files in the filesystem on the fly to add devices to the system
as different rfs can be mounted on any rfs recursively its possible to switch between them at will
grub,initrd,kernel,rootfs
we need grub preinstalled on the boot medium
initrd binary
kernel binary
and expanded rfs or ramdisk rfs
each of the 4 can be setup independent of each other(compare with windows .. do we have this flex)
Interestingly initrd is almost similar to rfs, so what really happening is that at one stage of
booting kernel chooses initrd as its rfs and later switches to another rfs and this can be continued further if required
so rfs and kernel highly flexible design
now another interesting thing, all the devices are also files, it gives yet another level of
powerful feature
at the time of boot up kernel loads all the drivers and is initialized ... but if the device
nodes are not present as files on the rfs devices are unusable
so simply we can create device files in the filesystem on the fly to add devices to the system
as different rfs can be mounted on any rfs recursively its possible to switch between them at will
Qemu
Qemu without the guest:
1.has a mechanism by which it will advertise the availability of 8139,NE2000 network controllers
to the guest. So when the guest boots up it will automatically pick up 8139 and NE2000 drivers
from the kernel
2.So only these two drivers can be used to create a virtual ethernet driver on top of the host network system using qemu
3.It utilises bridging utilities brutility to create a virtual network comprising of guest networks
and host network
4.there is also a mode in qemu where an application tcpip stack is used to simulate the network
5.Again similar to the n/w interface UART is also advertised by the qemu
kqemu + processor hardware support can give near equal performance for a guest os
1.has a mechanism by which it will advertise the availability of 8139,NE2000 network controllers
to the guest. So when the guest boots up it will automatically pick up 8139 and NE2000 drivers
from the kernel
2.So only these two drivers can be used to create a virtual ethernet driver on top of the host network system using qemu
3.It utilises bridging utilities brutility to create a virtual network comprising of guest networks
and host network
4.there is also a mode in qemu where an application tcpip stack is used to simulate the network
5.Again similar to the n/w interface UART is also advertised by the qemu
kqemu + processor hardware support can give near equal performance for a guest os
Saturday, August 7, 2010
electronics - 1
1.slingbox and .... are great products for home electronic enthusiasts
2.wide variety of receiver solutions are available for home, but as long as speakers
are wired cannot really have a integrated , extensible solution
3.Need to see the viability of using multiple small lcd screens to show a large picture,the simplest
solution for this
2.wide variety of receiver solutions are available for home, but as long as speakers
are wired cannot really have a integrated , extensible solution
3.Need to see the viability of using multiple small lcd screens to show a large picture,the simplest
solution for this
Friday, August 6, 2010
apartment wiring - 2
1.the dash box mostly at a common place at the basement contains the starting point of the cat3 cable that moves through the apartment
electrical - fuse,trips
1.magnetic -- these type of trips will break based on the fact that when more current passes through
a metal it will have higher magnetic properties . This is made use in breaking
2.Thermal -- when more current is passed through a metal high heat causes it to expand , this property is also made use in creating trip
a metal it will have higher magnetic properties . This is made use in breaking
2.Thermal -- when more current is passed through a metal high heat causes it to expand , this property is also made use in creating trip
electrical - extension box
1.plug points are considered to be ideal, with voltage at them as per specification.
2.if extension boxes are used then, the voltage at ext points will have a drop proportional to
extension wire impedence, hence the appliances connected to it will have a different life span
than specified in its manual over long use.
3.since the points are connected in serial, the point farthest from the extension box will have
more drop compared to near one
2.if extension boxes are used then, the voltage at ext points will have a drop proportional to
extension wire impedence, hence the appliances connected to it will have a different life span
than specified in its manual over long use.
3.since the points are connected in serial, the point farthest from the extension box will have
more drop compared to near one
ofdm-2
1.television broadcasts also use ofdm to multiplex channels,but rather than air they do it on a
metallic medium
2.lan hmmm it seems is not FDM and its TDM or its neither
metallic medium
2.lan hmmm it seems is not FDM and its TDM or its neither
Thursday, August 5, 2010
oven details
Modes in oven
1.microwave
2.grill
3.convection
1.microwave
uses wave properties to vibrate food molecules and generate heat,and thus it cooks the food
inside out.cannot use to toast bread, toasting needs only the surfaces to be heated
2.grill
resembles traditional cooking
1.direct and indirect grill
one with lid open,other with lid closed
the coil used to heat mostly is on the top side, traditional cooking fire and bottom of the food are closer, in oven grill the coil and top of the food is closer
3.convection
grill + fans
grill cooks the food closer to the coil first, because the temperature is more at the top
convection uses fans to distribute the hot air evenly and thus cooks all the surfaces evenly
1.microwave
2.grill
3.convection
1.microwave
uses wave properties to vibrate food molecules and generate heat,and thus it cooks the food
inside out.cannot use to toast bread, toasting needs only the surfaces to be heated
2.grill
resembles traditional cooking
1.direct and indirect grill
one with lid open,other with lid closed
the coil used to heat mostly is on the top side, traditional cooking fire and bottom of the food are closer, in oven grill the coil and top of the food is closer
3.convection
grill + fans
grill cooks the food closer to the coil first, because the temperature is more at the top
convection uses fans to distribute the hot air evenly and thus cooks all the surfaces evenly
Sunday, August 1, 2010
driver design
1.layer abstraction
2.unified events and serialization
3.reference counting based ... serialization with no context information
4.discontinuities in the layers
2.unified events and serialization
3.reference counting based ... serialization with no context information
4.discontinuities in the layers
home data wiring
usually at apartments uses cat3 wires with 2 data wire pairs, maximum data rate is 10mbps
apartments use serial wiring , if any point is currently unused it will be in the shorted stage
even cable wiring inside the home is serial wiring
wifi routers can act as clients , ie we can chain wifi routers
netgear router needs fw upgrade
apartments use serial wiring , if any point is currently unused it will be in the shorted stage
even cable wiring inside the home is serial wiring
wifi routers can act as clients , ie we can chain wifi routers
netgear router needs fw upgrade
protocol and hardware comparison
driver handles the events from system and the hardware, rest everything is data
when a protocol is added to this , it needs to interpret events originating at the remote system as well, so data in the previous case gets categorised into protocol events and data
when a protocol is added to this , it needs to interpret events originating at the remote system as well, so data in the previous case gets categorised into protocol events and data
hardware development
xilinx board
~75k
opencore libraries -- opencore.org
verilog code
opencore lib for pc interface --- pci
~75k
opencore libraries -- opencore.org
verilog code
opencore lib for pc interface --- pci
electrical connections
230v
2 Amps sockets
5 Amps sockets
16 Amps sockets
circuit breakers
inverters
power conditioners
KVA ratings %load
thick copper more conductivity than thin copper
2 Amps sockets
5 Amps sockets
16 Amps sockets
circuit breakers
inverters
power conditioners
KVA ratings %load
thick copper more conductivity than thin copper
memory barriers
smp systems have multiple processors
each processor has a cache
a cache can have multiple banks (odd and even)
a cache is a hash table
4 bit table with 2 entries -- total 16 + 16 entires -- both code and data lines
bit 8-11 are used a lines rest 8 bits form the cache line
on a dual processor system 2 threads are executing each one one proc,both accessing the flag
if one proc writes to the flag, behind the scene the value needs to be taken from the cache,moved
through the cache interconnect to the memory and again the interconnect need to update the cache of the second processor
each processor has a cache
a cache can have multiple banks (odd and even)
a cache is a hash table
4 bit table with 2 entries -- total 16 + 16 entires -- both code and data lines
bit 8-11 are used a lines rest 8 bits form the cache line
on a dual processor system 2 threads are executing each one one proc,both accessing the flag
if one proc writes to the flag, behind the scene the value needs to be taken from the cache,moved
through the cache interconnect to the memory and again the interconnect need to update the cache of the second processor
Android - display
Android has a 2D and 3D software renderer
2D sw renderer the skia library
3D sw renderer is called pixel flinger
in addition hw support can be provided for 3D rendering
libhgl.so is the hardware renderer support .so
overlay engine is used for video acceleration
choice of 3D sw and hw renderer can be made by an activity using setEgl.... command
skia is used by default for menus
GL and canvas are different entities
both are bound to an activity using instance.. analogy ... like socket, process and tcp driver(==graphics driver)
an activity has a surface by default in view root,all menus are drawn on it, surfaceview and GLSurface view creates additional associated surfaces with the activity.Each surface is associated
with a graphics context ... context is either canvas by reference or EGL context by reference
2D sw renderer the skia library
3D sw renderer is called pixel flinger
in addition hw support can be provided for 3D rendering
libhgl.so is the hardware renderer support .so
overlay engine is used for video acceleration
choice of 3D sw and hw renderer can be made by an activity using setEgl.... command
skia is used by default for menus
GL and canvas are different entities
both are bound to an activity using instance.. analogy ... like socket, process and tcp driver(==graphics driver)
an activity has a surface by default in view root,all menus are drawn on it, surfaceview and GLSurface view creates additional associated surfaces with the activity.Each surface is associated
with a graphics context ... context is either canvas by reference or EGL context by reference
wince
debugging
1.Needs two ethernet interfaces to properly use debugging over ethernet
2.KITL
1.Needs two ethernet interfaces to properly use debugging over ethernet
2.KITL
Android - components
booting
1.Kernel loads into ram, starts initialization
2.searches init in initrd,
3.initrd mounts ramdisk or RFS and calls init
4.init searches for system.img , mounts
1.Kernel loads into ram, starts initialization
2.searches init in initrd,
3.initrd mounts ramdisk or RFS and calls init
4.init searches for system.img , mounts
kernel debug
to redirect the console over a serial cable
1.enable settings in kernel hacking
2.dont forget to select serial option
3.additional settings in kernel arguments
to enable kgdb based debugging
1.again repeat the same above
2.put additional settings in kernel arguments
3.on the remote side start gdb with vmlinuz as arg
4.specify the source path
5.system.map is relevent only for target system , if the kernel crashes the target refers to
symbols in system.map its not relevent on kgdb based debugging
6.additional steps are required for module debugging
1.enable settings in kernel hacking
2.dont forget to select serial option
3.additional settings in kernel arguments
to enable kgdb based debugging
1.again repeat the same above
2.put additional settings in kernel arguments
3.on the remote side start gdb with vmlinuz as arg
4.specify the source path
5.system.map is relevent only for target system , if the kernel crashes the target refers to
symbols in system.map its not relevent on kgdb based debugging
6.additional steps are required for module debugging
OFDM
how the data rides on a wave
1.A stream of data is organized into manageble chunks
2.Perception changed from stream of bytes to stream of bits
3.Bits are grouped in symbols
4.~1200 symbols are passed through a serial to parallel converter
5.each parallel line is connected to an IFFT line of 2048 lines
6.output is a matrix representation of the input in the frequency domain
7.this is passed to D/A converter and raised by a dash? frequency
8.the outgoing wave contains the data
exactly the opposite happens on the receiving side
1.A stream of data is organized into manageble chunks
2.Perception changed from stream of bytes to stream of bits
3.Bits are grouped in symbols
4.~1200 symbols are passed through a serial to parallel converter
5.each parallel line is connected to an IFFT line of 2048 lines
6.output is a matrix representation of the input in the frequency domain
7.this is passed to D/A converter and raised by a dash? frequency
8.the outgoing wave contains the data
exactly the opposite happens on the receiving side
emdedded development
Requirements
1.hardware
devkit8000 omap353x based development board
approx price 17k IR
2.software:
kernel,toolchain binaries got with the cd
download android eclair from embest git repository
download embest kernel patch for devkit8k from web
No charge
Thats all
way to go:
1.prepare the binaries
2.prepare the RFS
3.partition the mmc
4.put the bineries into respective partitions
5.change the mmc kenel arguments
6.boot from mmc
1.hardware
devkit8000 omap353x based development board
approx price 17k IR
2.software:
kernel,toolchain binaries got with the cd
download android eclair from embest git repository
download embest kernel patch for devkit8k from web
No charge
Thats all
way to go:
1.prepare the binaries
2.prepare the RFS
3.partition the mmc
4.put the bineries into respective partitions
5.change the mmc kenel arguments
6.boot from mmc
Subscribe to:
Posts (Atom)