Archive for 2012

DNS

DHCP

NAT

Free Apps You Should Try


1.  Google Chrome
A blisteringly fast, lightweight Internet Browser.



2.  7-Zip
Lightweight, fast and opens more file types than you can shake a stick at.  A bit ugly though. More details about 7zip. Split large files for emailing with 7zip. Put split files back together with 7zip.


3.  CCleaner + CCEnhancer
PC slowing down?  Try CCleaner, it cleans your PC of unneeded temporary files and folders, cleans the registry & much more!  Add CCEnhancer to the mix and you’ve got yourself a full system cleaner. More details about CCleaner.



4.  Gyazo
It doesn’t get any faster than this image capturing & sharing tool.  Click, Snip & Share!



5.  Microsoft Security Essentials
In my opinion, the best anti-virus product on the market.  Light, fast, good looking, frequent updates & great detection rates, all make ‘MSE’ a well-rounded product. The complete guide to protecting your Windows XP, Vista, or 7 PC with Microsoft Security Essentials.

Note: This is no longer required in Windows 8; Windows Defender is back in the spotlight and bundled with the OS.



6.  Virtual Clone Drive
Like to keep backups of DVD’s?  DVD drive broken?  Then install Virtual Clone Drive.  It emulates a DVD drive so you can mount files and use them as you would a physical one.



7.  µTorrent
“Speedy, efficient, and free. µTorrent is the world’s most popular BitTorrent client for a reason.”  Enough said.



8.  DropBox
Sync anything across multiple computers.



9.  Team Viewer
Friends and family treat you as a free PC technician?  Me too, use this to help them when you’re not at their desk. How to help your friend with their PC problems using remote access via team viewer.


10.  Rainmeter
Customise your Desktop to your hearts content as the possibilities are endless.  Touted as a system monitor, which frankly undermines its capabilities. See what Stu created using this app.




11. Seven Drive Changer
Made by our very own Windows Forums member Batu.  Changes the icons of the drives in the ‘Computer’ view of Windows Explorer.  A somewhat challenging task if done manually.  A breeze with this.



12.  7CONIFIER
Like customising your Taskbar and Start Menu icons?  With this app changing them all at the same time, and to a custom (or pre-made) theme pack is a cinch.



13.  Keepass
Keep your internet browsing sessions safe by using strong passwords.  Keepass generates mid-bogglingly complicated password in a millisecond and stores them all, so you never have to remember another password again.



14.  Easy BCD
Managing your Boot Manager has never been so easy.



15.  HiddenFiles Toggle
Tires of having to toggle the ‘hidden files and folders’ option in the view tab of the folder options window?  Install this to have a toggle option in your context menu.  Not x64 compatible.





16.  Windows Live Essentials 2011
Email client, blogging client, photo gallery, movie maker & much more.  Looks and functions amazingly and yes, it’s also free.  You don’t seriously think Microsoft would ever charge for the privilege? Do you?



17.  Library Icon Changer
Customise the icons to the Library’s in Windows 7.  A lengthy procedure when done manually.  Easily 7 quickly accomplished with this.
.


18.  Shark 007 Codec Pack.
Got some media files that won’t play on your Windows system?  Install this fantastic comprehensive codec pack.



19. FileZilla
A FTP client that’s fast, light and works great.  Rich made some recommendations recently.  Check them out.



20.  Revo Uninstaller
This is a great program for uninstalling other programs for you system.  Cleans up traces of uninstalled programs better than the built-in installers ever could.  x64 users have to pay. More details about Revo.



21.  Handbrake
HandBrake is an open-source, GPL-licensed, multiplatform, multithreaded video transcoder.  Great for converting those DVD’s. More details about Handbrake.



22.  MediaBrowser
Take your Windows 7 Media Centre experience to another level with Media Browser.  A frequently updated plug-in that makes Media Centre cool.



23.   ImgBurn
They say “ImgBurn is a lightweight CD / DVD / HD DVD / Blu-ray burning application that everyone should have in their toolkit!”   I agree. More details about ImgBurn.



24.  Media Monkey
Sick of Apple and their shoddy iTunes software but have an iPod?  Use Media Monkey to relieve the shackles.  Also great looking and easily manages massive music collections.



25.  Wubi
Ever wanted to install another Operating System or just curious as to what Ubuntu is?  Installing it has never been simpler.  This runs and essentials acts as just another programs in your system.  no dual booting required, just install it, reboot and choose Ubuntu!



Network Address Translation (NAT)

1. What Is NAT?

Network Address Translation daemon, commonly known as natd(8) is a daemon that accepts incoming raw IP packets, changes the source to the local machine and re-injects these packets back into the outgoing IP packet stream. natd(8) does this by changing the source IP address and port such that when data is received back, it is able to determine the original location of the data and forward it back to its original requester.

The most common use of NAT is to perform what is commonly known as Internet Connection Sharing.

Network Address Translation allows a single device, such as a router, to act as an agent between the Internet (or "public network") and a local (or "private") network. This means that only a single, unique IP address is required to represent an entire group of computers.

This allows home users and small businesses to connect their network to the Internet cheaply and efficiently.
The impetus towards increasing use of NAT comes from a number of factors:
  • A world shortage of IP addresses
  • Security needs
  • Ease and flexibility of network administration

2.  Setup


Due to the diminishing IP space in IPv4, and the increased number of users on high-speed consumer lines such as cable or DSL, people are increasingly in need of an Internet Connection Sharing solution. The ability to connect several computers online through one connection and IP address makes natd(8) a reasonable choice.

Most commonly, a user has a machine connected to a cable or DSL line with one IP address and wishes to use this one connected computer to provide Internet access to several more over a LAN.

To do this, the FreeBSD machine on the Internet must act as a gateway. This gateway machine must have two NICs—one for connecting to the Internet router, the other connecting to a LAN. All the machines on the LAN are connected through a hub or switch.

Note: There are many ways to get a LAN connected to the Internet through a FreeBSD gateway. This example will only cover a gateway with at least two NICs.

 

A setup like this is commonly used to share an Internet connection. One of the LAN machines is connected to the Internet. The rest of the machines access the Internet through that “gateway” machine.


IP Address Basics


IP Addresses

In order for systems to locate each other in a distributed environment, nodes are given explicit addresses that uniquely identify the particular network the system is on and uniquely identify the system to that particular network. When these two identifiers are combined, the result is a globally-unique address.
This address, known as “IP address”, as “IP number”, or merely as “IP” is a code made up of numbers separated by three dots that identifies a particular computer on the Internet. These addresses are actually 32-bit binary numbers, consisting of the two subaddresses (identifiers) mentioned above which, respectively, identify the network and the host to the network, with an imaginary boundary separating the two. An IP address is, as such, generally shown as 4 octets of numbers from 0-255 represented in decimal form instead of binary form.
For example, the address 168.212.226.204 represents the 32-bit binary number 10101000.11010100.11100010.11001100.
The binary number is important because that will determine which class of network the IP address belongs to. The Class of the address determines which part belongs to the network address and which part belongs to the node address (see IP address Classes further on).
The location of the boundary between the network and host portions of an IP address is determined through the use of a subnet mask. This is another 32-bit binary number which acts like a filter when it is applied to the 32-bit IP address. By comparing a subnet mask with an IP address, systems can determine which portion of the IP address relates to the network and which portion relates to the host. Anywhere the subnet mask has a bit set to “1”, the underlying bit in the IP address is part of the network address. Anywhere the subnet mask is set to “0”, the related bit in the IP address is part of the host address.
The size of a network is a function of the number of bits used to identify the host portion of the address. If a subnet mask shows that 8 bits are used for the host portion of the address block, a maximum of 256 host addresses are available for that specific network. If a subnet mask shows that 16 bits are used for the host portion of the address block, a maximum of 65,536 possible host addresses are available for use on that network.
An Internet Service Provider (ISP) will generally assign either a static IP address (always the same) or a dynamic address (changes every time one logs on).
ISPs and organizations usually apply to the InterNIC for a range of IP addresses so that all clients have similar addresses.
There are about 4.3 billion IP addresses. The class-based, legacy addressing scheme places heavy restrictions on the distribution of these addresses.
TCP/IP networks are inherently router-based, and it takes much less overhead to keep track of a few networks than millions of them.

IP Classes

Class A addresses always have the first bit of their IP addresses set to “0”. Since Class A networks have an 8-bit network mask, the use of a leading zero leaves only 7 bits for the network portion of the address, allowing for a maximum of 128 possible network numbers, ranging from 0.0.0.0 – 127.0.0.0. Number 127.x.x.x is reserved for loopback, used for internal testing on the local machine.
Class B addresses always have the first bit set to “1” and their second bit set to “0”. Since Class B addresses have a 16-bit network mask, the use of a leading “10” bit-pattern leaves 14 bits for the network portion of the address, allowing for a maximum of 16,384 networks, ranging from 128.0.0.0 – 181.255.0.0.
Class C addresses have their first two bits set to “1” and their third bit set to “0”. Since Class C addresses have a 24-bit network mask, this leaves 21 bits for the network portion of the address, allowing for a maximum of 2,097,152 network addresses, ranging from 192.0.0.0 – 223.255.255.0.
Class D addresses are used for multicasting applications. Class D addresses have their first three bits set to “1” and their fourth bit set to “0”. Class D addresses are 32-bit network addresses, meaning that all the values within the range of 224.0.0.0 – 239.255.255.255 are used to uniquely identify multicast groups. There are no host addresses within the Class D address space, since all the hosts within a group share the group’s IP address for receiver purposes.
Class E addresses are defined as experimental and are reserved for future testing purposes. They have never been documented or utilized in a standard way.
The Paessler network monitoring products PRTG Traffic Grapher and PRTG Network Monitoruse the IP address in order to connect to the respective machines they are intended to monitor / graph.

Theory of Automata

PowerPoint Lectures
Theory of AutoMeata
Course Outline
Lec-0 Automata and Complexity Theory
Lec-1 Mathematical and Preliminaries
Lec-2 Finite Automata
Lec-3, Non Deterministic Automata
Lec-4 ,Single Final State of NFAs
Lec-5 ,Grammars in Automata
Lec-6, Regular Languages Automata
Lec-7 The Pumping Lemma Automata
Lec-8,9 Equivalance and Minimization of Automata
Lec-10 Automata, Context Free Languages
Lec-11 Pushdown Automata PDA's
Lec-12.13 NPDAs Accept Context Free Language
Lec-14 Simplification of Context Free Languages Automata
Lec-15 Positive Properies of Context Free Languages
Lec-16 Automata
Lec-17 Turning Machines
Lec-18 Turning Thesis
Lec-19 Automata
Lec-20 Recursively Enumerable and Recursive Languages
Lec-1
Lec-1
Automata on Guarded Strings and Applications
Finite Automata
ambek Calculus Proofs and Tree Automata

Data Structure Using C++ and Java

PowerPoint Lectures
DATA STRUCTURE USING C++
Lec-1 Introduction
Lec-2-3-Time-Complexity
Lec-4 Abstract Data Type
Lec-5 Arrays ADT
Lec-6 List ADT and Linked Lists
Lec-7 Stacks
Lec-8 Queues
Lec-9 Trees
Lec-10 Trees-BST
lec-12 Trees-BST
Lec-13 AVL Trees
Lec-14 AVL Trees Implementation
Lec-16 Tries Data Structure
Lec-17 Sets
Lec-18-amp-19-amp-20-amp-21-Hasing
Lec-22-B-Trees
Lec-23-B-Trees
Lec-24-Recursion
Lec-25-Recursion
Lec-26 and-27-HeapSort
Lec-28 Trees Operations
Lec-30-Heap-Sort
Lec-31 and 32-Graph
Lec-34 Graphs Searching
Lec-35 Minimum Spanning Tree
Lec-36 Shortest Path Algorithms
Lec 37 All-Pairs Shortest Path Problem
Lec-38-Topological Sort
Lec-39-Internal Sorting Techniques
Lec-40-Sorting Techniques II









DATA STRUCTURE C++ Source Code
AVL Tree Implementation







Software Engineering 1


PowerPoint Lectures
Software Engineering 1
Lec-1 Introduction
Lecture 2
Lecture 3
CMMI
Lecture 4
Lecture 5
Lec-5-Software Project Managment
Project Management
Software Cost Estimation
Team Organization
Software Cost and Effort Estimation
Analysis Modeling
Software Testing Strategies
Software Testing Techniques


Lectures content:

  1. Overview and motivations
    • Real-world examples
    • Software process overview
    • Project management overview
  2. Requirements analysis
    • Requirements elicitation
    • Formal specification overview
  3. Software design
    • Software architectures
    • Function-oriented design
    • Object-oriented design
  4. Software development processes
    • Rapid software development
    • Reuse
    • Component-based software engineering
    • Critical systems development
    • Software evolution
  5. Verification and Validation
    • Static verification
    • Testing
  6. Project management
    • Cost estimation
    • Configuration management

Lectures

Lecture 11/09/2006Introduction to Software Engineering (Ch. 1) (752 Kb)
Lecture 21/11/2006The Big Picture (Ch. 2 & 3) (591.5 Kb)
Lecture 31/18/2006Software Process Models (Ch. 4) (1.654 Mb)
Lecture 41/23/2006Project Management (Ch. 5) (907.5 Kb)
Lecture 51/25/2006Software Requirements (Ch. 6) (1.939 Mb)
Lecture 61/30/2006Requirements Engineering Process (Ch. 7) (1.168 Mb)
Lecture 72/08/2006System Models (Ch. 8) (2.188 Mb)
Lecture 82/15-20/2006Formal Specification (Ch. 10) (1.461 Mb)
Lecture 92/20-22/2006Architecture Design (Ch. 11) (3.421 Mb)
Lecture 102/27/2006Function-oriented Design (601.5 Kb) From 5th Edition, Chapter 15 (download here)
Lecture 113/01/2006Introduction to Usability (162 Kb)
Lecture 123/08/2006Object-Oriented Design (Ch. 14) (2.021 Mb)
Lecture 1303/27-29/2006, 4/03/2006Verification & Validation (Ch. 22&23) (2.301 Mb)
Lecture 144/10/2006Cost Estimation (Ch. 26) (583 Kb)
Lecture 15A4/12/2006Software Evolution (Ch. 21) (982 Kb)
Lecture 15B4/12/2006Configuration Management (Ch. 29) (479.5 Kb)
Lecture 16A4/17/2006Critical Systems Specification (Ch. 9) (1.129 Mb)
Lecture 16B4/17/2006Critical Systems Development (Ch. 20) (184 Kb)
Lecture 17A4/19/2006Critical Systems Validation (Ch. 24) (1.136 Mb)
Lecture 17B4/19/2006Rapid Application Development (Ch. 17) (2.67 Mb)
Lecture 184/24/2006Software Reuse (Ch. 18 & 19) (2.383 Mb)


Ian Sommerville Lectures
.
Download zip of all presentations (PPT). This file is about 20 MBytes.
Download zip of all presentations (PDF). This file is about 25 MBytes. Sorry, no dark text on light background available in PDF.
Chap. 1 (PPT) (PDF)Chap. 2 (PPT) (PDF)Chap. 3 (PPT) (PDF)Chap. 4 (PPT) (PDF)Chap. 5 (PPT) (PDF)
Chap. 6 (PPT) (PDF)Chap. 7 (PPT) (PDF)Chap. 8 (PPT) (PDF)Chap. 9 (PPT) (PDF)Chap. 10 (PPT) (PDF)
Chap. 11 (PPT) (PDF)Chap. 12 (PPT) (PDF)Chap. 13 (PPT) (PDF)Chap. 14 (PPT) (PDF)Chap. 15 (PPT) (PDF)
Chap. 16 (PPT) (PDF)Chap. 17 (PPT) (PDF)Chap. 18 (PPT) (PDF)Chap. 19 (PPT) (PDF)Chap. 20 (PPT) (PDF)
Chap. 21 (PPT) (PDF)Chap. 22 (PPT) (PDF)Chap. 23 (PPT) (PDF)Chap. 24 (PPT) (PDF)Chap. 25 (PPT) (PDF)
Chap. 26 (PPT) (PDF)Chap. 27 (PPT) (PDF)Chap. 28 (PPT) (PDF)Chap. 29 (PPT) (PDF)

















Operating System


PowerPoint Lectures
Operating System
Chap-1 Introduction
Chap-2 Operating-System Structures
Chapter 3: Processes
Chapter 4: Threads
Chapter 5: CPU Scheduling
Chapter 6: Process Synchronization
Chapter 7: Deadlocks
Chapter 8: Memory Management
Chapter 9: Virtual Memory
Chapter 10: File-System Interface
Chapter 11: File System Implementation
Chapter 12: Mass-Storage Systems
Chapter 13: I/O Systems
Chapter 14: Protection
Chapter 15: Security
Module 16: Distributed System Structures
Chapter 17: Distributed-File Systems
Chapter 18: Distributed Coordination
Chapter 19: Real-Time Systems
Chapter 20: Multimedia Systems
Chapter 21: The Linux System
Chapter 22: Windows XP
Module A: FreeBSD System
Module C: Windows 2000
Practical Examples


- Copyright © 2013 Taqi Shah Blogspot -Metrominimalist- Powered by Blogger - Designed by Johanes Djogan -