A system, method and computer program product are provided for scanning
data. Initially, a request is received from a central processing unit for
reading data saved in storage. The requested data is then scanned. If
malicious code is not found in the data during the scanning, the data is
transmitted from the storage to the central processing unit. In a similar
manner, a request is received for data to be written in storage. In
response to the request, the requested data is scanned. If malicious code
is not found in the data during the scanning, data is written to the
storage.