hashing - My App is Better Challenge

Document Sample
hashing - My App is Better Challenge Powered By Docstoc
					1. What is The Main Difference Between Http and Https

2. What are The Main Difference Between Client-server Based Applications and Web based

 Web Based App means:
1.The web app can be developed by using any kind of tech
like "java,.Net,etc.
2.It's a 3 tier arch.i.e
a.Business tier
b.Presentation tier(HTML,DHTML,SERVLETS)
c.Data tier(Oracle,SQL Server)
3.If any change occure in app that will effect only sever
side.means here no need to bother about the client means
client is thin client means browser.
any change occure in app the entire app is installed in
sever only becoz in this the core app will reside at server
side only.

Client server App:
1It's a 2 tier arch.
b.Presentation tier(HTML,DHTML,SERVLETS)
c.Data tier(Oracle,SQL Server)

2.In client server app ,the app will reside in client side
only .means if any change will occure in app that will
effect the client.

3. What is object repository?

An object repository is a very essential entity in any UI automation tool.
A repository allows a tester to store all the objects that will be used in
the scripts in one or more centralized locations rather than letting them
be scattered all over the test scripts. The concept of an object repository
is not tied to WET alone. It can be used for any UI test automation. In
fact, the original reason why the concept of object repositories were
introduced was for a framework required by QTP.
4. What is risk in IT-Security?

5. What is operating system?

An operating system (OS) is software, consisting of programs and data, that runs on computers
and manages the computer hardware and provides common services for efficient execution of
variousapplication software.

For hardware functions such as input and output and memory allocation, the operating system
acts as an intermediary between application programs and the computer hardware,                although
the application code is usually executed directly by the hardware, but will frequently call the OS or
be interrupted by it. Operating systems are found on almost any device that contains a
computer—fromcellular phones and video game consoles to supercomputers and web servers.

6. What is a deadlock?

A deadlock is a situation wherein two or more competing actions are each waiting for the other to
finish, and thus neither ever does.

7. What is a semaphore?

a semaphore is a protected variable or abstract data type that constitutes a classic method of
controlling access by multiple processes to a common resource in a parallel
programming environment. A semaphore generally takes one of two forms: binary and counting.
A binary semaphore (flag) is a simple "true/false" (locked/unlocked) variable that controls access
to a single resource. A counting semaphore is a counter for a set of resources. Either type may
be employed to prevent a race condition. On the other hand, a semaphore is of no value in
preventing resource deadlock, such as illustrated by the dining philosophers problem.

8. Difference between semaphore & monitor?

The wait and signal operations on condition variables in a monitor are similar
to P and V operations on counting semaphores. A wait statement can block a process's
execution, while a signal statement can cause another process to be unblocked. However,
there are some differences between them. When a process executes a Poperation, it does not
necessarily block that process because the counting semaphore may be greater than zero. In
contrast, when a wait statement is executed, it always blocks the process. When a task
executes a Voperation on a semaphore, it either unblocks a task waiting on that semaphore or
increments the semaphore counter if there is no task to unlock. On the other hand, if a
process executes a signal statement when there is no other process to unblock, there is no
effect on the condition variable.

Another difference between semaphores and monitors is that users awaken by a V operation
can resume execution without delay. Contrarily, users awaken by a signal operation are
restarted only when the monitor is unlocked.
In addition, a monitor solution is more structured than the one with semaphores because the
data and procedures are encapsulated in a single module and that the mutual exclusion is
provided automatically by the implementation.

9. What is sdlc(software development life cycle)?

10. What is link list, stack, and queue?

In computer science, a linked list is a data structure that consists of a sequence of data
records such that in each record there is a fieldthat contains a reference (i.e., a link) to the next
record in the sequence.

 a stack is a last in, first out (LIFO) abstract data type and data structure. A stack can have
any abstract data type as an element, but is characterized by only two fundamental
operations: push and pop. The push operation adds to the top of the list, hiding any items already
on the stack, or initializing the stack if it is empty. The pop operation removes an item from the
top of the list, and returns this value to the caller. A pop either reveals previously concealed
items, or results in an empty list.

A queue (pronounced /kjuː/) is a particular kind of collection in which the entities in the collection

are kept in order and the principal (or only) operations on the collection are the addition of entities
to the rear terminal position and removal of entities from the front terminal position. This makes
the queue a First-In-First-Out (FIFO) data structure. In a FIFO data structure, the first element
added to the queue will be the first one to be removed. This is equivalent to the requirement that
whenever an element is added, all elements that were added before have to be removed before
the new element can be invoked. A queue is an example of a linear data structure.

Queues provide services in computer science, transport and operations researchwhere various
entities such as data, objects, persons, or events are stored and held to be processed later. In
these contexts, the queue performs the function of a buffer.

11. Write a program to reverse a link list?

