All about Processor . Part 2

Control Signals

Control signals are electronic signals that orchestrate the various processor units participating in the execution of an instruction. Control signals are sent using an element called a sequencer. For example, the Read / Write signal allows the memory to be told that the processor wants to read or write information.
Functional Units

The processor is made up of a group of interrelated units (or control units). Microprocessor architecture varies considerably from one design to another, but the main elements of a microprocessor are as follows:

A control unit that links the incoming data, decodes it, and sends it to the execution unit:The control unit is made up of the following elements:
sequencer (or monitor and logic unit) that synchronizes instruction execution with the clock speed. It also sends control signals;
ordinal counter that contains the address of the instruction currently being executed;
instruction register that contains the following instruction.
An execution unit (or processing unit) that accomplishes tasks assigned to it by the instruction unit. The execution unit is made of the following elements:
The arithmetical and logic unit (written ALU). The ALU performs basic arithmetical calculations and logic functions (AND, OR, EXCLUSIVE OR, etc.);
The floating point unit (written FPU) that performs partial complex calculations which cannot be done by the arithmetical and logic unit.
The status register;
The accumulator register.
A bus management unit (or input-output unit) that manages the flow of incoming and outgoing information and that interfaces with system RAM;




The diagram below gives a simplified representation of the elements that make up the processor (the physical layout of the elements is different than their actual layout):

Transistor

To process information, the microprocessor has a group of instructions, called the "instruction set", made possible by electronic circuits. More precisely, the instruction set is made with the help of semiconductors, little "circuit switches" that use the transistor effect, discovered in 1947 by John Barden, Walter H. Brattain and William Shockley who received a Nobel Prize in 1956 for it.
A transistor (the contraction of transfer resistor) is an electronic semi-conductor component that has three electrodes and is capable of modifying current passing through it using one of its electrodes (called control electrode). These are referred to as "active components", in contrast to "passive components", such as resistance or capacitors which only have two electrodes (referred to as being "bipolar").
A MOS (metal, oxide, silicone) transistor is the most common type of transistor used to design integrated circuits. MOS transistors have two negatively charged areas, respectively called source (which has an almost zero charge) and drain (which has a 5V charge), separated by a positively charged region, called a substrate). The substrate has a control electrode overlaid, called a gate, that allows a charge to be applied to the substrate.
When there is no charge on the control electrode, the positively charged substrate acts as a barrier and prevents electron movement from the source to the drain. However, when a charge is applied to the gate, the positive charges of the substrate are repelled and a negatively charged communication channel is opened between the source and the drain.
 The transistor therefore acts as a programmable switch, thanks to the control electrode. When a charge is applied to the control electrode, it acts as a closed interrupter and, when there is no charge, it acts as an open interrupter.

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

All about Processor . Part 1

 

Introduction

The processor (CPU, for Central Processing Unit) is the computer's brain. It allows the processing of numeric data, meaning information entered in binary form, and the execution of instructions stored in memory.
The first microprocessor (Intel 4004) was invented in 1971. It was a 4-bit calculation device with a speed of 108 kHz. Since then, microprocessor power has grown exponentially. So what exactly are these little pieces of silicone that run our computers?

Operation

The processor (called CPU, for Central Processing Unit) is an electronic circuit that operates at the speed of an internal clock thanks to a quartz crystal that, when subjected to an electrical currant, send pulses, called "peaks". The clock speed (also called cycle), corresponds to the number of pulses per second, written in Hertz (Hz). Thus, a 200 MHz computer has a clock that sends 200,000,000 pulses per second. Clock frequency is generally a multiple of the system frequency (FSB, Front-Side Bus), meaning a multiple of the motherboard frequency.
With each clock peak, the processor performs an action that corresponds to an instruction or a part thereof. A measure called CPI (Cycles Per Instruction) gives a representation of the average number of clock cycles required for a microprocessor to execute an instruction. A microprocessor’s power can thus be characterized by the number of instructions per second that it is capable of processing. MIPS (millions of instructions per second) is the unit used and corresponds to the processor frequency divided by the CPI.

Instructions

An instruction is an elementary operation that the processor can accomplish. Instructions are stored in the main memory, waiting to be processed by the processor. An instruction has two fields:
  • the operation code, which represents the action that the processor must execute;
  • the operand code, which defines the parameters of the action. The operand code depends on the operation. It can be data or a memory address.


The number of bits in an instruction varies according to the type of data (between 1 and 4 8-bit bytes).
Instructions can be grouped by category, of which the main ones are:
  • Memory Access: accessing the memory or transferring data between registers.
  • Arithmetic Operations: operations such as addition, subtraction, division or multiplication.
  • Logic Operations: operations such as AND, OR, NOT, EXCLUSIVE NOT, etc.
  • Control: sequence controls, conditional connections, etc.

Registers

When the processor executes instructions, data is temporarily stored in small, local memory locations of 8, 16, 32 or 64 bits called registers. Depending on the type of processor, the overall number of registers can vary from about ten to many hundreds.
The main registers are:
  • the accumulator register (ACC), which stores the results of arithmetic and logical operations;
  • the status register (PSW, Processor Status Word), which holds system status indicators (carry digits, overflow, etc.);
  • the instruction register (RI), which contains the current instruction being processed;
  • the ordinal counter (OC or PC for Program Counter), which contains the address of the next instruction to process;
  • the buffer register, which temporarily stores data from the memory.

Cache Memory

Cache memory (also called buffer memory) is local memory that reduces waiting times for information stored in the RAM (Random Access Memory). In effect, the computer's main memory is slower than that of the processor. There are, however, types of memory that are much faster, but which have a greatly increased cost. The solution is therefore to include this type of local memory close to the processor and to temporarily store the primary data to be processed in it. Recent model computers have many different levels of cache memory:
  • Level one cache memory (called L1 Cache, for Level 1 Cache) is directly integrated into the processor. It is subdivided into two parts:
    • the first part is the instruction cache, which contains instructions from the RAM that have been decoded as they came across the pipelines.
    • the second part is the data cache, which contains data from the RAM and data recently used during processor operations.

Level 1 caches can be accessed very rapidly. Access waiting time approaches that of internal processor registers.
  • Level two cache memory (called L2 Cache, for Level 2 Cache) is located in the case along with the processor (in the chip). The level two cache is an intermediary between the processor, with its internal cache, and the RAM. It can be accessed more rapidly than the RAM, but less rapidly than the level one cache.
  • Level three cache memory (called L3 Cache, for Level 3 Cache) is located on the motherboard.

All these levels of cache reduce the latency time of various memory types when processing or transferring information. While the processor works, the level one cache controller can interface with the level two controller to transfer information without impeding the processor. As well, the level two cache interfaces with the RAM (level three cache) to allow transfers without impeding normal processor operation.

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

How to make dual language blog with one click

Some time ago I wanted to have two languages on my blog - one for my natives, one international. WordPress have a solution called WPML but it's paid solution. Second thing, I have blogger running so long I don't want to transfer.

I've found simple solution!



This method changes main/home/base adress/domain and leads to same URL on other adress/domain. It's also simple installed, just one HTML/JS widget :)


What you should do before:

1. Create two blogs in two different languages.
2. Go to Settings->Search options and make a link to your own site in "page not found code" just in case :) it can look like:
There is nothing in this link, please continue on <a href="http://maridadiagrncy.blogspot.com">maridadiagency.blogspot.com</a>.

Put your adress instead of mine ;)

---

Now in both of them 
in Layout, create a widget "HTML/Javascript" and paste this code:

<script language="javascript" type="text/javascript"> 

document.write ("<a href=" + window.location.protocol + "//" + "theotherlanguageadress.com" + window.location.pathname + ">the other language name</a>"); 
</script>


Put adress of the second-language-blog in 
theotherlanguageadress.com and name of language used in another blog in the other language name. 

---
Writing new post:

1. go to blog of first language, click New Post
2. put some title
3. put the text, images etc
4. put labels etc.

5. copy
all info from points 2,3,4 to New Post in other language
6. publish posts

7. now you can edit post, change titles to the proper ones in both languages, change text in second language post etc

8. don't translate labels!!!

Procedure for new pages is exactly same :)


---

What you need to know:

You must have all links exact same in both languages . That's why you have to publish posts and pages with exact titles (you can edit later, but URL of post will be created at first time). Also that's the reason to have all labels exact same for all languages.

What works?
Changing language while reading post, when looking for label, on archive pages.

What is not working?
Every URL containing question mark (?) doesn't work. For example links to comments are not working; also changing language while looking for older posts is not -> search works by '?' sign so URLs are being shortened to everything before "?" sign. It's not so important, because most visitors will change language at first; also they probably won't be interested in comments in other language.

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

How to change maximum number of posts in Blogger label page

Blogger has set a default maximum 20 blog posts in its label page (category page). This may or may not suit your preference or your purpose in setting up the label page. You may want to decrease it to increase download time. Alternatively, you may want to increase the maximum number of posts to show all posts with the same label (category).

If you want to change this default maximum number of post, you will have to edit the template. First, backup your blog template (Dashboard > Template > Backup (at the top right corner) > Download full template > All files)


Now you got to open the template editor (Dashboard > Template > Edit HTML). Tick [ ] Expand Widget Templates


Now use ctrl+F to help you find the following codes:


expr:href='data:label.url'

Replace the above with the following (I used the number 150 because I want all posts to be displayed in the label page. You may use other numbers in place of 150):
expr:href='data:label.url + "?max-results=150"'

Repeat this for all instances of expr:href='data:label.url' that you can find. I think for the Simple template, there will be 3 instances, so the above will have to be repeated 3 times.

When done, save template and exit.

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

How to Make your Blogger Blog ready for Mobile Phones

As you know, millions of people use their mobile phones to access internet. The mobile internet speed is also very fast these days with 3G's , mobile apps,etc.

From this, we can say many of your readers are coming to your blog through mobile phones..But, if you don't make your blog mobile friendly, .you may lose all your mobile readers because in a mobile phone, a normal blog takes lot of time to load and there are other issues that your site not fitting properly in the mobile screen.

So, here is how to make your Blogger (blogspot) blog mobile internet friendly..

Sign into your Blogger account > Design > Edit html

Find this line..


<b:include data='blog' name='all-head-content'/>


Paste this code below that line...



<meta content='IE=EmulateIE7' http-equiv='X-UA-Compatible'/>

<b:if cond='data:blog.isMobile'>

<meta content='width=device-width, initial-scale=1.0, user-scalable=0' name='viewport'/>

<b:else/>

<meta content='width=1100' name='viewport'/>

</b:if>


Save the Changes!

That's it! Now, your visitors can access your blogger blog through mobile phones with blazing speed...

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

How to add Blogger Share Buttons to Custom Blogger Templates

Recently, Blogger released their new Share Buttons feature which makes it easier for your Blog visitors to bookmark, tweet, fshare, email ,etc your post.

But, if you're using any custom blogger template.. you may not see the widget appearing in blog..even though you activate it.

So, if you have that problem. here is how to fix it.
(before making any changes..first backup your template)

1. Sign into Blogger > Design > Edit html
(tick the expand widget templates)

2. Add this line anywhere you want the widget to appear

<b:include data='post' name='shareButtons'/>



Normally, in most templates, you can add it after this line..

<p class='post-footer-line post-footer-line-1'>



If you don't find that above line in your template....
Find this one.

<p><data:post.body/></p>


and add this code after that line..


<p><data:post.body/></p>
<div style='clear:both; padding: 10px 10px 10px 10px;'> <b:include data='post' name='shareButtons'/> </div>



Note: If you're using Magazine style blogger template, You can find the data:post.body line TWO TIMES.. So, try in both ways and find out which one is working..and remove the other one.

Finally..Save the template!

If you still don't see it in your Blog, Make sure..you activated it by going to
Blogger dashboard > Design > Click the 'edit' button of the Blog post section.



  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

About Error 503 “Service Unavailable”

Are you getting this error message on your blog dashboard, or while you are trying to access your blog?

Read on to find out what this problem is all about and how to help blogger to solve it.



What does 503 mean?
503 “Service Unavailable” is a “response code” like 404 “Page not found”. The 503 response code is a bit more complicated as it is not a page that is missing it is a server problem. Usually this happens when a server cannot cope or deliver its hosted content to web users, in other words blogger servers have been overloaded.

Background

Back in March Google engineers introduced Auto Pagination which basically reduces and summarizes the amount of posts that a blog displays on the home page, this only affects blogs that show all or most of their full posts on the home page.
This approach to the problem by Blogger has proved ineffective, and Blogger are now having problems in the delivery of certain blogs worldwide.

Who is affected by this 503 “Service Unavailable”

This problem affects all blogs worldwide. One of the ways to find out if you have been affected is to login in Google analytics and check your traffic sources, select search engines and select the keyword that brings most of the traffic to your blog, compare the data with previous months. A notable change in your bounce rate or average time will be a good indicator that your blog had been affected by this 503 response code. The logic behind this is simple, a user trying to view your blog has opened the 503 page and assumed the site down and gone to another site. Due to this you will receive a 100% Bounce rate for that keyword as well as a low time average.

Understanding the problem and its consequences


The consequences of this problem are that you can start to lose traffic and your ranking in search engines. You need to understand that this is not a problem of resources, this cannot be fixed by getting a new server for blogger (if it was I would not be here talking about it).
This is a problem of how we blog and what we do with our blogs.

How to solve the 503 “Server unavailable” on Blogger

Here are a few steps you could take in order to help Blogger to solve the issue.

Basic level (no skills required)
- Summarize your posts.
- Show only the most relevant post on your home page.

If you show full posts on your home page you have a greater chance of encountering the “503” problem, as your blog is using more resources from Blogger to deliver or load your blog. Secondly an excessive number of posts on the home page (even summarized posts) may result in a 503 as there is a delay with Blogger loading your blog. You can opt to show your latest post or more relevant posts, and include a widget with some links to your previous posts. This is SEO friendly and will reduce the amount of problems you will have with your blog.

Medium Level (some skills and knowledge are required)
- Use a light weight template and avoid using the “template designer” from Blogger
- Use Light images

If you are using a template made from the “template designer” tab, there is a simple test that you can do to reveal how efficient your template is: Clean the cookies of your browser and open your blog (not blogger dashboard) by typing the url in the address bar of the browser. Take note of the time that it takes for your blog to load completely, now go to blogger and change your template for any free template and repeat the same steps, clean your cookies and open your blog again and compare the time. Some of the templates made with the “Template Designer” have a poorer performance, especially those that have some java scripts and/or have a background image.

Images play an important part in saving some bites, you can use PNG format or GIF as these are lightweight formats, you can also use JPG but you must always compare them to find out which is the lightest one. PNG is not always the best. If you don’t know how to change the file formats of the images you can search on Google for GIPM; an open source software with features like Paint Shop Pro; easy to use especially to change image formats.

High level (Skills and Knowledge are required)
- Speed test using Firebug for Firefox

The best way to analyze and get a full report on the performance of your blog is by using “Firebug” for Firefox. Firebug will report a series of problems that your blog may have in order to reduce the loading time of your blog which is one of the determining factors of the 503 “Service Unavailable” error.
You will get specific reports on how your CSS is performing, where you can reduce the size of your CSS, where to put your Javascript files, and much more. Most importantly it will create a compressed version of your CSS (best performance) for you to use as well as a copy of all images in a different format, for instance if you have some JPG images, Firebug will compare the same image to other formats and will give to you the same image but under a different format saving you time in editing those images.

Overall there are alot of things that you will find out about your blog after running a test on Firebug that you may not know how to solve, if that is the case you can jump into the forum and ask questions about it.

Why should you bother with all of this?


You may be thinking why do I need to bother with all of this, why not just wait for somebody from Blogger and Google to solve the problem?. Well the answer to that is easy: this is not just Blogger’s problem this is a blog problem, and in this case, blogs worldwide. This is not solved by buying an extra server or hiring somebody to solve the problem, this can in part be solved by us bloggers and the way we do things. Blogger is the only blog platform that offers you the best of both worlds: the benefits of a self hosted blog for free. You just have to ask yourself would I like if Blogger changed the rules and started to charge it’s users for their free service?

This may or may not happen, but for now this is just an appeal to all bloggers to change the way they do things for the best, at the end of the day it will help your blog as well as the user experience that you offer to your blog users.

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS