VijayNetwork.Com
Embedded System

What is embedded system?

Electrical control system which is designed to perform predefined specific function with combination of computer hardware and software.

RISC processor

Acronym for Reduced Instruction Set Computer. A microprocessor that carries out fewer instructions than traditional microprocessors so that it can work more quickly.

What is kernel?

kernel is an bridge between OS and Hardware. kernel is the heart the of OS( Operating System ), usually kernel only operate both the hardware and software, the operating system is nothing but wrapper of the kernel, through os user can achieve his operation easily ( user friendly ). OS is defines as interface between user and computer.

RTOS

An operating system designed specifically for use in real-time systems that should respond to external events within a short and predictable time frame.

Define Re-entrence function

A function is concurrently accessed by more than one task is called re-entrance function. Both task have won stack of the re-entrance function.

Types of Tasks

User Space Task
Task time slicing are done by the user the called user space task.
kernel space task
Task time slicing are done by the kernel the called kernel space task.

Thread Safe

Shared data are protected by the semaphore is called safe thread.

CPU

The Central Processing Unit (CPU), It contains instruction processing logic, instruction and data pointers, and an operand register. It directly accesses the high speed on-chip memory, which can store data or programs. Where larger amounts of memory are required, the processor can access memory via the External Memory Interface (EMI).

Does *p++ increment p, or what it points to?

Unary operators like *, ++, and -- all associate (group) from right to left. Therefore, *p++ increments p (and returns the value pointed to by p before the increment). To increment the value pointed to by p, use (*p)++ (or perhaps ++*p, if the order of the side effect doesn't matter).

Cross Compiler

A compiler may run on one machine( Host ) and produce object code for another machine( Target ) is called cross compiler.

Loader

Loder is a program which loads another executable code into main memory from secondary device and makes the CPU to run the loaded code.

Register Storage Class

register is used to define local variables that should be stored in a register instead of RAM. This means that the variable has a maximum size equal to the register size (usually one word) and cant have the unary '&' operator applied to it (as it does not have a memory location).
{
  register int Miles;
}
Register should only be used for variables that require quick access - such as counters. It should also be noted that defining 'register' goes not mean that the variable will be stored in a register. It means that it MIGHT be stored in a register - depending on hardware and implementation restrictions.

How to find give no is 2 power of n

f=( ( no & ( no-1 ) ) == 0 )
if( f == 1)
printf ( "The Given Number is Power of %d", no );
else
printf ( "The Given Number is not Power of %d", no );

Types of Random Access Memory ( RAM )

It is called as Read/Write Memory, it requires external power to maintain memory content.
Dynamic RAM (DRAM)
DRAM is a RAM device that requires periodic refreshing to retain its content.
Static RAM (SRAM)
SRAM is a RAM device that retains its content as long as power is supplied by an external power source. SRAM does not require periodic refreshing and it is faster than DRAM.
Non-Volatile RAM (NVRAM)
NVRAM is a special type of SRAM that has backup battery power so it can retain its content after the main system power is shut off. Another variation of NVARM combines SRAM and EEPROM so that its content is written into the EEPROM when power is shut off and is read back from the EEPROM when power is restored.

Types of Read Only Memory (ROM)

Contains non-volatile content and without the need for an external power source.
Mask Programmed ROM
The memory content is programmed during the manufacturing process. Once programmed, the content cannot be changed. It cannot be reprogrammed.
Field Programmable ROM (PROM)
The memory content can be custom-programmed one time. The memory content cannot change once programmed.
Erasable Programmable ROM (EPROM)
An EPROM device can be custom-programmed, erased, and reprogrammed as often as required within its lifetime (hundreds or even thousands of times). The memory content is non-volatile once programmed. Traditional EPROM devices are erased by exposure to ultraviolet (UV) light. An EPROM device must be removed from its housing unit first. It is then reprogrammed using a special hardware device called an EPROM programmer.
Electrically Erasable Programmable ROM (EEPROM or E2PROM) Modern EPROM devices are erased electrically and are thus called EEPROM. One important difference between an EPROM and an EEPROM device is that with the EEPROM device, memory content of a single byte can be selectively erased and reprogrammed. Therefore, with an EEPROM device, incremental changes can be made. Another difference is the EEPROM can be reprogrammed without a special programmer and can stay in the device while being reprogrammed. The versatility of byte-level programmability of the EEPROM comes at a price, however, as programming an EEPROM device is a slow process.

Flash Memory

The flash memory is a variation of EEPROM, which allows for block-level (e.g., 512-byte) programmability that is much faster than EEPROM.

EMI

EMI means External Memory Interface. This is used to communicate with external memory.
Ex:
flash, e2p, SDRAM

What is static function?

In the case of static function, the function is local to that file only. We cant access the static function from another file.

What is preemptive scheduler?

A scheduler that may switch between threads at any time.

Compiler

Compiler is a program which converts the source code into mechine code( object files ). It compiles the source program as a whole.

Interpreter

Interpreter is a program which converts the source code into mechine code( executable files ). It compiles & executes the source program line by line.

Linker

Linker is a program which is used to combine one or more object files & creates executable files( machine code ).

Tuner

An electronic receiver that detects and demodulates and amplifies transmitted signals.

Volatile Pointer

Volatile is a variable which may change the value without knowing of code. A variable should be declared volatile whenever its value could change unexpectedly. In practice, only three types of variables could change:
Memory-mapped peripheral registers,
* Global variables modified by an interrupt service routine
* Global variables within a multi-threaded application

Static Keyword and Variable

* Static keyword is used to declare a global variable.
* Static variable value is initialized only once.
* Its value is persistent until the program terminate.

if we declare,

static int a = 10;
main()
{
 
}
 
function1()
{
 
}
 
.
.
 
function..n()
{
 
}
we can access the static variable 'a' through the entire program. 

If we declare,
 
main()
{
 static int a = 10;
....
}
function1( args )
{
 static int b = 10;
...
}
* The static variable 'a' can access only in main function.But that value is persistent until the program end.

* The static variable 'b' can access only in function1. But the value of 'b' is persistent until the program end.

* Function main can't access the variable 'b'. such that function1 can't access the variable 'a'.