#include <stdio.h>
typedef struct node {
   char ch;
   struct node *next;
} list;
list* addNode(const list *start, char ch) {
     list *ll;
     ll = (list *)start;
     while( ll->next != NULL ) { ll = ll->next; }
     ll->next = (list *) malloc(sizeof(list));
     ll->next->ch = ch;
     ll->next->next = NULL;
     return ll->next;
void printList(const list *start) {
     list *ll;
     ll = (list *)start;
     while ( ll->next != NULL ) {
          printf(" %c --> ", ll->ch );
          ll = ll->next;
     printf(" %c --> ", ll->ch );
     printf( " NULL ");
void reverse(list *a, list *b) {
     if( b->next != NULL )
          reverse(b, b->next);
     b->next = a;
     a->next = NULL;
int main() {

     list *end;
     list *start = (list *) malloc(sizeof(list));
     start->ch = 'A';
     start->next = NULL;

     addNode(start, 'B');
     addNode(start, 'C');
     addNode(start, 'D');
     addNode(start, 'E');
    end = addNode(start, 'F');


    reverse(start, start->next);


    return 0;

12. What is dba?

A database administrator (DBA) is a person responsible for the design, implementation,
maintenance and repair of an organization'sdatabase. They are also known by the
titles Database Coordinator or Database Programmer, and is closely related to the Database
Analyst,Database Modeler, Programmer Analyst, and Systems Manager. The role includes the
development and design of database strategies, monitoring and improving database performance
and capacity, and planning for future expansion requirements. They may also plan, co-ordinate
and implement security measures to safeguard the database.

13. Difference between primary, foreign, candidate & super key?

A primary key is a column which uniquely identifies the records in a table. In a broad sense,
a primary key is the mixture of a unique key and an index: A collumn with a primary key is
indexed to deliver a faster query, and doesn't allow duplicate values to ensure specific data.

Most programmers recommend all tables having a primary key (and only one) to enhance the
speed of queries and overall database performance.

An example of a primary key may be found in a table named "departments," which might have
a collumn named "department_number" that uniquely identifies each department in the table
with a number.

A foreign key is a column (the child collumn) in a table which has a corresponding
relationship and a dependency on another collumn (the parent collumn) that is usually in a
different table. Parent collumns can have multiple child collumns, but a child collumn can only
have one parent collumn.

The child collumn is the collumn with the foreign key; the parent collumn does not have the
foreign key "set" on it, but most databases require the parent collumn to be indexed.

Foreign keys are made to link data across multiple tables. A child collumn cannot have a
record that its parent collumn does not have.
Say a table named "employees" has 20 employees (rows) in it. There are 4 departments in the
"departments" table. All 20 employees must belong to a department, so a collumn in the
"employees" table named "department" would point to the primary key in the "departments"
table using a foreign key. Now all employees must belong to a department as specified by the
"departments" table. If a department isn't specified in the "departments" table, the employee
cannot be assigned to it.

A candidate key would be any key which could be used as the primary key, which means
that the combination of the columns, or just the single column would create a unique key. You
would then need to determine which of these candidate keys would work best as your primary

Super key: A superkey is a combination of attributes that can be uniquely used to identify a database record. A
table might have many superkeys. Candidate keys are a special subset of superkeys that do not have any extraneous
information in them.

14. Different type of databases?

Analytic Databases
Analytic databases (a.k.a. OLAP- On Line Analytical Processing) are primarily static, read-only
databases which store archived, historical data used for analysis. For example, a company might
store sales records over the last ten years in an analytic database and use that database to
analyze marketing strategies in relationship to demographics.
On the web, you will often see analytic databases in the form of inventory catalogs such as the
one shown previously from An inventory catalog analytical database usually holds
descriptive information about all available products in the inventory.
Web pages are generated dynamically by querying the list of available products in the inventory
against some search parameters. The dynamically-generated page will display the information
about each item (such as title, author, ISBN) which is stored in the database.

Operational Databases
Operational databases (a.k.a. OLTP On Line Transaction Processing), on the other hand, are
used to manage more dynamic bits of data. These types of databases allow you to do more than
simply view archived data. Operational databases allow you to modify that data (add, change or
delete data).
These types of databases are usually used to track real-time information. For example, a
company might have an operational database used to track warehouse/stock quantities. As
customers order products from an online web store, an operational database can be used to keep
track of how many items have been sold and when the company will need to reorder stock.

Database Models
Besides differentiating databases according to function, databases can also be differentiated
according to how they model the data.
What is a data model?
Well, essentially a data model is a "description" of both a container for data and a methodology
for storing and retrieving data from that container. Actually, there isn't really a data model "thing".
Data models are abstractions, oftentimes mathematical algorithms and concepts. You cannot
really touch a data model. But nevertheless, they are very useful. The analysis and design of data
models has been the cornerstone of the evolution of databases. As models have advanced so
has database efficiency.
Before the 1980's, the two most commonly used Database Models were the hierarchical and
network systems. Let's take a quick look at these two models and then move on to the more
current models.

Hierarchical Databases
As its name implies, the Hierarchical Database Model defines hierarchically-arranged data.
Perhaps the most intuitive way to visualize this type of relationship is by visualizing an upside
down tree of data. In this tree, a single table acts as the "root" of the database from which other
tables "branch" out.
You will be instantly familiar with this relationship because that is how all windows-based
directory management systems (like Windows Explorer) work these days.
Relationships in such a system are thought of in terms of children and parents such that a child
may only have one parent but a parent can have multiple children. Parents and children are tied
together by links called "pointers" (perhaps physical addresses inside the file system). A parent
will have a list of pointers to each of their children.

15. What is normalsation? Explain them?

What is Normalization?

Normalization is the process of efficiently organizing data in a database. There are two goals of the normalization
process: eliminating redundant data (for example, storing the same data in more than one table) and ensuring data
dependencies make sense (only storing related data in a table). Both of these are worthy goals as they reduce the
amount of space a database consumes and ensure that data is logically stored.

The Normal Forms

The database community has developed a series of guidelines for ensuring that databases are normalized. These are
referred to as normal forms and are numbered from one (the lowest form of normalization, referred to as first normal
form or 1NF) through five (fifth normal form or 5NF). In practical applications, you'll often see 1NF,2NF,
and 3NF along with the occasional 4NF. Fifth normal form is very rarely seen and won't be discussed in this article.

Before we begin our discussion of the normal forms, it's important to point out that they are guidelines and
guidelines only. Occasionally, it becomes necessary to stray from them to meet practical business requirements.
However, when variations take place, it's extremely important to evaluate any possible ramifications they could have
on your system and account for possible inconsistencies. That said, let's explore the normal forms.

First Normal Form (1NF)

First normal form (1NF) sets the very basic rules for an organized database:
        Eliminate duplicative columns from the same table.
        Create separate tables for each group of related data and identify each row with a unique column or set of
    columns (the primary key).
Second Normal Form (2NF)

Second normal form (2NF) further addresses the concept of removing duplicative data:
         Meet all the requirements of the first normal form.
         Remove subsets of data that apply to multiple rows of a table and place them in separate tables.
         Create relationships between these new tables and their predecessors through the use of foreign keys.

Third Normal Form (3NF)

Third normal form (3NF) goes one large step further:
         Meet all the requirements of the second normal form.
         Remove columns that are not dependent upon the primary key.

Fourth Normal Form (4NF)

Finally, fourth normal form (4NF) has one additional requirement:
          Meet all the requirements of the third normal form.
          A relation is in 4NF if it has no multi-valued dependencies.
Remember, these normalization guidelines are cumulative. For a database to be in 2NF, it must first fulfill all the
criteria of a 1NF database.

16. Four division in cobol?

Identification division,
Environment division,
Data division,
Procedure division

17. Significance of 01,77,88,66 levels?

18. Function of compiler?
Compiler is basically a translator from a specific programming language into machine
understandable language.

19. Difference between object file & exe file?

Both are binary files but the differences between those are:-
1) we can execute an executable file while we cannot execute an object file.

2) An object file is a file where compiler has not yet linked to the libraries, so you get an
object file just before linking to the libraries, so still some of the symbols or function
definitions are not yet resolved which are actually present in the libraries, and that's why we
cannot execute it.
Once an object file is linked with the library by the compiler, then all the symbols are resolved
and we get an executable file which can be executed on the appropriate platform.
So basically the difference is that we get an object file when we don't link with library while
executable file is with the linking phase.

20. Difference between c & c++?

1] c is procedure oriented programing & c++ is object
oriented programing.
2] we can't do programing through class in c,but we can do
in c++.
3] c is top to bottom programing approach, c++ is bottom to
top programing approach.
4] c++ is high level language,c is low level language.
5] c++ accept all the feature & function of of c & its own
properties,but it is not happened in c.
6] data can move in c openly arround in the system from
function to function.In c++ data is hidden can't be
accessed by external function.

21. Difference between sql & c++?

22. Differences between C and JAVA.

 Differences Between C and Java
If you are a C or C++ programmer, you should have found much of the syntax
of Java--particularly at the level of operators and statements--to be familiar.
Because Java and C are so similar in some ways, it is important for C and C++
programmers to understand where the similarities end. There are a number of
important differences between C and Java, which are summarized in the
following list:
No preprocessor
       Java does not include a preprocessor and does not define any analogs of
       the #define, #include, and #ifdef directives. Constant definitions are replaced
       with staticfinal fields in Java. (See the java.lang.Math.PI field for an example.)
       Macro definitions are not available in Java, but advanced compiler
       technology and inlining has made them less useful. Java does not require
       an #include directive because Java has no header files. Java class files
       contain both the class API and the class implementation, and the
       compiler reads API information from class files as necessary. Java lacks
      any form of conditional compilation, but its cross-platform portability
      means that this feature is very rarely needed.
No global variables
      Java defines a very clean namespace. Packages contain classes, classes
      contain fields and methods, and methods contain local variables. But
      there are no global variables in Java, and, thus, there is no possibility of
      namespace collisions among those variables.
Well-defined primitive type sizes
      All the primitive types in Java have well-defined sizes. In C, the size
      of short, int, and long types is platform-dependent, which hampers
