March 03 2011

What is the difference between UNIX and Linux

Tagged Under : , , , , , , , , , , , , , , , , , , , , , , ,

In the world of information technology, the words UNIX and Linux are famous and most common because of its wide usage across the world.  Both are operating systems and UNIX is the first operating system written in the C language.  It is also a freeware product with lot of extension and new ideas provided by universities and individuals in a variety of versions.  Also, UNIX is used in the workstation products from Silicon Graphics, IBM, Sun and other companies.  Unix environment and client/server program models were important element in the evolution of interent and changing the face of modern computing as centered in the networks rather than on personal computer solutions.

Unlike UNIX, Linux, which is a clone of UNIX, was designed for individual computer segment and available on free of cost or with a very less cost compared to UNIX operating system.  It has already gained popularity as a replacement operating system to proprietary operating systems like Windows and very efficient and very fast performing system.   Even though windows occupied the number one spot in terms of desktop operating system, Linux has evolved as an alternative to it.  It is also a publicly open and extendible by contributors such as students because it conforms to the Portable Operating System Interface standard user and programming interfaces, software developers can develop applications which can be ported to other OS.  There are many electronic equipment are now equipped with Linux such as Mobile Phones, video games, tablet computers, etc.

As a matter of fact, UNIX and Linux are somehow similar with their file structure, commands, etc.  Some minute differences between them might be how some things are implemented.  You can interchange between them and may not experience any difference at all, except for the drivers such as ATi or NVIDIA display drivers, which are not interchangeable.

Even though over the years many UNIX Kernels have been developed, Linux has emerged as the most successful and useful by far. Some it said that Linux is the Windows of Unix, means how Windows is DOS based and always has DOS in the background.

 

October 29 2010

Linux/unix: Basic Ntp Configuration

Tagged Under : , , , , , , , , , , , , , , , , , , , , , ,

Network Time Protocol (NTP) is an Internet protocol used for the transfer of accurate time, providing time information so that a precise time can be obtained and maintained on a network

Most UNIX and Linux operating systems provide built-in time synchronisation functionality with its NTP (Network Time Protocol) daemon. If the NTP service is not available on your version of UNIXLinux, NTP version 4 is open source and can easily be downloaded and configured, compiled and installed from www.ntp.org.

Network Time Protocol is the standard service for time dissemination across TCP/IP networks. It provides accuracies of 1-50 milliseconds, depending on the characteristics of the synchronization source and network paths.

The configuration file fro the NTP daemon is named ntp.conf and contains a list of reference clocks that it can synchronise too. The command ‘server’ specifies the reference clock, any characters after the ‘#’ symbol are comments, example:
server time-a.nist.gov # Public NTP server: NIST
driftfile /var/lib/ntp/ntp.drift

The drift file command identifies the location where the drift is recorded (sometimes referred to as a ‘frequency error). This value can be offset by NTP to ensure of increased accuracy. When configured, NTP can be controlled using the commands ‘ntpd start’ ‘ntpd stop’ ‘ ntpq –p’ (displays status)

NTP can also authenticate timing resources Note: It is strongly recommends that you configure a time server with a hardware source rather than from the internet where there is no authentication. Authentication codes are specified in the ‘ntp.keys’ file.

Specialist NTP servers are available that can receive transmissions from either GPS or national time reference broadcasts. They are relatively cheap and the signal is authenticated providing a secure time reference.

Authentication allows passwords to be specified by the NTP server and its clients. NTP passwords or keys are stored in the ntp.keys file in the following format: number M (The M stands for MD5 encryption), password:

1 M mypassword

3 M my2ndpassword

5 M my3rdpassword

Authentication for NTP has been developed to prevent malicious tampering with system synchronisation just as firewalls have been developed to protect networks from attack but as with any system of security it only works if it is utilised.

Richard N Williams is a technical author and specialist in atomic clocks, telecommunications, NTP and network time synchronisation helping to develop dedicated NTP clocks. Please visit us for more information about an NTP server or other network time server solutions.

Incoming search terms for the article:

July 29 2010

Linux and Unix Software Development and Its Use in Embedded Systems

Tagged Under : , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,

Unix and Linux are both POSIX compliant operating systems. POSIX defined a standard interface to the low-level operating system which greatly reduces the amount of work required to produce UNIX and Linux software.

Unix and Linux software development

The standard user command line and scripting interface was based on the Korn shell. Other user-level programs, services and utilities include awk, echo, ed, and hundreds of others. Required program-level services include basic I/O (file, terminal, and network) services. POSIX also defines a standard threading library API which is supported by most modern operating systems.

Currently POSIX documentation is divided in three parts:

POSIX Kernel APIs

POSIX Commands and Utilities

POSIX Conformance Testing

Linux Development requires both POSIX and 3rd party/native GDI and GUI frameworks to create usable Linux and UNIX software. DOTNUTSHELL can create highly scalable and usable POSIX software which can be run on UNIX and Linux. The software can range from simple utilities to distributed software which has to be run on heterogenous platforms such as Linux, UNIX and Windows.

Linux and UNIX development is also the desired platform and framework for the creation of embedded software:

Embedded software and embedded systems, are those that require 100% of resources shared across a single platform often used to monitor, update and control hardware.

DOTNUTSHELL has experience in creating robust, efficient embedded software running as a monolithic Operating system, or a Kernel add-on in an Embedded Linux distribution.

It is the responsibility of the underlying embedded software system to maintain state information, persist changes to hardware configuration as well as gaurantee transaction and concurrency control at the hardware interface-level.

We have experience in creating:

MontaVista based embedded software

Embeddix based embedded software

Linux Driver creation

low-level hardware and bus interface strategies and mechanisms

I/O mapping and application/kernel space mixing

Real-time application development

Cross platform development

Assembler/C/C++ based embedded software development

POSIX development

RISC/PowerPC405 & 82xx, MIPS Development

Incoming search terms for the article: