Saturday, March 15, 2008

LabView

If you're going to find yourself working in a research or test lab any time in the future, spend a few days or weeks exploring the LabView program from National Instruments. I have had the pleasure of working with it for over two years now and I think it's a great user friendly programming environment. I have just upgraded to LabView 8.5 and the new utilities are awesome.

Instead of line-by line program entries, you use "G" programming or graphical representations of program instructions. You can control instruments and analyze data from just about any piece of equipment that can be connected to a PC. It runs on a variety of platforms including Windows, PDAs, Mac OS, and Linux. You can custom design your reports and can export data and spreadsheet information to programs such as Excel and Microsoft Access.

Programming can also be done to create virtual instruments to simulate real instrument I/O. For R&D applications it's a must. You also have remote access capabilities so you can operate your test from home over the Internet. This may sound like a sales pitch, but this stuff really works!

Some of the functions of this program include measuring pressure, strain, temperature, displacement, PH, and more. You can design programs using logic levels for digital circuits or design popular control panels with displays for user inputs. In the R&D environment it's useful for conceptual designs, to prove they work or they don't. This can be a great cost saving measure by reducing wasted prototype materials.

At this time, I am in the process of automating several repetitive tests we run on a variety of test measurement equipment. LabView can control each test bed with a minimum of operator intervention and even send me an e-mail when it's complete. This keeps me available for other tasks instead of sitting and waiting for a lengthy test process to run.

Since we are a test lab for gaming jurisdictions in the U.S., Canada, Europe, and other countries, LabView will give us the opportunity to automate tests and produce professional looking reports for each machine. These can then be linked to our Website and viewed by any department withing IGT. This will all but eliminate the tons of paper reports we generate and distribute each year. When we receive certification from Underwriters Laboratory to test to their standards and self-certify our machines, LabView will be an important part of the entire safety testing process.

If this program is something you might want to view, you can download an evaluation copy for a 30 day trial at the National Instruments Website ni.com.

Boot.ini

The boot.ini files tells the computer where the operating system resides on the drive. It will also indicate to the system, any other operating systems installed. The Ntldr (NT loader) files checks the boot.ini for the location of the operating system(s) and will either launch the operating system or present a menu for the user to select the operating system. The boot.ini file is also given the system, hidden, and read-only attributes so it's not visible to the user until you indicate to Windows that you want to view hidden files.
If you have a computer with two operating system installed, the boot.ini file will list each one and a menu will be displayed at startup so you can select which one you want to run. I have used this option for several years when changes needed to be made in older programs that could only be done in Windows 3.1 or Windows 95. I would make the necessary corrections and re-start the system in Windows XP. Of course, these older programs have now been revised but there was a time when dual operating systems were really handy.
One of the computers I have lists the boot.ini file as:
C:\boot.ini
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINNT
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)/WINNT "Microsoft Windows
2000 Professional" /fastdetect
The first part of the file is the boot loader information. It specifies the timeout=30 which indicates the amount of time before the default operating system loads. The next line tells the system where the default operating system is which in my example would be Windows 2000 Professional. This is where ntldr gets the location of the operating system. This location is setup using the ARC or Advanced RISC Computing method.
The second part of the file is the operating system. This section shows the operating system(s) and any other boot programs and their location. My system uses a switch called /fastdetect which tells the operating system to skip peripheral inspections. If you have a dual operating system this is where it will show up. The names in the quotes are the menu items that appear for you to select which system you'd like to run.
If you need to make changes to your boot.ini files, you can use a text editor such as Notepad or simply type MSCONFIG from your cmd.exe screen. Make sure you backup your original boot.ini file before you make any changes in case you're prone to typos. If you need to make other system changes the MSCONFIG option will save you some time by displaying tabs for other system files.
The boot.ini files as we know it, has been alter in the Windows Vista operating system. This information is now stored in the Boot Configuration Data (BCD) store and can still be modified.

Boot Loader

The term boot loader can refer to several programs your computer may use to begin. it can be one or a combination of programs such as Ntldr, BTX, MILO, LILO, BIOS, Coreboot, EMILE, Redboot, Yaboot, PC Booter, Quik, Bootman, GNU GRUB, Elilo, Klibc, Loadin, SILO, Boot X, Gujin, Das U-Boot, SYSLINUX, PALO, and System Commander to name a few. These boot loader programs can be executed automatically or configured to run by command or event.
In some systems the first set of instructions will load the Ntldr program from the root location on the specified boot drive. This will prompt the StartUp module to set the CPU to protected mode which enables the 32-bit memory access which it then creates the initial Interrupt Descriptor Table, Global Descriptor Table, page tables, and enables paging. This fundamental structure is required for the operating system to function. The StartUp module goes out and begins loading the operating system by launching the operating system loader.
The next step in the process includes the boot.ini. The contents of this file are read to get the information contained in the system volume. This will indicate the location and name of the operating system directory. If you have a dual operating system installed, a boot menu will be presented and the user can select which system to run. After the selection the booting process continues and the CPU is switched to Long mode which will enable the 64-bit addressing.
If you are running Windows the Ntoskrnl.exe and Hardware Abstraction Layer (HAL) are placed into memory. From here the boot-time device drivers get loaded but are not initialized. These are loaded into the HKLM/SYSTEM registry. After the controls are retrieved and the correct file system, such as FAT or NTFS is loaded, the kernel takes over.
The kernel creates the structure for memory and the CPU interrupt gets initialized as does the memory manager. Kernel then looks for system drivers and initializes the devices. Once this step is complete, the Session Manager Subsystem is started. The smss.exe file starts the Autochk routine which initializes and checks each drive. This then creates the environment settings in the registry. Windows then starts from the winlogon.exe files and you're on your way.

Directory Service

The directory service is for use by network administrators. It allows them to set access controls on the domain for each user account. This is an abstraction layer allowing the administrator to customize each users requirements while keeping sensitive information out of reach. this is a service rather than a physical directory on the hard disk drive. The data pertaining to it is stored in files which store information about Preferences, Subscribers, Devices, Content, namespace, and more. The users are granted permission by the administrator for these types of information.
The directory service is a components of the Network Operating System (NOS) and is an information sharing system used for finding, organizing, administering, and managing network information such as user groups, printers, folders, files, and other resources.
Over the years, standards have been developed by the International Telecommunications Union (ITU) and the International Organization for Standardization (ISO) to provide interoperability across several vendor platforms. These are standard systems of organizing objects in logical order which is called the X.500 by ITU and ISO/IEC 9594. These standards apply to mail exchange and looking up names.
Many companies have adopted these protocols and have systems to handle directory services such as Apache which has a service called ApacheDS, and Novell which offers eDirectory. Windows has the Active Directory which is installed on the Windows 2000 and 2003 Server systems.
Identity management programs create another layer of security on objects that can be identified such as devices, applications, countries, or organizations. Each object is identified by certificates encoded within each object, and each certificate contains an issuer and a subject. Without these correct certificates, users within a network our outside the network can be denied access.