No pointers
      Java classes and arrays are reference types, and references to objects and
      arrays are akin to pointers in C. Unlike C pointers, however, references
      in Java are entirely opaque. There is no way to convert a reference to a
      primitive type, and a reference cannot be incremented or decremented.
      There is no address-of operator like &, dereference operator like * or −>,
      or sizeof operator. Pointers are a notorious source of bugs. Eliminating
      them simplifies the language and makes Java programs more robust and
Garbage collection
      The Java Virtual Machine performs garbage collection so that Java
      programmers do not have to explicitly manage the memory used by all
      objects and arrays. This feature eliminates another entire category of
      common bugs and all but eliminates memory leaks from Java programs.
No goto statement
      Java doesn't support a goto statement. Use of goto except in certain well-
      defined circumstances is regarded as poor programming practice. Java
      adds exception handling and labeled break and continue statements to the
      flow-control statements offered by C. These are a good substitute
      for goto.
Variable declarations anywhere
      C requires local variable declarations to be made at the beginning of a
      method or block, while Java allows them anywhere in a method or block.
      Many programmers prefer to keep all their variable declarations grouped
      together at the top of a method, however.
Forward references
      The Java compiler is smarter than the C compiler, in that it allows
      methods to be invoked before they are defined. This eliminates the need
      to declare functions in a header file before defining them in a program
      file, as is done in C.
Method overloading
      Java programs can define multiple methods with the same name, as long
      as the methods have different parameter lists.
No struct and union types
      Java doesn't support C struct and union types. A Java class can be thought
      of as an enhanced struct, however.
No enumerated types
      Java doesn't support the enum keyword used in C to define types that
      consist of fixed sets of named values. This is surprising for a strongly
      typed language like Java, but there are ways to simulate this feature with
      object constants.
No bitfields
      Java doesn't support the (infrequently used) ability of C to specify the
      number of individual bits occupied by fields of a struct.
No typedef
      Java doesn't support the typedef keyword used in C to define aliases for
      type names. Java's lack of pointers makes its type-naming scheme
      simpler and more consistent than C's, however, so many of the common
      uses of typedef are not really necessary in Java.
No method pointers
      C allows you to store the address of a function in a variable and pass this
      function pointer to other functions. You cannot do this with Java
      methods, but you can often achieve similar results by passing an object
      that implements a particular interface. Also, a Java method can be
      represented and invoked through ajava.lang.reflect.Method object.
No variable-length argument lists
      Java doesn't allow you to define methods such as C's printf() that take a
      variable number of arguments. Method overloading allows you to
      simulate C varargs functions for simple cases, but there's no general
      replacement for this feature.

23. Features of JAVA.

 Platform Independent
 The concept of Write-once-run-anywhere (known as the Platform
 independent) is one of the important key feature of java language that makes
 java as the most powerful language. Not even a single language is idle to this
 feature but java is more closer to this feature. The programs written on one
 platform can run on any platform provided the platform must have the JVM.
There are various features that makes the java as a simple language.
Programs are easy to write and debug because java does not use the pointers
explicitly. It is much harder to write the java programs that can crash the
system but we can not say about the other programming languages. Java
provides the bug free system due to the strong memory management. It also
has the automatic memory allocation and deallocation system.
Object Oriented
To be an Object Oriented language, any language must follow at least the
four characteristics.

     Inheritance        :    It is the process of creating the new classes and
      using the behavior of the existing classes by extending them just to
                         reuse the existing code and adding the additional
      features as needed.
     Encapsulation: :         It is the mechanism of combining the information
      and providing the abstraction.
     Polymorphism: :          As the name suggest one name multiple form,
      Polymorphism is the way of providing the different functionality by
                             functions having the same name based on the
      signatures of the methods.
     Dynamic binding :        Sometimes we don't have the knowledge of
      objects about their specific types while writing our code. It is the
      way                         of providing the maximum functionality to a
      program about the specific type at runtime.

As the languages like Objective C, C++ fulfills the above four characteristics
yet they are not fully object oriented languages because they are structured
as well as object oriented languages. But in case of java, it is a fully Object
Oriented language because object is at the outer most level of data structure
in java. No stand alone methods, constants, and variables are there in java.
Everything in java is object even the primitive data types can also be
converted into object by using the wrapper class.
Java has the strong memory allocation and automatic garbage collection
mechanism. It provides the powerful exception handling and type checking
mechanism as compare to other programming languages. Compiler checks
the program whether there any error and interpreter checks any run time error
and makes the system secure from crash. All of the above features makes the
java language robust.
The widely used protocols like HTTP and FTP are developed in java.
Internet programmers can call functions on these protocols and can get
access the files from any remote machine on the internet rather than writing
codes on their local system.
The feature Write-once-run-anywhere makes the java language portable
provided that the system must have interpreter for the JVM. Java also have
the standard data size irrespective of operating system or the processor.
These features makes the java as a portable language.
While executing the java program the user can get the required files
dynamically from a local drive or from a computer thousands of miles away
from the user just by connecting with the Internet.
Java does not use memory pointers explicitly. All the programs in java are
run under an area known as the sand box. Security manager determines the
accessibility options of a class like reading and writing a file to the local disk.
Java uses the public key encryption system to allow the java applications to
transmit over the internet in the secure encrypted form. The bytecode Verifier
checks the classes after loading.
Java uses native code usage, and lightweight process called threads. In the
beginning interpretation of bytecode resulted the performance slow but the
advance version of JVM uses the adaptive and just in time compilation
technique that improves the performance.
As we all know several features of Java like Secure, Robust, Portable,
dynamic etc; you will be more delighted to know another feature of Java
which is Multithreaded.
Java is also a Multithreaded programming language. Multithreading means a
single program having different threads executing independently at the same
time. Multiple threads execute instructions according to the program code in
a process or a program. Multithreading works the similar way as multiple
processes run on one computer.
Multithreading programming is a very interesting concept in Java. In
multithreaded programs not even a single thread disturbs the execution of
other thread. Threads are obtained from the pool of available ready to run
 threads and they run on the system CPUs. This is how Multithreading works
 in Java which you will soon come to know in details in later chapters.
 We all know that Java is an interpreted language as well. With an interpreted
 language such as Java, programs run directly from the source code.
 The interpreter program reads the source code and translates it on the fly into
 computations. Thus, Java as an interpreted language depends on an
 interpreter program.
 The versatility of being platform independent makes Java to outshine from
 other languages. The source code to be written and distributed is platform
 Another advantage of Java as an interpreted language is its error debugging
 quality. Due to this any error occurring in the program gets traced. This is
 how it is different to work with Java.
 Architecture Neutral
 The term architectural neutral seems to be weird, but yes Java is an
 architectural neutral language as well. The growing popularity
 of networks makes developers think distributed. In the world of network it is
 essential that theapplications must be able to migrate easily to different
 computer systems. Not only to computer systems but to a wide variety of
 hardware architecture and Operating system architectures as well. The Java
 compiler does this by generating byte code instructions, to be easily
 interpreted on any machine and to be easily translated into native machine
 code on the fly. The compiler generates an architecture-neutral object file
 format to enable a Java application to execute anywhere on the network and
 then the compiled code is executed on many processors, given the presence
 of the Java runtime system. Hence Java was designed to support applications
 on network. This feature of Java has thrived the programming language.

24. Why JAVA is OOP?

any programming that uses objects & classes is
Object oriented programming , we can't write a program
without a class or atleast an object

25. What is Inheritance?

26. What is Constructor?
27. What are default and copy constructor?

The term “default constructor” refers to a constructor that is automatically generated in the
absence of explicit constructors (and perhaps under other circumstances); this automatically
provided constructor is usually a nullary constructor. In specification or discussion of some
languages, “default constructor” may additionally refer to any constructor that may be called
without arguments, either because it is a nullary constructor or because all of its parameters have
default values.

A copy constructor is a special constructor in the C++ programming language used to create a
new object as a copy of an existing object. The first argument of such a constructor is a reference
to an object of the same type as is being constructed (const or non-const), which might be
followed by parameters of any type (all having default values).

Normally the compiler automatically creates a copy constructor for each class (known as
a default copy constructor) but for special cases the programmer creates the copy constructor,
known as a user-defined copy constructor. In such cases, the compiler does not create one.

28. When to use them?

29. What are pointers and their uses?

30. What is call by value and call by reference? (From perspective of C and JAVA)

The arguments passed to function can be of two types namely

  1. Values passed
  2. Address passed

The first type refers to call by value and the second type refers to call by reference.

For instance consider program1

  int x=50, y=70;
  printf(“x=%d y=%d”,x,y);

  int x1,y1;
  int z1;
  printf(“x1=%d y1=%d”,x1,y1);

Here the value to function interchange is passed by value.

Consider program2

  int x=50, y=70;
  printf(“x=%d y=%d”,x,y);

  int *x1,*y1;
  int z1;
  printf(“*x=%d *y=%d”,x1,y1);

Here the function is called by reference. In other words address is passed by using
symbol & and the value is accessed by using symbol *.

The main difference between them can be seen by analyzing the output of program1
and program2.

The output of program1 that is call by value is

  x1=70 y1=50
  x=50 y=70

But the output of program2 that is call by reference is

  *x=70 *y=50
  x=70 y=50

This is because in case of call by value the value is passed to function named as
interchange and there the value got interchanged and got printed as

  x1=70 y1=50

and again since no values are returned back and therefore original values of x and y
as in main function namely
  x=50 y=70 got printed.

31. How are they actually different?

32. What is recursion?

Recursion, in mathematics and computer science, is a method of defining functions in which the
function being defined is applied within its own definition; specifically it is defining an infinite
statement using finite components. The term is also used more generally to describe a process of
repeating objects in a self-similar way. For instance, when the surfaces of two mirrors are exactly
parallel with each other the nested images that occur are a form of infinite recursion.

33. Write a recursive program. Explain.

public static int factorial(int N) {
   if (N == 1) return 1;
   return N * factorial(N-1);

34. What is a microprocessor?

Microprocessors are simply a computer processor that has been configured into the design and
function of a microchip. Sometimes referred to as a logic chip, this small component functions as
the means of executing the command to start booting up a computer. As part of the process, a
microprocessor initiates the activation of all the components necessary to allow the computer to
be used, such as waking the operating system.

The basic functionality of a microprocessor is all based on the inherent ability to respond to and
generate mathematical and logical operations. This function of small computer processors is
made possible with the use of registers. Within the registers resides all the data required by the
microprocessor to execute such basic functions as addition and subtraction. The configuration of
the registers also allow the microprocessor to handle tasks such as comparing two different
numbers, and retrieving numbers from various areas and redistributing them.

At the core of the design for the microprocessor is a series of logical instructions that regulate the
order that tasks are received and executed. The presence of the instructions assure that tasks
are carried out in a sequence that will flow from the completion of one task and into the logical
initiation of the next task in the sequence. For example, when an end user boots up a computer,
the first instruction that the microprocessor will execute is the activation of the BIOS, or basic
input/output system. From that point, the BIOS will load the operating system into the active
memory and move on to the next task in the starting process. Each successive task will be
achieved once the previous task is complete.

35. What are they used for?

36. Where are they present?
37. What is dll? What are they used for?

What is a DLL?

Short for Dynamic Link Library,
A DLL is a library that contains code and data that can be used by more than one program at the
same time. For example, in Windows operating systems, the Comdlg32 DLL performs common
dialog box related functions. Therefore, each program can use the functionality that is contained in
this DLL to implement an Open dialog box. This helps promote code reuse and efficient memory

By using a DLL, a program can be modularized into separate components. For example, an
accounting program may be sold by module. Each module can be loaded into the main program at
run time if that module is installed. Because the modules are separate, the load time of the program
is faster, and a module is only loaded when that functionality is requested.

Additionally, updates are easier to apply to each module without affecting other parts of the
program. For example, you may have a payroll program, and the tax rates change each year. When
these changes are isolated to a DLL, you can apply an update without needing to build or install the
whole program again.

38. What is UML? Describe.

The Unified Modeling Language (UML) is a standard language for specifying, visualizing,
constructing, and documenting the artifacts of software systems, as well as for business modeling
and other non-software systems. The UML represents a collection of best engineering practices
that have proven successful in the modeling of large and complex systems. The UML is a very
important part of developing object oriented software and the software development process.
The UML uses mostly graphical notations to express the design of software projects. Using the
UML helps project teams communicate, explore potential designs, and validate the architectural
design of the software.

Goals of UML
         The primary goals in the design of the UML were:

            1. Provide users with a ready-to-use, expressive visual modeling language
               so they can develop and exchange meaningful models.
            2. Provide extensibility and specialization mechanisms to extend the core
            3. Be independent of particular programming languages and development
            4. Provide a formal basis for understanding the modeling language.
            5. Encourage the growth of the OO tools market.
            6. Support higher-level development concepts such as collaborations,
               frameworks, patterns and components.
            7. Integrate best practices.

Why Use UML?
        As the strategic value of software increases for many companies, the industry
        looks for techniques to automate the production of software and to improve
        quality and reduce cost and time-to-market. These techniques include
        component technology, visual programming, patterns and frameworks.
        Businesses also seek techniques to manage the complexity of systems as they
        increase in scope and scale. In particular, they recognize the need to solve
        recurring architectural problems, such as physical distribution, concurrency,
        replication, security, load balancing and fault tolerance. Additionally, the
        development for the World Wide Web, while making some things simpler, has
        exacerbated these architectural problems. The Unified Modeling Language
        (UML) was designed to respond to these needs.

39. How is a C program compiled?

The C compilation model
When you invoked the gcc compiler, a series of steps were performed in order to
an executable from the text you entered as your C program. These steps are as
Source Code (hello.c)
Assembly Code
Object Code (hello.o)
Executable (a.out or hello)
40. How is linking done?

41. What does a linker do?

42. Sorting (All types)

Bubble Sort
Insertion Sort
Selection Sort
Shell Sort
43. Linked list, Stack, Queue, etc.

44. Differences between DBMS and RDBMS

    Data Base Management System is a process of managing
data for efficient retrivel & storage of data.
     Ex: sysbase , Foxpro

     The database which is used by relations(tables) to
acquire information retrival are known as RDBMS
In DBMS Normalization process wille not be present and in
RDBMS normalization process will be present to check the
database table cosistency

45. What is contingent liability?

46. Difference between binding lang and bind dir when using in service Pgm...When using
binding directory service pgm is necessary?

47. I give print command but print is not coming? But printer is working properly, Why?
48. how to create crystal reports in .net

49. What is the purpose of USROPN keyword?

The USROPN keyword causes the file not to be opened at
program initialization. This gives the programmer control
of the file's first open. The file must be explicitly
opened using the OPEN operation.

For example, if a file is opened and later closed by the
CLOSE operation, the programmer can reopen the file (using
the OPEN operation) without having specified the USROPN
keyword on the file description specification.

50. What are Network Components and explain their uses?
51. How can we know the program is testing by multiple test data in data driven frame work?

52. What are the base line documents for sit and uat? What is impact testing? what is
53. Dynamic testing? What is static testing? What is soak testing?

Dynamic testing (or dynamic analysis) is a term used in software engineering to describe the
testing of the dynamic behavior of code. That is, dynamic analysis refers to the examination of the
physical response from the system to variables that are not constant and change with time. In
dynamic testing the software must actually be compiled and run; Actually Dynamic Testing
involves working with the software, giving input values and checking if the output is as expected.
These are the Validation activities. Unit Tests, Integration Tests, System Tests and Acceptance
Tests are few of the Dynamic Testing methodologies. Dynamic testing means testing based on
specific test cases by execution of the test object or running programs.

Dynamic testing is used to test software through executing it. This is in contrast to Static testing.

Static testing is a form of software testing where the software isn't actually used. This is in
contrast to dynamic testing. It is generally not detailed testing, but checks mainly for the sanity of
the code, algorithm, or document. It is primarily syntax checking of the code and/or manually
reviewing the code or document to find errors. This type of testing can be used by the developer
who wrote the code, in isolation.Code reviews, inspections and walkthroughs are also used.

From the black box testing point of view, static testing involves
reviewing requirements and specifications. This is done with an eye toward completeness or
appropriateness for the task at hand. This is the verification portion of Verification and

Even static testing can be automated. A static testing test suite consists of programs to be
analyzed by an interpreter or a compiler that asserts the programs syntactic validity.

Bugs discovered at this stage of development are less expensive to fix than later in
                        [citation needed]
the development cycle.

The people involved in static testing are application developers, testers, and business analyst.

Soak testing involves testing a system with a significant load extended over a significant period
of time, to discover how the system behaves under sustained use.

For example, in software testing, a system may behave exactly as expected when tested for 1
hour. However, when it is tested for 3 hours, problems such as memory leaks cause the system
to fail or behave randomly.
Soak tests are used primarily to check the reaction of a subject under test under a possible
simulated environment for a given duration and for a given threshold. Observations made during
the soak test are used to improve the characteristics of the subject under test further.

In electronics, soak testing may involve testing a system up to or above its maximum ratings for a
long period of time. Some companies may soak test a product for a period of many months, while
also applying external stresses such as elevated temperatures.

54. What is the difference between null pointer and void pointer?

A void pointer is a pointer that has no type information attached to it.

A null pointer is a pointer that points to "nothing". A null pointer can be of any type (void
included, of course).

55. Which type of architecture 8085 has? what major and minor difference of 8086&8085

56. what are the types of errors available in rpg IV or 400

57. How do you select test cases for Regression Testing(The point is when there is

58. Change codes how do you come know which part of code or modules it will affect).

What are the different models of SDLC?

  Different types of SDLC they are
1.water fall model
2.Itterative model
3.spiral model
4.Proto type model(application developed without
5.RAD model(Rapid application development) that means every
company has its own model.
6.cocomo model:cost to cost model
8.Fish model
9.Pett model:process experts tools and techniques HCL

Re: Difference
Spiral model is like prototyping model where we make one feature , test it and if any
change, then make the change.
Then next we plan for next feature and add this , test that until the final

In V-model development and testing runs simultaneously.
like unit code then do unit testing.
Integration then do integration testing like this....

5. What is the disadvantage of Incremental model? Give an example to explain.


   * Generates working software quickly and early during the software life cycle.
   * More flexible – less costly to change scope and requirements.
   * Easier to test and debug during a smaller iteration.
   * Easier to manage risk because risky pieces are identified and handled during its
   * Each iteration is an easily managed milestone.


   * Each phase of an iteration is rigid and do not overlap each other.
   * Problems may arise pertaining to system architecture because not all
requirements are gathered up front for the entire software life cycle.

What do you mean by the Design phase? What are the tools that can be used in this phase?


Producing hash values for accessing data or for security. A hash value (or simply hash), also called
a message digest, is a number generated from astring of text. The hash is substantially smaller than the text
itself, and is generated by a formula in such a way that it is extremely unlikely that some other text will
produce the same hash value.
Hashes play a role in security systems where they're used to ensure that transmitted messages have not
been tampered with. The sender generates a hash of the message, encrypts it, and sends it with the
message itself. The recipient then decrypts both the message and the hash, produces another hash from
the received message, and compares the two hashes. If they're the same, there is a very high probability
that the message was transmitted intact.
Hashing is also a common method of accessing data records. Consider, for example, a list of names:
           John Smith
           Sarah Jones
           Roger Adams
To create an index, called a hash table, for these records, you would apply a formula to each name to
produce a unique numeric value. So you might get something like:
           1345873 John smith
           3097905 Sarah Jones
           4060964 Roger Adams
Then to search for the record containing Sarah Jones, you just need to reapply the formula, which directly
yields the index key to the record. This is much more efficient than searching through all the records till the
matching record is found.
8. What are function pointers? Give the syntax for the same.

Function Pointers are pointers, i.e. variables, which point to the address of a
function. You must keep in mind, that a running program gets a certain space in the
main-memory. Both, the executable compiled program code and the used variables,
are put inside this memory. Thus a function in the program code is, like e.g. a
character field, nothing else than an address. It is only important how you, or better
your compiler/processor, interpret the memory a pointer points to.
void (*foo)(int);


Say you declare a variable named foo.

       int foo;

This variable occupies some memory. On current mainstream Intel processors,
it occupies four bytes of memory (because an int is four bytes wide).
Now let's declare another variable.

       int *foo_ptr = &foo;

foo_ptr   is declared as a pointer to int. We have initialized it to point to foo.
As I said, foo occupies some memory. Its location in memory is called its
address. &foo is the address of foo (which is why & is called the “address-of
Think of every variable as a box. foo is a box that is sizeof(int) bytes in
size. The location of this box is its address. When you access the address, you
actually access the contents of the box it points to.
This is true of all variables, regardless of type. In fact, grammatically speaking,
there is no such thing as a “pointer variable”: all variables are the same. There
are, however, variables with different types. foo's type is int. foo_ptr's type
is int *. (Thus, “pointer variable” really means “variable of a pointer type”.)
The point of that is that the pointer is not the variable! The pointer to foo is
the contents of foo_ptr. You could put a different pointer in the foo_ptr box,
and the box would still be foo_ptr. But it would no longer point to foo.

You know about structures and union. Why is Union used? Give a real life example in which you’ll use
The difference between structure and union in c are: 1. union allocates the memory equal to
the maximum memory required by the member of the union but structure allocates the
memory equal to the total memory required by the members. 2. In union, one block is used
by all the member of the union but in case of structure, each member have their own memory


SSL (Secure Sockets Layer) is the standard security technology for establishing an encrypted link
between a web server and a browser. This link ensures that all data passed between the web server
and browsers remain private and integral. SSL is an industry standard and is used by millions of
websites in the protection of their online transactions with their customers.

To be able to create an SSL connection a web server requires an SSL Certificate. When you choose
to activate SSL on your web server you will be prompted to complete a number of questions about
the identity of your website and your company. Your web server then creates two cryptographic
keys - a Private Key and a Public Key.

The Public Key does not need to be secret and is placed into a Certificate Signing Request (CSR) - a
data file also containing your details. You should then submit the CSR. During the SSL Certificate
application process, the Certification Authority will validate your details and issue an SSL Certificate
containing your details and allowing you to use SSL. Your web server will match your issued SSL
Certificate to your Private Key. Your web server will then be able to establish an encrypted link
between the website and your customer's web browser.

The complexities of the SSL protocol remain invisible to your customers. Instead their browsers
provide them with a key indicator to let them know they are currently protected by an SSL
encrypted session - the lock icon in the lower right-hand corner, clicking on the lock icon displays
your SSL Certificate and the details about it. All SSL Certificates are issued to either companies or
legally accountable individuals.

Typically an SSL Certificate will contain your domain name, your company name, your address, your
city, your state and your country. It will also contain the expiration date of the Certificate and
details of the Certification Authority responsible for the issuance of the Certificate. When a browser
connects to a secure site it will retrieve the site's SSL Certificate and check that it has not expired, it
has been issued by a Certification Authority the browser trusts, and that it is being used by the
website for which it has been issued. If it fails on any one of these checks the browser will display a
warning to the end user letting them know that the site is not secured by SSL.

What is the difference between HTTP and HTTPS?

HTTP stands for HyperText Transport Protocol, which is just a fancy way of saying it's a protocol
(a language, in a manner of speaking) for information to be passed back and forth between web
servers and clients.

You really don't need to know what it all stands for; the important thing is the letter S which
makes the difference between HTTP and HTTPS. The S (big surprise) stands for "Secure". You
probably didn't need me to tell you that, because you already knew it had something to do with

If you visit a website or webpage, and look at the address in the web browser, it will likely begin
with the following: http://. This means that the website is talking to your browser using the
regular 'unsecure' language. In other words, it is possible for someone to "eavesdrop" on your
computer's conversation with the website. If you fill out a form on the website, someone might see
the information you send to that site.
This is why you never ever ever enter your credit card number in an http website!

But if the web address begins with https://, that basically means your computer is talking to the
website in a secure code that no one can eavesdrop on.

You understand why this is so important, right? If a website ever asks you to enter your credit
card information, you should automatically look to see if the web address begins withhttps://. If
it doesn't, there's no way you're going to enter sensitive information like a credit card number!

Why should I hire u?
Sir am sure that this position (software programmer for example) needs to have high analytical
and logical capabilities and strong fundamentals and this I have already proved in my written
test and technical round and now I am on par with the other candidates but sir I am highly
motivated and am always ready and flexible to work for long hours to achieve excellence. I
take my work not as a duty but as a responsibility. Above all I don’t just for the money or pay I
receive but I will work with the dedication and gratitude towards the organization which gave
me an opportunity to prove myself"

Please note this transaction number for future reference: IR04947034
Debit Transaction Status : Completed Successfully

Shared By: