Saturday, August 30, 2008

Oracle...What is it???

Hello everyone…

Today we will learn something about Oracle

Q.What is Oracle?

A.I guess the first question that clicks your mind is, "What is a database"? A database is an organized collection of data. The data can be textual, like order or inventory data, or it can be pictures, programs or anything else that can be stored on a computer in binary form.

A relational database stores the data in the form of tables and columns. A table is the category of data, like Employee, and the columns are information about the category, like name or address.
Some databases have minimal feature sets and only store data, while others include programming languages, facilities and utilities to support enterprise-level applications like ERP and data warehousing. Oracle is the #1 database and has the most advanced feature set.
Oracle is made up of a set of processes running in your operating system. These processes manage how data is stored and how it is accessed. I will cover these processes in detail in the future; but for now we just need to understand that Oracle is a program that is running in the background, maintaining your data for you and figuring out where it should go on your hard drive.

In almost all relational databases, data is accessed through SQL, or Structured Query Language, and Oracle is no exception. SQL allows you to SELECT your data, INSERT new records, UPDATE existing records and DELETE records you want to get rid of. SQL can be embedded in other languages or you can run scripts of SQL directly against the database.

PL/SQL is the procedural language extension to SQL. PL/SQL is a programming language like C, Java or Pascal. In the Oracle world, there is no better way to access your data from inside a program. SQL can be natively embedded in PL/SQL programs. I will be using both SQL and PL/SQL very heavily in my future articles.

PL/SQL is a feature-rich language geared toward developing database applications. PL/SQL is the procedural language of the database, but it is also the procedural language for most of Oracle's tools. Programs that run inside the database are called stored procedures. These stored procedures are almost always PL/SQL, but can be written in Java.


Q.What are the Oracle’s tools to access the database and create programs ?

A.Some of Oracle's tools to access the database and create programs are:

SQL*Plus has a command line interface. With it, you can access the database and write stored procedures, you can run SQL commands to retrieve data and you can run scripts of either SQL, PL/SQL or built-in SQL*Plus commands, or a mixture of those three things.

Oracle Developer is a 4GL GUI application Builder. With Developer, you can create forms, reports, and graphics. Oracle*Forms and Oracle*Reports are two components of Oracle Developer. Earlier versions created client-server applications, but the more recent versions create web applications that run under the Oracle Application Server (OAS). OAS is a web-based application server sold by Oracle. OAS is licensed separately and is very expensive (as are its closed source competitors). The current version is OAS 10g.

HTML DB is a fairly new application builder geared toward web development (added to the DB with release 9iR2). HTML DB does not need an application server. This tool runs from the database and can be presented to the web using the Apache web server that comes with the database. Since this is not an additional license, it provides a cheaper way to develop applications. Developer is a feature-rich thick client with all of the normal GUI widgets. HTML DB is HTML-based and is very thin and limited to the HTML provided widgets.

Oracle Enterprise Manager (OEM) is the Enterprise GUI tool to manage the database. From this tool, you can perform any action in the database that is required. This tool is primarily used for administration but can also be provided to developers for application tuning and monitoring. In Oracle 10g, OEM also provides Grid control.

There are also a lot of third party tools for accessing the database. For our purposes, our primary tool for data access will be SQL*Plus. In the future, I will cover creating applications with HTML DB and accessing your data with some choice third-party tools.

How about Java? Java is the current hot language, especially on the web. I will also be covering Java in the database in future articles. Java is natively supported by Oracle. Technically, you could use Java to create your stored procedures if you chose, but I am not a proponent of that. When you are working inside the database, I believe that you should only resort to Java when you cannot accomplish a task in PL/SQL. As you'll see, there is very little you cannot accomplish with PL/SQL.

It will be hard to learn Oracle if you can't play with it. So where can you get access to this software? Oracle has a technical web site called OTN (Oracle Tech Net) that provides access to all of Oracle's software and all of the documentation for that software. There are also forums and many other tools to use to help you learn Oracle. You have to register to access it, but registration is free. Go to http://otn.oracle.com/ and get an ID today. In future articles, I will be spending a lot of time accessing this web site to download software and documentation. My nextarticle will cover downloading Oracle 10g and installing it.

As a side note, Oracle provides all of their software with a developer's license. This license allows you to try out the software free of charge. You may not create production applications without a paid license, but development with the tools is acceptable. I am not a lawyer, so I recommend that you review the license when you download any software from OTN.

Also, a note about versioning in Oracle; all products released by Oracle have a version. The current version of the database is 10g Release 1, also written as 10gR1. In addition to this semantic release name, each release has a numeric version. The numeric release for 10gR1 is 10.0.1.3.

Will continue further with a detailed study…be in touch…

Take care.


Tuesday, August 26, 2008

Sunday, August 24, 2008

NIIT Edgeineers-Big F.M. celebrated Freshers Day at Techno India Engg. College, Kolkata

Recently Edgeineers Club in association with Big F.M. celebrated freshers day at Techno India Engg. College, Kolkata. The best and most famous RJ's of kolkata Mr. Rakesh, Ms. Pragya and Mr. Darshan from Big F.M. participated in the event along with Mr. Pooshan Banerjee and Mr. Madhu Sudan of NIIT.

Most of the participants were from 1st semester. All The new students and guests were given flowers by the senior students of the college. Mr. Rakesh and Ms. Pragya initiated the activity with a lot of fun elements. They talked about the different phases that the students will experience during their campus life.

After that there was a session from Mr. Pooshan Banerjee (Sun Certified Professional) on the "Global IT environment and opportunities for Engg and IT professionals". He briefed the students about various new technologies from Sun Microsystems, Microsoft, Adobe and various offerings from NIIT Edgeineers product portfolio. The punch line "Ambition, Everyone has IT. How far will you take yours?" made the students really excited. It was followed by a doubt clearence session.

After that there was a Q&A session in which students were given free gifts like NIIT-Sun Micro Systems cobranded laptop bags, Tshirts, Pens.
One of the student was so excited that he wore the Edgeineers T Shirt in front of everyone and said "Proud to be an Edgeineer".
After that Mr. Madhu Sudan appraised everybody about our Edgeineers Club and what benefits the members will get after joining the club. More than 120 students joined the Edgeineers Club the same day. We welcome all our new members from Edgeineers club family.

The students who just started their college life were enthrilled with such freshers welcome. Some of the students gave the feedback that they were not expecting such kind of wonderful experience and this is the best freshers welcome they have ever seen.

With all sweet memories we bade a good bye to the students. Seeing so many smiles on the faces of the students was really a wonderful experience.

We will be sharing with you more such experiences in future also.

We will be happy to receive your comments/feedbacks at niitedgeineers@gmail.com.

Cheers

NIIT Edgeineers


Friday, August 22, 2008

Solaris Insight

Hi Friends

Today I am continuing my Q&A session on Solaris

Q. How do we know how many LAN cards we have in server?
Ans.Just Type in the following command at prompt#ifconfig -a.That shall give the LAN Cards as well as total Physical and Logical IP Addresses
Imp -> dmesg - It displays all configured items on systems.

Q. What file contains the location of the namespace configuration textfiles such as hosts.rev, named.local, etc..?
Ans. /etc/named.conf

Q. Which of the following commands can tell you whether packets are being delayed or dropped on your network?
Ans. spray

Q. What is sticky bit?
Ans. Sticky Bit is a permission bit that protects the files with in a Directory. If the directory has sticky bit set, a file can be deleted by the owner of the file, the owner of the directory or root.
This Prevents a user from deleting other users files from public directories . If a directory is writable and has sticky bit is set, files within directory removed or renamed only if one or more following is true:
- The user owns the file
- The user owns the directory
- The file writable by the User
- The user is "root"
chmod 1777 project_dir
The sticky bit is displayed as the letter t in the execute field for 'others'.

Q. How many different kill signals are there?
Ans. 47 They are:
EXIT HUP INT QUIT ILL TRAP ABRT EMT FPE KILL BUS SEGV SYS PIPE ALRM TERM USR1 USR2 CLD PWR WINCH URG POLL STOP TSTP CONT TTIN TTOU VTALRM PROF XCPU XFSZ WAITING LWP FREEZE THAW CANCEL LOST XRES RTMIN RTMIN+1 RTMIN+2 RTMIN+3 RTMAX-3 RTMAX-2 RTMAX-1 RTMAX

Q. How will you add a virtual IP address to a server. Given the interface qe0 and IP 10.10.1.150?
Ans. Syntax:
#ifconfig qe0:1 plumb
# ifconfig qe0:1 10.10.1.150 up
where "qe0" is an interface (e.g., le0) and N is a number between 1 and . Removing the pseudo interface and associated address is done with "ifconfig qe0:1 10.10.1.150 down". As with physical interfaces, all you need to do is make the appropriate /etc/hostname.qe0:X file.

Q. What is the big difference between /dev/dsk and /dev/rdsk ?
Ans. In Solaris whenever you create a new slice using format command a raw physical slice or a Raw Device will be created which is addressed as /dev/rdsk/c#d#s# where # is the number for slice.
After formatting it with newfs command the slice will be addressed as /dev/dsk/c#d#s# which can now be used for mounting.
eg. newfs /dev/rdsk/c0d0s4
mkdir /oracle
mount /dev/dsk/c0d0s4 /oracle
After mounting /dev/dsk/c#d#s# is called as Block Device
/dev actually contains logical device names which are links (Shortcuts in windows terminology) to actual physical devices in /devices directory.

Keep Reading

Cheers

Padhaku Einstein
Contact me at einstein.padhaku@gmail.com

Thursday, August 21, 2008

Solaris Insight

Hi Friends

Today I will be discussing Q&A on Solaris.

Q. What are the different phases in Solaris boot process?
Ans. Boot phases of Solaris Operating Environment are:
1.boot PROM
2.boot programs like bootblk,ufsboot
3.kernel initialization like loading modules
4. init phase

Q. Why we use / for mount any filesystem?
Ans. / represents the top most level of the OE directory hierarchy, therefore other sub directories have to be mounted under /

Q. What is diffrence between Process and Daemon?
Ans. A 'daemon' is a software process that runs in the background (continuously) and provides the service to client upon request. For example named is a daemon. When requested it will provide DNS service. Other examples are:
xinetd (it is a super-daemon, it is responsible for invoking other Internet servers when they are needed) inetd (same as xinetd, but with limited configuration options) sendmail/postfix (to send/route email) Apache/httpd (web server) 'server process' run runs one time, when called by a daemon. Once done it will stop. For example telnetd (in.telnetd) or ftpd called from xinetd/inetd daemon . By calling server process from daemon you can save the load and memory. Use a server process for small services such as ftpd, telnetd.

Q. What is Piping?
Ans. Piping: sending the output of a command to the input of another is called piping. A unix pipe provides a one-way flow of data.
example:
if a Unix users issues the command $who sort lpr then the Unix shell would create three processes with two pipes between them:
A pipe can be explicitly created in Unix using the pipe system call. Two file descriptors are returned--fildes[0] and fildes[1], and they are both open for reading and writing. A read from fildes[0] accesses the data written to fildes[1] on a first-in-first-out (FIFO) basis and a read from fildes[1] accesses the data written to fildes[0] also on a FIFO basis.
When a pipe is used in a Unix command line, the first process is assumed to be writing to stdout and the second is assumed to be reading from stdin. So, it is common practice to assign the pipe write device descriptor to stdout in the first process and assign the pipe read device descriptor to stdin in the second process. This is elaborated below in the discussion of multiple command pipelines.

Q. What file controls global variables for system wide values for the Bourne Shell?
Ans./etc/profile

Q. Partition sizes can be set manually or from what configuration?
Ans. /etc/format.dat
I will be sharing some more Q&A on Solaris on my next Write up.
Keep Reading
Cheers
Padhaku Einstein

Saturday, August 16, 2008

Solaris - A Closer Look

Hi Friends

First of All Wish you all 62nd Independence Day.
Today I will be talking about the most secure OS on the planet Earth. Yes, you are right, it's SOLARIS.
Solaris is a Unix-based operating system introduced by Sun Microsystems. Solaris is known for its scalability, especially on SPARC systems, as well for being the origin for many innovative features which made it completely invinsible such as Self Healing, DTrace (Dynamic Tracing) and ZFS (128 bit file system) etc.Solaris is an Open Source OS and Free to use. Because of its advanced security it reduces the risk of intrusions.

Self Healing: The main goal of this feature is for the system to be fault-tolerant by detecting and repairing its own faults on the fly, without user intervention. Solaris has self diagnosis mechanism that automatically identify and isolates system problems before they cause downtime. It hence helps to stop problems before that happen.

ZFS: ZFS is a 128-bit file system, so it can store 18 billion billion (1.84 × 1019) times more data than current 64-bit systems. The limitations of ZFS are designed to be so large that they will not be encountered in for some time. The features of ZFS include support for high storage capacities, integration of the concepts of filesystem and volume management, snapshots and copy-on-write clones, on-line integrity checking and repair, and RAID-Z.

Storage Pools: Unlike traditional file systems, which reside on single devices and thus require a volume manager to use more than one device, ZFS filesystems are built on top of virtual storage pools called zpools. A zpool is constructed of virtual devices (vdevs), which are themselves constructed of block devices: files, hard drive partitions, or entire drives, with the last being the recommended usage.

DTrace: DTrace is a comprehensive dynamic tracing framework created by Sun Microsystems for troubleshooting system and application problems in real time. DTrace is designed to give operational insights that allow users to observe, debug, tune and troubleshoot applications and the OS itself. Special consideration has been taken to make it safe to use in a production environment. For example, there is minimal probe effect (Probe effect is unintended alteration in system behavior caused by measuring that system) when tracing is underway, and no performance impact associated with any disabled probe; this is important since there are tens of thousands of DTrace probes that can be enabled.Tracing programs (also referred to as scripts) can be written using the D programming language (not to be confused with other programming languages named "D"). The language is a subset of C with added functions and variables specific to tracing. DTrace implementations require tight integration with the operating system kernel.

Solaris Containers: Solaris Containers (including Solaris Zones) is an implementation of operating system-level virtualization technology. A Solaris Container is the combination of system resource controls and the boundary separation provided by zones. Zones act as completely isolated virtual servers within a single operating system instance. By consolidating multiple sets of application services onto one system by placing each into isolated virtual server containers, system administrators can reduce cost and provide all the same protections of separate machines on a single machine.

Most of the companies are implementing Solaris at server level because of its performance, security, scalibility, Self healing, low maintainance etc.

I will be talking about this magical OS more in my coming writeups.

Cheers

Madhu S

Tuesday, August 12, 2008

Operating System

Hi Friends
Today i am very Happy. We have opened up our account in Olympics with a gold medal. Many many congrats to the Youth Icon Abhinav Bindra from Edgeineers Club. You can share your best wishes messages with me at einstein.padhaku@gmail.com Like Abhinav we also have to Get an Edge and win in life, though our fields can be different.

Now lets start our todays session.

Q. What do you mean by deadlock?

Ans. In simple terms a deadlock is a situation wherein two or more competing actions from processes are waiting for the other to finish, and thus neither ever does. Each process holding a resource that is needed from the other process. eg: process p1 holding resource r1 waiting for resource r2 to complete and process p2 holding a recourse r2 waiting for resource r1 to complete.

Q. What is a Real-Time Operating System?

Ans. A real time process is a process that must respond to the events within a certain time period. A real time operating system is an operating system that can run real time processes successfully.
Depending on this the real time operating system is of two types:
1)Hard Real-Time(in this system has to respond within the specified time limits in case if it fails to respond within that time then the process is considered to be fail.e.g Robot Systems )

2)Soft Real-Time(in this if system fails to respond within the specified time limits then the process is not considered to be failed rather it gets some more time from the system to get comlpete.)

Q. What is the relation between process system time, process waiting time , and process CPU time?

Ans. Process system time (turn around time) = process cpu time + process waiting time.

Q. What resources are used when a thread created? How do they differ from those when a process is created?

Ans. When a thread is created the threads does not require any new resources to execute the thread shares the resources like memory of the process to which they belong to. The benefit of code sharing is that it allows an application to have several different threads of activity all within the same address space. Where as a new process creation is very heavyweight because it always requires new address space to be created and even if they share the memory then the interprocess communication is expensive when compared to the communication between the threads.

Q. What is Memory-Management Unit (MMU)?

Ans. Hardware device that maps virtual to physical address.

In MMU scheme, the value in the relocation register is added to every address generated by a user process at the time it is sent to memory.
->The user program deals with logical addresses; it never sees the real physical addresses.

Q. What is fragmentation? Different types of fragmentation?

Ans. Fragmentation occurs in a dynamic memory allocation system when many of the free blocks are too small to satisfy any request.

External Fragmentation: External Fragmentation happens when a dynamic memory allocation algorithm allocates some memory and a small piece is left over that cannot be effectively used. If too much external fragmentation occurs, the amount of usable memory is drastically reduced. Total memory space exists to satisfy a request, but it is not contiguous

Internal Fragmentation: Internal fragmentation is the space wasted inside of allocated memory blocks because of restriction on the allowed sizes of allocated blocks. Allocated memory may be slightly larger than requested memory; this size difference is memory internal to a partition, but not being used Reduce external fragmentation by compaction
->Shuffle memory contents to place all free memory together in one large block.
->Compaction is possible only if relocation is dynamic, and is done at execution time.

Q. What is starvation and aging?

Ans. Starvation: Starvation is a resource management problem where a process does not get the resources it needs for a long time because the resources are being allocated to other processes.

Aging: Aging is a technique to avoid starvation in a scheduling system. It works by adding an aging factor to the priority of each request. The aging factor must increase the request’s priority as time passes and must ensure that a request will eventually be the highest priority request (after it has waited long enough).

One of our Edgeineers Club member Ajay has mailed me and asked about certain tips on .Net, we will surely be discussing about that in our coming interactions.

Keep reading...

Cheers

Padhaku Einstein

Contact me at einstein.padhaku@gmail.com

Sunday, August 10, 2008

Operating System

Hi Friends....


Today I am continuing my talk about operating system...

Q. What is the main component of operating system?

Ans.Main component of operating system are kernel and shell

Shell is a interface between application program and kernel whenever application program wants some work to be done. It contacts kernel and kernel inturn perform work with the help of device drivers .thus we can say kernel is an interface between hardaware and shell.

kernel uses device drivers to control microcontroller card of peripherial device and inturn work is being accompalished.

Application Progam -> [Shells ->Kernel ->Device Driver -> Controller Card -> Physical Hardaware]

Q.What is difference between NTFS & FAT32?

Ans. NTFS stands for new technology file system or network technology file system. In NTSF partition size can be of 2 TB or more. and file size can be 16 TB. file/folder encryption is done. and it supports file name character upto 255.

FAT32 stands for File allocation table. in FAT32 partition size can be Upto 2 TB. and file size can be 4 GB. file/folder encryption is not possible in FAT32. and it supports file name character upto 8.3.

Q. what is difference between system call and system program?

Ans. System call is an interface between running procee and O.S. If a process needs a service from O.S. it issues a system call. System call are special APIs provided by OS to let the user manipulate hardware in restricted manner or to do priviledged jobs.

System program is a program provided by the O.S. for some common task. System programs are special program which lies between OS and Application programs. They are closer to kernel as compared to application programs. ex compiler, OS , Editor.

Q. What is virtual memory?

Ans. A virtual memory is a hardware technique where the system appears to have more memory that it actually does. This is done by time-sharing, the physical memory and storage parts of the memory one disk when they are not actively being used.

Q. Why paging is used?

Ans. Paging is solution to external fragmentation problem which is to permit the logical address space of a process to be noncontiguous, thus allowing a process to be allocating physical memory wherever the latter is available.

Q. What is Throughput, Turnaround time, waiting time and Response time?

Ans. Throughput – number of processes that complete their execution per time unit
Turnaround time – amount of time to execute a particular process
Waiting time – amount of time a process has been waiting in the ready queue
Response time – amount of time it takes from when a request was submitted until the first response is produced, not output (for time-sharing environment)

Keep Reading....

Cheers

Padhaku Einstein

write to me @ einstein.padhaku@gmail.com


Friday, August 8, 2008

.Net Framework

The Microsoft .NET Framework is a software technology that is available with several Microsoft Windows operating systems. It includes a large library of pre-coded solutions to common programming problems, a runtime or virtual machine that manages the execution of programs written specifically for the framework, and a set of tools for configuring and building applications. The .NET Framework is a key Microsoft offering and is intended to be used by most new applications created for the Windows platform.

The pre-coded solutions that form the framework's Base Class Library cover a large range of programming needs in a number of areas, including user interface, data access, database connectivity, cryptography, web application development, numeric algorithms, and network communications. The class library is used by programmers who combine it with their own code to produce applications.

Architecture

The core aspects of the .NET framework lie within the Common Language Infrastructure, or CLI. The purpose of the CLI is to provide a language-neutral platform for application development and execution, including functions for exception handling, garbage collection, security, and interoperability. Microsoft's implementation of the CLI is called the Common Language Runtime. CLI Languages are computer programming languages that are used to produce libraries and programs that conform to the Common Language Infrastructure.e.g.C#, C++/CLI, VB.Net.,CORBA etc.

Principal Design Features

Interoperability
Because interaction between new and older applications is commonly required, the .NET Framework provides means to access functionality that is implemented in programs that execute outside the .NET environment. Access to COM components is provided in the System.

Common Runtime Engine
Programming languages on the .NET Framework compile into an intermediate language known as the Common Intermediate Language (CIL). In Microsoft's implementation this intermediate language is not interpreted but rather compiled in a manner known as just-in-time compilation (JIT) into native code. The combination of these concepts is called the Common Language Infrastructure (CLI). Microsoft's implementation of the CLI is known as the Common Language Runtime (CLR).

Language Independence

The .NET Framework introduces a Common Type System, or CTS. The CTS specification defines all possible datatypes and programming constructs supported by the CLR and how they may or may not interact with each other. Because of this feature, the .NET Framework supports the exchange of instances of types between programs written in any of the .NET languages.
Simplified Deployment
Installation of computer software must be carefully managed to ensure that it does not interfere with previously installed software, and that it conforms to increasingly stringent security requirements. The .NET framework includes design features and tools that help address these requirements.

Security

The design is meant to address some of the vulnerabilities, such as buffer overflows, that have been exploited by malicious software. Additionally, .NET provides a common security model for all applications.

Portability

The design of the .NET Framework allows it to theoretically be platform agnostic, and thus cross-platform compatible. That is, a program written to use the framework should run without change on any type of system for which the framework is implemented.

.NET v/s. Java

The CLI and C# have many similarities to Sun's JVM and Java. They are strong competitors. Both are based on a virtual machine model that hides the details of the computer hardware on which their programs run. Both use their own intermediate byte-code, Microsoft calling theirs Common Intermediate Language (CIL; formerly MSIL) and Sun Java bytecode. On .NET the byte-code is always compiled before execution, either Just In Time (JIT) or in advance of execution using the ngen.exe utility. With Java the byte-code is either interpreted, compiled in advance, or compiled JIT. Both provide extensive class libraries that address many common programming requirements and address many security issues that are present in other approaches.
.NET in its complete form (Microsoft's implementation) is only available on Windows platforms and partially available on Linux and Macintosh, whereas Java is fully available on many platforms.
"NIIT is Microsoft's largest training partner"

Wednesday, August 6, 2008

Operating System Insight

Hi Friends...


Today I will share with you some questions on operating system.
Q. What is mounting?

Mounting is the mechanism by which two different file systems can be combined together. This is one of the services provided by the operating system, which allows the user to work with two different file systems, and some of the secondary devices.

Q. What do you mean by FAT (File Allocation Table)?

A table that indicates the physical location on secondary storage of the space allocated to a file. FAT chains the clusters (group of sectors) to define the contents of the file. FAT allocates clusters to files.

Q. What is a Kernel?

Kernel is the nucleus or core of the operating system. This represents small part of the code, which is thought to be the entire operating system, it is most intensively used. Generally, the kernel is maintained permanently in main memory, and other portions of the OS are moved to and from the secondary storage (mostly hard disk).

Q. What is Multi-Processing?

The ability of an operating system to use more than one CPU in a single computer system. Symmetrical multiprocessing refers to the OS's ability to assign tasks dynamically to the next available processor, whereas asymmetrical multiprocessing requires that the original program designer choose the processor to use for a given task at the time of writing the program.

Q. What is SMP?

To achieve maximum efficiency and reliability a mode of operation known as symmetric multiprocessing is used. In essence, with SMP any process or threads can be assigned to any processor.

Q. What is multi Tasking?

Multitasking is a logical extension of multi-programming. This refers to the simultaneous execution of more than one program, by switching between them, in a single computer system.

Q. Define multi Threading?

The concurrent processing of several tasks or threads inside the same program or process. Because several tasks can be processed parallely and no tasks have to wait for the another to finish its execution.

Q. What are the advantages of threads?

Threads provide parallel processing like processes but they have one important advantage over process, they are much more efficient.
Threads are cheaper to create and destroy because they do not require allocation and de-allocation of a new address space or other process resources.
It is faster to switch between threads. It will be faster since the memory-mapping does not have to be setup and the memory and address translation caches do not have to be violated.
Threads are efficient as they share memory. They do not have to use system calls (which are slower because of context switches) to communicate.


Will be sharing with you some more Q&A soon...


Keep Reading


Padhaku Einstein

Monday, August 4, 2008

Java Basics

Hi Friends

Today I will share with you some questions on basics of Java.

Q. What are the three OOPs principles and their defination?
Ans : Encapsulation, Inheritance and Polymorphism are the three OOPs principles.
Encapsulation:Is the Mechanism that binds together code and the data it manipulates, and keeps both safe from outside interference and misuse.
Inheritance:Is the process by which one object acquires the properties of another object.
Polymorphism:Is a feature that allows one interface to be used for a general class of actions.

Q. What is a compilation unit?
Ans : Java source code file.

Q. What is the difference between constructor and method?
Ans : A constructor creates an instance of a class. They are not inherited. A method is a group of java statements. Methods are intereted.

Q. What is meant by variable?
Ans: Variables are locations in memory that can hold values. Before assigning any value to a variable, it must be declared.

Q. What are the kinds of variables in Java and what are their uses?
Ans: Java has three kinds of variables namely, the instance variable, the local variable and the class variable.
Local variables are used inside blocks as counters or in methods as temporary variables and are used to store information needed by a single method.
Instance variables are used to define attributes or the state of a particular object and are used to store information needed by multiple methods in the objects.
Class variables are global to a class and to all the instances of the class and are useful for communicating between different objects of all the same class or keeping track of global states.

I will be sharing with you more Q&A soon...

Keep Reading....

Cheers

Padhaku Einstein


Sunday, August 3, 2008

Introducing Padhaku - "Einstein of Latest Technologies"

Hi All

I am very happy to share with you that now we have with us "Einstein Padhaku".

Padhaku is always curious about knowing new technologies in details and sharing it with others.


He will be sharing with us Q&A's on latest technologies which will help all of us to build a strong foundation.

I on behalf of NIIT Edgeineers community welcome Padhaku to Edgeineers Club.

Cheers

Madhu S

Rich Internet Application (RIA)-An Overview

A Rich Internet Application provides a great experience for its users. It should be easy to use, engaging, and targeted to perform its task very well. To many (RIAs) are web applications that have the features and give application experience of traditional desktop applications. RIAs typically transfer the processing necessary for the user interface to the web client but keep the bulk of the data (i.e. the state of the program, the data, etc.) back on the application server.

RIAs typically do the following:

Run in a web browser (Multiple applications through one interface.
Run locally in a secure environment called a sandbox

The best example of RIA is http://www.google.com/ which not only offers search services but offers many application interface like blogger, Orkut, Images, Reader etc from same browser.

Traditional web applications centered all activity around a client-server architecture with a thin client. Under this system all processing is done on the server, and the client is only used to display static (in this case HTML) content. The biggest drawback with this system is that all interaction with the application must pass through the server, which requires data to be sent to the server, the server to respond, and the page to be reloaded on the client with the response. By using a client side technology which can execute instructions on the client's computer, RIAs can circumvent this slow and synchronous loop for many user interactions.

All RIAs share one characteristic: they introduce an intermediate layer of code, often called a client engine, between the user and the server. This client engine is usually downloaded as part of the instantiation of the application, and may be supplemented by further code downloads as use of the application progresses. The client engine acts as an extension of the browser, and usually takes over responsibility for rendering the application's user interface and for server communication.

There are many technologies that are used to create RIA application. Some of the User friendly, easy to use technologies are
Adobe Flex, AJAX, Silverlight, Java FX etc.


Saturday, August 2, 2008

Highlights of Sun Seminar on "Future of Java"

Organized by Edgeineers Club of Kolkata in association with Sun Microsystems a Sun Seminar on “Future of Java” was held on 26th of July 08 at St. Xaviers Auditorium, Kolkata. The speakers were Mr. Rajesh R (Evangelist, Sun Micro systems) and Mr. Anup Nautiyal (National Manager, Sales, Sun Micro systems).
As we were celebrating NIIT’s 500 days partnership with Sun so everyone in NIIT East was excited about the event. The main objective behind the event was to build a strong connect between students, academicia, industry and NIIT.
Though officially the first session was due to start at 3:30 p.m., students were in a queue since 2:30 p.m. itself. The response was an overwhelming one. The students were also given Sun Develop Network Program registration form and more than 350 students enrolled for the SDN membership.
During his whole interaction with the audience Mr. Rajesh talked about the open source technologies and platforms. He started his session by giving introduction about Sun Microsystems and its product portfolio.
He also discussed about the benefits of open source like inter operability, platform independence, security etc. Open source technologies provide flexibility of free sharing the content with source code. The participants thus can modify this code and redistribute them back into the community or other organizations.

Later he talked about Open Solaris OS and discussed some of the features like D Trace, Self Healing, ZFS (Zeta Byte File System), Solaris containers (limitless partitioning, keepings thousands of applications on one system) with the students. He discussed with the students the security features of Open Solaris and increase in performance.
The students were spell bound by the demonstration of futuristic technology and left the premises with a WOW feeling.
Edgeineers Club will be orgainizing such kind of events in future also.