640 likes | 739 Views
Agenda. Administrative Issues Link of the Week This Week’s Expected Outcomes Review for midterm exam Moving around in UNIX Break-Out Problems Upcoming Deadlines Hands-on Information Lab Assistance, Questions, and Answers. Announcements
E N D
Agenda Administrative Issues Link of the Week This Week’s Expected Outcomes Review for midterm exam Moving around in UNIX Break-Out Problems Upcoming Deadlines Hands-on Information Lab Assistance, Questions, and Answers
Announcements Sign up for your open source topic if you have not done so yet. Final exam August 4 through 19. Announcements
http://en.wikipedia.org/wiki/Firmware This Web site contains information on: - Evolved firmware uses - Firmware and device drivers - Firmware support challenges in PCs - Firmware hacking http://www.driver-fix.com/driverdetective.php?t=Firmware DiverDetective Download driver updates automatically and safely. This software utility will keep your system up-to-date by automatically retrieving the latest drivers from your hardware’s manufacturer. Link of the week
Firmware is a computer program that is embedded in the hardware device. Firmware can be stored in flash memory or as a binary image file that can be uploaded onto existing hardware by a user. In summary, firmware is a combination of hardware and software. Firmware applications include the following: - BIOS found in IBM-compatible PCs. - Open Firmware, used in computers marketed by Sun Microsystems and Apple Computers. - Computer peripherals - The iPod’s control menus. - Automobiles with on-board computers/sensors - Cisco IOS Link of the week
Upon successful completion of this module, the student will be able to: /etc/fstab file fsckutility /proc directories ASCII and EBCDIC Character set CMOS BIOS Linux boot-up procedure (System 5) Red Hat Enterprise Release 6.0 boot-up procedure (Upstart) This Week’s Expected Outcomes
Field description of /etc/fstab 1st field describes the block special device or remote file system or device name to be mounted. 2nd field describes the mount point for the file system. 3rd field describes the type of file system. 4th field describes the mount optionsassociated with the file system. 5th field describes which file systems will need to be dumped by the dump() command. 6thfield is used by fsck to determine the order in which the file systems are checked at boot time. UNIX Operating System
File System Integrity Checks File systems are usually mounted read-only. This makes it possible to check the file system while it is mounted; it is not a good idea to check a file system that is mounted read-write. UNIX Operating System
Fsck Command The fsckutility checks the file system’s consistency, reports any problems it finds, and optionally repairs them. On many legacy systems such as BSD style systems, the fsck command is invoked automatically on boots and reboots. Format: fsck [options] device UNIX Operating System
Fsck Phases Fsckchecks the file system in a series of 5 pages and checks a specific functionality of file system in each phase. Phase 1 – Check Blocks and Sizes Phase 2 – Check Pathnames Phase 3 – Check Connectivity Phase 4 – Check Reference Counts Phase 5 – Check Cylinder Groups UNIX Operating System
Fsck Phases If the superblock is corrupted the file system still can be repaired using alternate superblocks created while making a new file system. The first alternate superblock number is 32 and other superblock numbers can be found using the following command: newfs -N /dev/rdsk/c0t0d0s6 UNIX Operating System
/proc/filesystems The /proc/filesystemsis the file used to detect filesystems supported by running kernel. If a filesystem is listed, you will be able to mount it based file systems. This text listing of the filesystem is compiled into the kernel. The “nodev” string in the first column means that filesystem does not require a block device to be mounted, it’s called a virtual filesystem. UNIX Operating System
/proc/filesystems It is a special file system in UNIX-like systems that presents information about processes and other system information in a hierarchical file like structure, providing a more convenient and standardized method for dynamically accessing process data held in the kernel than traditional tracing methods or direct access to kernel memory. Typically, it is mapped to a mount point named /proc at boot time. UNIX Operating System
/proc/filesystems The /proc/filesystems file provides a method of communication between kernel space and user space. UNIX Operating System
/proc/filesystems Is a file used to detect filesystems supported by running kernel. You can quickly run grep or cat command to display the list of all supported file system. nodev indicates that the file system is not associated with a physical device such as /dev/sdb1. If you see ext3 or vfat, it means you will be able to mount ext3 and vfat based file systems. UNIX Operating System
/proc/filesystems The Linux implementation of /proc also clones that of Plan 9. Under Linux, /proc includes a directory for each running process (including kernel processes) at /proc/PID, containing information about that process. Plan 9 is an enhancement of the V8 Plan. Rather than have just one file containing all the information about a process, Plan 9 created a hierarchy of separate files to provide those functions, and made /proc a real part of the file system UNIX Operating System
/proc/filesystems /proc/PID/cmdline, which contains the command that originally started the process. /proc/PID/cwd, a symlink to the current working directory of the process. /proc/PID/environ, a file containing the names and contents of the environment variables that affect the process. /proc/PID/exe, a symlink to the original executable file, if it still exists (a process may continue running after its original executable has been deleted or replaced). UNIX Operating System
/proc/filesystems /proc/PID/fd, a directory containing a symbolic link for each open file descriptor /proc/PID/fdinfo, a directory containing files which describe the position and flags for each open file descriptor. /proc/PID/maps, a text file containing information about mapped files and blocks (like heap and stack). UNIX Operating System
/proc/filesystems /proc/PID/mem, a binary file representing the process's virtual memory, can only be accessed by a ptrace'ing process. /proc/PID/root, a symlink to the root path as seen by the process. For most processes this will be a link to / unless the process is running in a chroot jail. /proc/PID/status, a file containing basic information about a process including its run state and memory usage. UNIX Operating System
/proc/filesystems /proc/PID/task, is a directory containing hard links to many tasks that have been started by this (i.e.: the parent) process. UNIX Operating System
File Representation A file format is a particular way to encodeinformation for storage in a computer file. Disk drives or computer storage are represented in bits. A computer must convert information to 0s and 1s and vice-versa. A computer file format can be represented as either a binary image or ASCII file. ASCII is used on most PCs and Macintoshes. EBCDIC (Extended Binary-Coded Decimal Interchange Code is an IBM code for representing characters as numbers. IBM uses EBCDIC widely on their large computers. UNIX Operating System
EBCDIC character set EBCDIC is an 8 bit character encoding used on IBM mainframes and AS/400s. Single byte EBCDIC takes up eight bits, which are divided in two pieces. The first four bits are called the zone and represent the category of the character, whereas the last four bits are called the digit and identify the specific character. UNIX Operating System
File Representation Binary image files represent 256 different binary codes. UNIX Operating System
In the past, binary image files use to be able to represent more character codes than ASCII because eight bit bytes were used, whereas ASCII files used seven bits. Now Extended ASCII uses eight bit bytes and can represent 256 character Executable software, mostly word processing files and databases, spread sheets and multimedia files are binary. However, text and source program files as well as HTML and XML files are ASCII. UNIX Operating System
What does the CMOS do? The CMOS memory stores information your computer needs when it boots up, such as, disk drive, keyboard type, configuration details of the PCI Bus slots, and Video Interface information. If the power to the CMOS memory is lost, your computer will boot with the CMOS defaults. In most cases, this will prevent use of your disk drives until this information is supplied. UNIX Operating System
CMOS specifications The information stored in the CMS memory is battery backed up. The CMOS memory is a 64 or 128 byte memory that is part of the system clock chipset chips. The CMOS memory is made from Complementary Metal Oxide Semiconductor (CMOS). This material can be backed up by battery, which requires a very low current to keep the data in the memory with the power turned off. UNIX Operating System
How is the CMOS information used? The CMOS information is required by your computers Basis Input/Output System (BIOS). The system BIOS is a 64K by 8 bit wide ROM mounted on the motherboard. If the BIOS ROM were accessed during normal operation the computer would be greatly reduced. Instead, the information is copied to some RAM where it can be accessed 32 or 64 bits at a time, thus increasing the system performance. The differences in access speed between RAM device and ROM’s is approximately 3 times faster. UNIX Operating System
Role of system BIOS It is to test the system, initialize some I/O devices, recognize the hardware devices (basic power test), and load the operating system. Once, the operating system is loaded, the BIOS works with the operating system to enable access to the hardware devices. At this point, the BIOS provide basic input/output services to the operating system and applications. UNIX Operating System
What is Unified Extensible Firmware Interface (UEFI)? UEFI is a specification defined between the operating system and the platform firmware. UEFI was developed to replace the Basic I/O System firmware interface system. The UEFI can support remote diagnostics and repair of computers, even without another operating system. UNIX Operating System
UEFI UNIX Operating System
UEFI UNIX Operating System
Initializing or Booting a System • CPU is pre-set to RESET mode • CPU pre-programmed to seek 0xfffffff0 address location • BIOS reads MBR (Track 0, Sector 1) • First part of MBR contains the boot partition table and executable code • Second part of the MBR is used to locate the boot loader. It resides on the “active” partition known as the Boot Sector. • Device drivers are loaded (initrd-2.4.20-8.img) • Kernel is invoked • Init process invoked UNIX Operating System
Linux Boot Procedure 1. The system startup stage depends on the hardware device that Linux is being booted on. Floppy disk, CD-ROM, a partition on a hard disk, a device on the network, or a USB flash memory stick. Linux is usually booted from a hard disk. 2. After the system locates the boot device, the first part of the boot loader is loaded into RAM and executed. Normally, the first part of the boot loader is less than 512 bytes and is responsible for loading the second part of the boot loader. UNIX Operating System
Linux Boot Procedure 3. The first 446 bytes are considered the primary boot loader, which contains both executable code and error message text. 4. The second sixty four bytes are the partition tables, which contains a record for each of the four partitions. 5. The last two bytes are the magic number which serves as a validation check of the Master Boot Record (MBR). UNIX Operating System
Linux Boot Procedure 6. When the second part of the boot loader is loaded into RAM and executed, a pop up screen displays Linux and the optional initial RAM being loaded into memory. 7. The second part of the boot loader is called the kernel loader. After the boot images are loaded, the second part of the boot loader passes control to the kernel image. At this point, the kernel is decompressed and initialized UNIX Operating System
Linux Boot Procedure 8. The second part of the boot loader checks the system hardware, lists attached hardware devices, mounts the root device, and loads the kernel modules. UNIX Operating System
What is the Master Boot Record (MBR) It is a small program that is a special type of boot sector that manages the boot process. The MBR is not located in a partition, but located at the beginning of partitioned computer mass storage devices, such as, fixed disks or removable devices. The organization of the partition table in the Master Boot Record sets the boundaries for the maximum addressable storage space of a disk to 2 TB (2exp32 x 512 bytes) UNIX Operating System
Master Boot Record (MBR) When a data storage device has been partitioned with the MBR Partition Table scheme the master boot record contains the primary partition entries in its partition table. By convention, there are exactly four primary partition table entries in the MBR Partition Table scheme. UNIX Operating System
Boot Loaders The following /boot directory contains all the important files which are required for successful booting process: Demonstrate: /boot Red Hat Linux kernels Kernel configuration files for Red Hat Linux Demonstrate: /boot/grub The Linux Loader (LILO) is the combination of parts one and two boot loaders. Because of some disadvantages in the LILO loader, the GRand Unified Bootloader (GRUB) has become more widely used. UNIX Operating System
Boot loader The role of the boot loader is to place the operating system of the system in memory. In Linux, the most commonly used boot-loading tool is LILO, the Linux Loader. During the installation process, Linux will generate LILO values and ask you to verify them. At that point, you are given the opportunity to insert additional LILO options. Such options might be to include more partitions, and identify the operating system to be installed. UNIX Operating System
Boot loader First, what exactly is GRUB? GRUB is a boot loader, which means it passes control of the boot process from the Power-On Self Test (POST) to the kernel of your GNU/Linux distribution. GRUB works in a modular, layered fashion so that any unneeded modules are not loaded. Not only does this reduce execution time, but it saves valuable resources when running from removable media. UNIX Operating System
Boot loader GRUB optionally loads its configuration file at run/boot time, so you don’t have to type in commands manually each time. However, the command-line option is still available in case there is an error in your configuration file. UNIX Operating System
When a computer with Red Hat Enterprise Linux is turned on, the operating system is loaded into memory by a special program called a boot loader. A boot loader usually exists on the system's primary hard drive (or other media device) and has the sole responsibility of loading the Linux kernel with its required files or (in some cases) other operating systems into memory. UNIX Operating System
So why use GRUB when there are other options out there? The beauty of free software is that you have choices. Alternatives to GRUB include LILO, syslinux and isolinux. The benefit of GRUB is that it will work with many different types of boot devices, but you only need to learn one set of menu commands. In addition, GRUB can work on other forms of bootable storage, such as CD-R/W, UNIX Operating System
With the release of Red Hat Enterprise Linux (RHEL) 6, Red Hat will utilize the new Upstart boot service. This service will replace the System V init boot procedure that is based on run levels directories that contained scripts that all had to be started. Upstart is event driven, so it contains scripts that are activated on demand, which makes the boot process a lot faster. UNIX Operating System
In an attempt to simplify the new concept, Upstart still utilizes the services from the init process. The /sbin/init, which is the mother of all user services UNIX Operating System
Init Process Location: /sbin/init First process to execute in user space Executes: background Process ID: 1 (one) Parent Process ID: 0 (zero) Owner: root Highlight the relationship of the init process to all other executing processes. UNIX Operating System
Red Hat Enterprize Release 6.0 (Upstart) Handles initialization by starting the most fundamental services. /etc/init/rcS.conf Handles starting the individual runlevels /etc/init/rc.conf The following two areas specify how terminals are to be handled. /etc/init/tty.conf and /etc/init/serial.conf There were some additional configuration files included to the /etc/sysconfig/init file. UNIX Operating System
The /etc/inittab file is referenced only for determining the default run level of the system. All other previous tasks are handled by the new Upstart procedure. id:3:initdefault UNIX Operating System