Reverse engineering is the attempt to recapture the top level specification by analyzing the product - I call it an "attempt", because it is not possible in practice, or even in theory, to recover everything in the original specification purely by studying the product.
Reverse engineering is difficult and time consuming, but it is getting easier all the time thanks to IT, for two reasons:
- Firstly, as engineering techniques themselves become more computerised, more of the design is due to the computer. Thus, recognisable blocks of code, or groups of circuit elements on a substrate, often occur in many different designs produced by the same computer program. These are easier to recognise and interpret than a customised product would be.
- Secondly, artificial intelligence techniques for pattern recognition, and for parsing and interpretation, have advanced to the point where these and other structures within a product can be recognized automatically.
Reverse engineering generally consists of the following stages:
1. Analysis of the product
2. Generation of an intermediate level product description
3. Human analysis of the product description to produce a specification
4. Generation of a new product using the specification.
There is thus a chain of events between the underlying design specification and any intermediate level design documents lying behind the product, through the product itself, through the reverse engineered product description, through the reverse engineered specification, and into the new product itself.
Reasons for reverse engineering:
- Interoperability.
- Lost documentation: Reverse engineering often is done because the documentation of a particular device has been lost (or was never written), and the person who built it is no longer available. Integrated circuits often seem to have been designed on obsolete, proprietary systems, which means that the only way to incorporate the functionality into new technology is to reverse-engineer the existing chip and then re-design it.
- Product analysis : To examine how a product works, what components it consists of, estimate costs, and identify potential patent infringement.
- Digital update/correction : To update the digital version (e.g. CAD model) of an object to match an "as-built" condition.
- Security auditing.
- Military or commercial espionage : Learning about an enemy's or competitor's latest research by stealing or capturing a prototype and dismantling it.
- Removal of copy protection, circumvention of access restrictions.
- Creation of unlicensed/unapproved duplicates.
- Academic/learning purposes.
- Curiosity.
- Competitive technical intelligence.
- Learning.
Tuesday, September 15, 2009
Learn software concepts: Overview of Reverse Engineering
Posted by
Ashish Agarwal
at
9/15/2009 04:58:00 PM
0
comments
Labels: Engineering, Reasons, Reverse Engineering, Stages
|
|
Friday, April 24, 2009
Research: Sleep and diabetes
There are a number of factors that are risk factors for getting diabetes (specially the Type 2 variety). These include factors such as the diet, hereditary factors, the amount of exercise that a person gets, and a few others, but very few people would have expected that sleep would be one of the factors. A study has found that too much or too little sleep can affect whether a person developes Type 2 diabetes, or impaired glucose tolerance (link to article):
The risk is 2½ times higher for people who sleep less than 7 hours or more than 8 hours a night, according to the study published in journal Sleep Medicine. To reach the conclusion, researchers analysed the life habits of 276 subjects over a 6-year period. They determined that over the timespan, approximately 20 percent of those with long and short sleep duration developed type 2 diabetes or impaired glucose tolerance versus only 7 percent among subjects who were average duration sleepers.
The researchers also point out that diabetes is not the only risk associated with sleep duration. A growing number of studies have shed light on a similar relationship between sleep and obesity, cardiovascular disease, and overall mortality. The authors observe that among adults, between 7 and 8 hours of nighttime sleep appears to be the optimum duration to protect against common diseases and premature death.
Even though people know that getting atleast 7-8 hours of sleep is optimum, more and more people are getting much lower levels of sleep, not realizing that this fast pace of life is affecting their health.
Posted by
Ashish Agarwal
at
4/24/2009 12:33:00 AM
0
comments
Labels: Article, Health, Reasons, Research, Risk, Risk Factors, Sleep, Study
|
|