Saturday, 19 December 2015

The future is coming faster....here's why...????

Moore’s Law / Quantum Computing
Currently, the growth in the rate of our technological advance is spearheaded by advances in computer chip technology. Through the tracking of this growth, it has been pronounced ‘Moore’s Law’. At some point in the next decade, the computer chip will reach the maximum level it can advance. But that does not mean that the exponential growth of technological advances will end. Another technology will simply take over the role of spearheading the growth. At around the year 2020, Quantum Computing will take over from the computer chip, and will be far far more advanced. Quantum Computing could even rise the rate of growth higher than the exponential rate.
We will show you what is possible

I would much prefer to have my smartphone, rather than a hover board; a smartphone of which was not even predicted in the Back to the Future Movie. The point is, the latest generation of futurists, should not be prejudged by what previous generations failed to predict. The predictions of the future that are being made now, are far more educated, and based on evidence based trends.
With the understanding of exponential growth, people tend to look at future possibilities with much more of an open mind. Predictions of the future that were made in the 20th century, were largely made without consideration of trends and what society will want and need as their priority. Flying cars are not needed, and will not be needed for a very long time, if ever. It is not a priority to build them. When people were predicting flying cars, they didn’t even know what would make them fly, or what would even power them.
This website displays what is possible, and what dates in the future those possibilities will most likely become reality. Nothing is certain. But if exponential growth continues, everything will be possible.

Tuesday, 15 December 2015

How memory works?

  • The Central Processing Unit:
    • (CPU),
    • Buses,
    • Ports and controllers,
    • ROM;
  • Main Memory (RAM);
  • Input Devices;
  • Output Devices;
  • Secondary Storage;
    • floppy disks,
    • hard disk,
    • CD-ROM
Figure 0: Inside The Computer

This part of the reading will examine the CPU, Buses, Controllers, and Main Memory. Other sections will examine input devices, output devices, and secondary memory.

The Central Processing Unit (CPU)

Figure 1: The Central Processing Unit
The computer does its primary work in a part of the machine we cannot see, a control center that converts data input to information output. This control center, called the central processing unit (CPU), is a highly complex, extensive set of electronic circuitry that executes stored program instructions. All computers, large and small, must have a central processing unit. As Figure 1 shows, the central processing unit consists of two parts: The control unit and the arithmetic/logic unit. Each part has a specific function.

Before we discuss the control unit and the arithmetic/logic unit in detail, we need to consider data storage and its relationship to the central processing unit. Computers use two types of storage: Primary storage and secondary storage. The CPU interacts closely with primary storage, or main memory, referring to it for both instructions and data. For this reason this part of the reading will discuss memory in the context of the central processing unit. Technically, however, memory is not part of the CPU.

Recall that a computer's memory holds data only temporarily, at the time the computer is executing a program. Secondary storage holds permanent or semi-permanent data on some external magnetic or optical medium. The diskettes and CD-ROM disks that you have seen with personal computers are secondary storage devices, as are hard disks. Since the physical attributes of secondary storage devices determine the way data is organized on them, we will discuss secondary storage and data organization together in another part of our on-line readings.

Now let us consider the components of the central processing unit.


  • The Control Unit
    The control unit of the CPU contains circuitry that uses electrical signals to direct the entire computer system to carry out, or execute, stored program instructions. Like an orchestra leader, the control unit does not execute program instructions; rather, it directs other parts of the system to do so. The control unit must communicate with both the arithmetic/logic unit and memory.

  • The Arithmetic/Logic Unit
    The arithmetic/logic unit (ALU) contains the electronic circuitry that executes all arithmetic and logical operations.

    The arithmetic/logic unit can perform four kinds of arithmetic operations, or mathematical calculations: addition, subtraction, multiplication, and division. As its name implies, the arithmetic/logic unit also performs logical operations. A logical operation is usually a comparison. The unit can compare numbers, letters, or special characters. The computer can then take action based on the result of the comparison. This is a very important capability. It is by comparing that a computer is able to tell, for instance, whether there are unfilled seats on airplanes, whether charge- card customers have exceeded their credit limits, and whether one candidate for Congress has more votes than another.

    Logical operations can test for three conditions:
    • Equal-to condition. In a test for this condition, the arithmetic/logic unit compares two values to determine if they are equal. For example: If the number of tickets sold equals the number of seats in the auditorium, then the concert is declared sold out. 
    • Less-than condition. To test for this condition, the computer compares values to determine if one is less than another. For example: If the number of speeding tickets on a driver's record is less than three, then insurance rates are $425; otherwise, the rates are $500. 
    • Greater-than condition. In this type of comparison, the computer determines if one value is greater than another. For example: If the hours a person worked this week are greater than 40, then multiply every extra hour by 1.5 times the usual hourly wage to compute overtime pay.

    A computer can simultaneously test for more than one condition. In fact, a logic unit can usually discern six logical relationships: equal to, less than, greater than, less than or equal to, greater than or equal to, and not equal.

    The symbols that let you define the type of comparison you want the computer to perform are called relational operators. The most common relational operators are the equal sign(=), the less-than symbol(<), and the greater-than symbol(>).

    • Registers: Temporary Storage Areas
      Registers are temporary storage areas for instructions or data. They are not a part of memory; rather they are special additional storage locations that offer the advantage of speed. Registers work under the direction of the control unit to accept, hold, and transfer instructions or data and perform arithmetic or logical comparisons at high speed. The control unit uses a data storage register the way a store owner uses a cash register-as a temporary, convenient place to store what is used in transactions.

      Computers usually assign special roles to certain registers, including these registers:
      • An accumulator, which collects the result of computations.
      • An address register, which keeps track of where a given instruction or piece of data is stored in memory. Each storage location in memory is identified by an address, just as each house on a street has an address.
      • A storage register, which temporarily holds data taken from or about to be sent to memory.
      • A general-purpose register, which is used for several functions.
    • Memory and Storage 
      Memory is also known as primary storage, primary memory, main storage, internal storage, main memory, and RAM (Random Access Memory); all these terms are used interchangeably by people in computer circles. Memory is the part of the computer that holds data and instructions for processing. Although closely associated with the central processing unit, memory is separate from it. Memory stores program instructions or data for only as long as the program they pertain to is in operation. Keeping these items in memory when the program is not running is not feasible for three reasons:
      • Most types of memory only store items while the computer is turned on; data is destroyed when the machine is turned off.
      • If more than one program is running at once (often the case on large computers and sometimes on small computers), a single program can not lay exclusive claim to memory.
      • There may not be room in memory to hold the processed data.

      How do data and instructions get from an input device into memory? The control unit sends them. Likewise, when the time is right, the control unit sends these items from memory to the arithmetic/logic unit, where an arithmetic operation or logical operation is performed. After being processed, the information is sent to memory, where it is hold until it is ready to he released to an output unit.

      The chief characteristic of memory is that it allows very fast access to instructions and data, no matter where the items are within it. We will discuss the physical components of memory-memory chips-later in this chapter.
      To see how registers, memory, and second storage all work together, let us use the analogy of making a salad. In our kitchen we have:
      • a refrigerator where we store our vegetables for the salad;
      • a counter where we place all of our veggies before putting them on the cutting board for chopping;
      • a cutting board on the counter where we chop the vegetables;
      • a recipe that details what veggies to chop;
      • the corners of the cutting board are kept free for partially chopped piles of veggies that we intend to chop more or to mix with other partially chopped veggies.
      • a bowl on the counter where we mix and store the salad;
      • space in the refrigerator to put the mixed salad after it is made.
      The process of making the salad is then: bring the veggies from the fridge to the counter top; place some veggies on the chopping board according to the recipe; chop the veggies, possibly storing some partially chopped veggies temporarily on the corners of the cutting board; place all the veggies in the bowl to either put back in the fridge or put directly on the dinner table.The refrigerator is the equivalent of secondary (disk) storage. It can store high volumes of veggies for long periods of time. The counter top is the equivalent of the computer's motherboard - everything is done on the counter (inside the computer). The cutting board is the ALU - the work gets done there. The recipe is the control unit - it tells you what to do on the cutting board (ALU). Space on the counter top is the equivalent of RAM memory - all veggies must be brought from the fridge and placed on the counter top for fast access. Note that the counter top (RAM) is faster to access than the fridge (disk), but can not hold as much, and can not hold it for long periods of time. The corners of the cutting board where we temporarily store partially chopped veggies are equivalent to the registers. The corners of the cutting board are very fast to access for chopping, but can not hold much. The salad bowl is like a temporary register, it is for storing the salad waiting to take back to the fridge (putting data back on a disk) or for taking to the dinner table (outputting the data to an output device).

      Now for a more technical example. let us look at how a payroll program uses all three types of storage. Suppose the program calculates the salary of an employee. The data representing the hours worked and the data for the rate of pay are ready in their respective registers. Other data related to the salary calculation-overtime hours, bonuses, deductions, and so forth-is waiting nearby in memory. The data for other employees is available in secondary storage. As the CPU finishes calculations about one employee, the data about the next employee is brought from secondary storage into memory and eventually into the registers.
      The following table summarizes the characteristics of the various kinds of data storage in the storage hierarchy.
      StorageSpeedCapacityRelative Cost ($)Permanent?
      RegistersFastestLowestHighestNo
      RAMVery FastLow/ModerateHighNo
      Floppy DiskVery SlowLowLowYes
      Hard DiskModerateVery HighVery LowYes
      Modern computers are designed with this hierarchy due to the characteristics listed in the table. It has been the cheapest way to get the functionality. However, as RAM becomes cheaper, faster, and even permanent, we may see disks disappear as an internal storage device. Removable disks, like Zip disks or CDs (we describe these in detail in the online reading on storage devices) will probably remain in use longer as a means to physically transfer large volumes of data into the computer. However, even this use of disks will probably be supplanted by the Internet as the major (and eventually only) way of transferring data. Floppy disks drives are already disappearing: the new IMac Macintosh from Apple does not come with one. Within the next five years most new computer designs will only include floppy drives as an extra for people with old floppy disks that they must use.For more detail on the computer's memory hierarchy, see the How Stuff Works pages on computer memory.This is optional reading.
    • How the CPU Executes Program Instructions
      Let us examine the way the central processing unit, in association with memory, executes a computer program. We will be looking at how just one instruction in the program is executed. In fact, most computers today can execute only one instruction at a time, though they execute it very quickly. Many personal computers can execute instructions in less than one-millionth of a second, whereas those speed demons known as supercomputers can execute instructions in less than one-billionth of a second.

      Figure 2: The Machine Cycle
      Before an instruction can be executed, program instructions and data must be placed into memory from an input device or a secondary storage device (the process is further complicated by the fact that, as we noted earlier, the data will probably make a temporary stop in a register). As Figure 2 shows, once the necessary data and instruction are in memory, the central processing unit performs the following four steps for each instruction:
      1. The control unit fetches (gets) the instruction from memory.
      2. The control unit decodes the instruction (decides what it means) and directs that the necessary data be moved from memory to the arithmetic/logic unit. These first two steps together are called instruction time, or I-time.
      3. The arithmetic/logic unit executes the arithmetic or logical instruction. That is, the ALU is given control and performs the actual operation on the data.
      4. Thc arithmetic/logic unit stores the result of this operation in memory or in a register. Steps 3 and 4 together are called execution time, or E-time.

      The control unit eventually directs memory to release the result to an output device or a secondary storage device. The combination of I-time and E-time is called the machine cycle. Figure 3 shows an instruction going through the machine cycle.

      Each central processing unit has an internal clock that produces pulses at a fixed rate to synchronize all computer operations. A single machine-cycle instruction may be made up of a substantial number of sub-instructions, each of which must take at least one clock cycle. Each type of central processing unit is designed to understand a specific group of instructions called the instruction set. Just as there are many different languages that people understand, so each different type of CPU has an instruction set it understands. Therefore, one CPU-such as the one for a Compaq personal computer-cannot understand the instruction set from another CPU-say, for a Macintosh.
      Figure 3: The Machine Cycle in Action
      It is one thing to have instructions and data somewhere in memory and quite another for the control unit to be able to find them. How does it do this?

      Figure 4: Memory Addresses Like Mailboxes
      The location in memory for each instruction and each piece of data is identified by an address. That is, each location has an address number, like the mailboxes in front of an apartment house. And, like the mailboxes, the address numbers of the locations remain the same, but the contents (instructions and data) of the locations may change. That is, new instructions or new data may be placed in the locations when the old contents no longer need to be stored in memory. Unlike a mailbox, however, a memory location can hold only a fixed amount of data; an address can hold only a fixed number of bytes - often two bytes in a modern computer.

      Figure 4 shows how a program manipulates data in memory. A payroll program, for example, may give instructions to put the rate of pay in location 3 and the number of hours worked in location 6. To compute the employee's salary, then, instructions tell the computer to multiply the data in location 3 by the data in location 6 and move the result to location 8. The choice of locations is arbitrary - any locations that are not already spoken for can be used. Programmers using programming languages, however, do not have to worry about the actual address numbers, because each data address is referred to by a name. The name is called a symbolic address. In this example, the symbolic address names are Rate, Hours, and Salary.
  • 6 worst health problems common with computer use

    1. Musculoskeletal problems:
    Muscle soreness and muscle fatigue are the most common complaints of regular computer users. Back pain, chest pain, pain or numbness in arms, shoulder and feet top the list. These types of problems mainly occur because your posture while using the computer is not correct. Either you are sitting on an uncomfortable chair or your workstation is not supportive of correct posture. Read more about causes of muscle pain.
    Practical tips
    • Adjust your chair and desk such that your screen is either at your eye level or lower. Sit with your back straight and legs perpendicular to the floor with feet resting flat on the floor. Your elbows should rest at the sides.
    • Take mini breaks from work and stretch a bit or go for a short walk. Here are a few more tips for correcting ergonomics at work.
    2. Repetitive stress injury
    Pain in the neck, shoulder, or anywhere from the shoulder to fingers may indicate repetitive stress injury. When you use your muscles in an awkward position, you may experience stiffness, pain or swelling in that area. For example, twisting the wrist to use the mouse or specific typing technique that causes stretching of fingers or pressure on the wrist can turn really painful. One of the disorders that affect the fingers and wrist is carpal tunnel syndrome.  
    Practical Tips:
    • Adjust the mouse besides the keyboard. Move your entire arm, while moving the mouse. Don’t just move your wrist by fixing it at one position. Typing should be gentle. Do not fix your wrists in a certain position while typing.
    • Relax your arms or stretch when you are not typing or using the mouse.
    3. Vision problems
    Bright light and bad glare or flickering image can strain your eyes. Constantly focusing on the screen without blinking can cause dry eyesComputer vision syndrome is another problem that you may suffer from. Here are some natural remedies for improving eye sight.
    Practical tips
    • Adjust the contrast and brightness such that your eyes are not strained. You can tilt your screen to avoid glare.
    • Maintain a proper distance from the screen. Look away from the screen intermittently. Don’t forget to blink.
    4. Headache
    Because of increased muscle tension or pain in the neck at the base of the skull, headache is common problem with computer use. Many a times, prolonged use can affect eye power which needs vision correction. This can also result in headache. Here are more reasonswhy you should take your headache seriously.
    Practical tips
    5. Obesity
    Studies have shown that prolonged use of computers, especially in children, is the major contributing factor of sedentary lifestyle and childhood obesity. Read more about the reason why childhood obesity is on the rise.
    Practical tips:
    • Set limits for your children if they insist to playing computer games non-stop.
    • Encourage your children to play outdoor games or to take up a hobby. Involve them in extra-curricular activities
    • Adults who work for 7-8 hours should avoid spending time on computer after reaching home. Your body and mind both need to relax. Join a gym or go for evening jog and stay physically active.
    6. Stress disorders
    Technology has a huge impact on our behaviour and emotions. Prolonged computer use along with other factors like poor health, work pressure and job environment can make you susceptible to stress. Moreover, the longer you uphold the stress, the more susceptible you become to other health issues mentioned above. It can also lead to loss of concentration, dizziness and weariness.
    Practical tips:

    The computer virus that blackmail you

    t's a malicious virus that locks the user out of their computer and demands a fee to return their files.
    A report published by the Australian government claims 72% of businesses surveyed experienced ransomware incidents in 2015.
    The figure was just 17% in 2013 .
    It's also a growing threat for mobile devices as it can be hidden in an app, says Gert-Jan Schenk, vice-president at internet security company Lookout.
    "For the most part, we've seen ransomware delivered through drive-by downloads - it pretends to be a popular app, increasing the chances that you'll click on it," he explains.
    "To avoid these threats, users should be very careful about what apps they install, and where they come from - read the reviews on Google Play, and avoid side-loading from untrusted sources."

    How does it work?

    Image copyrightThinkstock
    Image caption
    Like most computer viruses, ransomware often arrives in the form of a phishing email, or spam, or a fake software update - and the recipient clicks a link or opens an attachment.
    The virus then sets to work encrypting the user's files.
    Once the computer is effectively locked down, it demands a fee - often in bitcoins because it is less easy to trace - for the return of the files.
    The fee is generally one or two bitcoins - the equivalent of about $500 (£330).
    It is less common now, but in the earlier days of the malware - about five years ago - the ransom note could take the form of a law enforcement notice.
    The user was directed to a web page that appeared to be from, for example, the FBI, falsely claiming illegal images of children had been been found on the machine and a fine was payable.
    There is generally a time limit to comply, after which the ransom increases.The

    Is there any way to get round it?

    shocked woman at computerImage copyrightThinkstock
    Image captionBack up, back up, back up...
    Sometimes it is just a threat, but mostly the virus really does encrypt files.
    The only way to retrieve your files without paying the ransom is to go to a backed-up version.
    Neil Douglas, from Edinburgh-based IT company Network Roi, has just helped a small business client whose server was hit by ransomware.
    "We had to recover everything from back-up. We'd had a back-up two minutes before the infection, so the timing couldn't have been any better - but it did result in quite a bit of downtime," he says.
    "You could risk paying them - but it's a bit like paying a blackmailer. We would only recommend it as a last resort.
    "You don't know whether they'll come back for more, you don't know that they'll clear the infection."
    Cybersecurity expert Prof Alan Woodward says paying also leaves you vulnerable to further cybercrime.
    "As soon as you pay up, you get on a suckers' list and you'll probably get contacted again," he says.
    "It's low-hanging fruit for the criminals." ransom is usually demanded in the form of bitcoins

    Can you run your computer without operating system?

    Yes. But you have a lot of work to do. Without an operating system using and enforcing a standard, systematic approach to running the computer, you're put in the position of writing code (or programs) that must tell the computer exactly what to do. So if you want to type up a document in a word processing program, you'd have to create from scratch code that tells your computer to respond to each character pressed on your keyboard. Then you'd have to write a code that told the computer how those responses must translate to a screen. You'd have to tell your computer how to draw the character you want! Think of every single option or possibility your word processing program has. You'd have to write code for every single one of those directly onto your hard drive.
    Let's go back to our general contractor analogy. If we're building a house, we'll want it to have certain features like plumbing, electrical work and windows. In a computer, we also want features like a program that creates documents, one that accesses the Internet and one that stores our photos. Without an operating system, it's not just that your "carpenter" doesn't know where to hammer in nails to a beam to get the room you want -- it's also that you have to forge the hammers, and you have to create the nails.
    An operating system provides a uniform set of screws, lumber and any other material you need. It can go back and forth between rooms so fast you didn't even know it left the one you were in.
    And that's really important, because here's another thing: Remember how we were talking about the operating system only being able to concentrate on one thing at a time? Well, without one, your computer could run one program. Period. You could create a document. You could save it. You could print it. But you couldn't look at that document and keep a clock running on your desktop. If you don't have an operating system, you're stuck doing one -- and only one -- process at a time.

    What is operating system?

    OPERATING SYSTEM:
    The operating system is the most important program that runs on acomputer. Every general-purpose computer must have an operating system to run other programs and applications. Operating systems perform basic tasks, such as recognizing inputfrom the keyboard, sending output to the display screen, keeping track of files and directories on the disk, and controlling peripheral devices such as disk drives and printers.
    For large systems, the operating system has even greater responsibilities and powers. It is like a traffic cop -- it makes sure that different programs and users running at the same time do not interfere with each other. The operating system is also responsible for security, ensuring that unauthorized users do not access the system.
    What is an Operating System

    The Classification of Operating systems

  • Multi-user: Allows two or more users to run programs at the same time. Some operating systems permit hundreds or even thousands of concurrent users.
  • Multiprocessing : Supports running a program on more than one CPU.
  • Multitasking : Allows more than one program to run concurrently.
  • Multithreading Allows different parts of a single program to run concurrently.
  • Real time: Responds to input instantly. General-purpose operating systems, such as DOS and UNIX, are not real-time.
  • Operating systems provide a software platform on top of which other programs, called application programs, can run. The application programs must be written to run on top of a particular operating system. Your choice of operating system, therefore, determines to a great extent the applications you can run. For PCs, the most popular operating systems are DOS, OS/2, and Windows, but others are available, such as Linux.


    Monday, 7 December 2015

    Ada (Founder of scientific computing)

    ADA BYRON, COUNTESS OF LOVELACE

    Born: London, England, December 10, 1815

    Died: London, England, November 27, 1852

    Analyst, Metaphysician, and Founder of Scientific Computing

    Ada Byron was the daughter of a brief marriage between the Romantic poet Lord Byron and Anne Isabelle Milbanke, who separated from Byron just a month after Ada was born. Four months later, Byron left England forever. Ada never met her father (who died in Greece in 1823) and was raised by her mother, Lady Byron. Her life was an apotheosis of struggle between emotion and reason, subjectivism and objectivism, poetics and mathematics, ill health and bursts of energy.
    Lady Byron wished her daughter to be unlike her poetical father, and she saw to it that Ada received tutoring in mathematics and music, as disciplines to counter dangerous poetic tendencies. But Ada's complex inheritance became apparent as early as 1828, when she produced the design for a flying machine. It was mathematics that gave her life its wings.
    Lady Byron and Ada moved in an elite London society, one in which gentlemen not members of the clergy or occupied with politics or the affairs of a regiment were quite likely to spend their time and fortunes pursuing botany, geology, or astronomy. In the early nineteenth century there were no "professional" scientists (indeed, the word "scientist" was only coined by William Whewell in 1836)--but the participation of noblewomen in intellectual pursuits was not widely encouraged.
    One of the gentlemanly scientists of the era was to become Ada's lifelong friend. Charles Babbage, Lucasian professor of mathematics at Cambridge, was known as the inventor of the Difference Engine, an elaborate calculating machine that operated by the method of finite differences. Ada met Babbage in 1833, when she was just 17, and they began a voluminous correspondence on the topics of mathematics, logic, and ultimately all subjects.
    In 1835, Ada married William King, ten years her senior, and when King inherited a noble title in 1838, they became the Earl and Countess of Lovelace. Ada had three children. The family and its fortunes were very much directed by Lady Byron, whose domineering was rarely opposed by King.
    Babbage had made plans in 1834 for a new kind of calculating machine (although the Difference Engine was not finished), an Analytical Engine. His Parliamentary sponsors refused to support a second machine with the first unfinished, but Babbage found sympathy for his new project abroad. In 1842, an Italian mathematician, Louis Menebrea, published a memoir in French on the subject of the Analytical Engine. Babbage enlisted Ada as translator for the memoir, and during a nine-month period in 1842-43, she worked feverishly on the article and a set of Notes she appended to it. These are the source of her enduring fame.
    Ada called herself "an Analyst (& Metaphysician)," and the combination was put to use in the Notes. She understood the plans for the device as well as Babbage but was better at articulating its promise. She rightly saw it as what we would call a general-purpose computer. It was suited for "developping [sic] and tabulating any function whatever. . . the engine [is] the material expression of any indefinite function of any degree of generality and complexity." Her Notes anticipate future developments, including computer-generated music.


    Ada died of cancer in 1852, at the age of 37, and was buried beside the father she never knew. Her contributions to science were resurrected only recently, but many new biographies* attest to the fascination of Babbage's "Enchantress of Numbers."