Static Analysis of Run-Time Errors in Embedded Real-Time Parallel C Programs
We present a static analysis by Abstract Interpretation to check for run-time errors in parallel and multi-threaded C programs. Following our work on Astr\'ee, we focus on embedded critical programs without recursion nor dynamic memory allocation, but extend the analysis to a static set of thre...
Gespeichert in:
| Veröffentlicht in: | Logical methods in computer science Jg. 8, Issue 1 |
|---|---|
| 1. Verfasser: | |
| Format: | Journal Article |
| Sprache: | Englisch |
| Veröffentlicht: |
Logical Methods in Computer Science e.V
01.01.2012
|
| Schlagworte: | |
| ISSN: | 1860-5974, 1860-5974 |
| Online-Zugang: | Volltext |
| Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
| Abstract | We present a static analysis by Abstract Interpretation to check for run-time errors in parallel and multi-threaded C programs. Following our work on Astr\'ee, we focus on embedded critical programs without recursion nor dynamic memory allocation, but extend the analysis to a static set of threads communicating implicitly through a shared memory and explicitly using a finite set of mutual exclusion locks, and scheduled according to a real-time scheduling policy and fixed priorities. Our method is thread-modular. It is based on a slightly modified non-parallel analysis that, when analyzing a thread, applies and enriches an abstract set of thread interferences. An iterator then re-analyzes each thread in turn until interferences stabilize. We prove the soundness of our method with respect to the sequential consistency semantics, but also with respect to a reasonable weakly consistent memory semantics. We also show how to take into account mutual exclusion and thread priorities through a partitioning over an abstraction of the scheduler state. We present preliminary experimental results analyzing an industrial program with our prototype, Th\'es\'ee, and demonstrate the scalability of our approach. |
|---|---|
| AbstractList | We present a static analysis by Abstract Interpretation to check for run-time errors in parallel and multi-threaded C programs. Following our work on Astr\'ee, we focus on embedded critical programs without recursion nor dynamic memory allocation, but extend the analysis to a static set of threads communicating implicitly through a shared memory and explicitly using a finite set of mutual exclusion locks, and scheduled according to a real-time scheduling policy and fixed priorities. Our method is thread-modular. It is based on a slightly modified non-parallel analysis that, when analyzing a thread, applies and enriches an abstract set of thread interferences. An iterator then re-analyzes each thread in turn until interferences stabilize. We prove the soundness of our method with respect to the sequential consistency semantics, but also with respect to a reasonable weakly consistent memory semantics. We also show how to take into account mutual exclusion and thread priorities through a partitioning over an abstraction of the scheduler state. We present preliminary experimental results analyzing an industrial program with our prototype, Th\'es\'ee, and demonstrate the scalability of our approach. |
| Author | Miné, Antoine |
| Author_xml | – sequence: 1 givenname: Antoine surname: Miné fullname: Miné, Antoine |
| BookMark | eNp1kM9LwzAUx4NMcM7dPeaoh2qStmnqbZSpg4pjm-fwmh-jo20kqYf997ZORATf5T0Svp_H-1yiSec6g9A1JXeMcnFfvhTbSNzQB8ZvGaHsDE2p4CRK8yyZ_Jov0DyEAxkqjqlgfIrKbQ99rfCig-YY6oCdxZuPLtrVrcFL750PuO7wsq2M1kbjjYHm9LkGD01jGlzgtXd7D224QucWmmDm332G3h6Xu-I5Kl-fVsWijFSc0j7SSSVUKkCkFgiLTZoRlkFqrFaGZamNK5FqyvOYJlznmeFKK54LXUGVUxuLeIZWJ652cJDvvm7BH6WDWn49OL-X4IerGiO55cM2A0QJnQwagFNCDMktMJ1TTgYWObGUdyF4Y394lMhRrhzlSiGpZFyOcocI_xNR9WjRdb2Huvk_-AlTpX9G |
| CitedBy_id | crossref_primary_10_1145_3729297 crossref_primary_10_1017_S0960129521000499 crossref_primary_10_1007_s10009_024_00773_y crossref_primary_10_1145_3732933 crossref_primary_10_1016_j_jss_2018_10_001 crossref_primary_10_1016_j_scico_2018_05_001 crossref_primary_10_1007_s00165_014_0326_7 crossref_primary_10_1016_j_scico_2016_01_007 |
| Cites_doi | 10.1007/978-3-540-31980-1_7 10.1007/BF00268134 10.2140/pjm.1979.82.43 10.1007/978-3-540-79124-9_9 10.1007/978-3-540-31987-0_2 10.1145/781131.781153 10.1109/RTTAS.2003.1203046 10.1145/512950.512973 10.1007/978-3-662-03811-6 10.1145/1706299.1706303 10.1093/logcom/2.4.511 10.1007/978-3-642-19835-9_5 10.1007/978-1-4757-3472-0_2 10.1109/TC.1979.1675439 10.1007/BFb0039704 10.1016/S1571-0661(05)01155-2 10.1145/1328438.1328469 10.1007/3-540-55844-6_142 10.1007/978-3-642-02658-4_52 10.1109/2.546611 10.1109/TSE.1977.229904 10.1109/DASC.2007.4391842 10.1007/3-540-44829-2_14 10.1145/237721.237727 10.1145/379539.379553 10.1007/978-3-540-30538-5_4 10.1007/978-3-540-77505-8_23 10.2140/pjm.1955.5.285 10.1145/360933.360975 10.1007/978-3-642-19718-5_21 10.1145/1040305.1040336 10.2514/6.2010-3385 10.1007/BF00289062 10.1145/1926385.1926393 10.1007/978-3-642-25318-8_21 10.1145/1134650.1134659 10.1145/1785414.1785443 10.1109/TASE.2007.55 10.1007/978-3-540-74061-2_27 10.1145/1111037.1111042 10.1007/978-3-540-24725-8_4 10.1145/359545.359563 10.1007/3-540-47764-0_1 10.1145/512760.512770 10.1145/1229428.1229469 10.1007/s10990-006-8609-1 |
| ContentType | Journal Article |
| DBID | AAYXX CITATION DOA |
| DOI | 10.2168/LMCS-8(1:26)2012 |
| DatabaseName | CrossRef DOAJ Directory of Open Access Journals |
| DatabaseTitle | CrossRef |
| DatabaseTitleList | CrossRef |
| Database_xml | – sequence: 1 dbid: DOA name: Open Access资源_DOAJ url: https://www.doaj.org/ sourceTypes: Open Website |
| DeliveryMethod | fulltext_linktorsrc |
| Discipline | Computer Science |
| EISSN | 1860-5974 |
| ExternalDocumentID | oai_doaj_org_article_6f64b8ea0c8d4860a6100e09fa2d9160 10_2168_LMCS_8_1_26_2012 |
| GroupedDBID | .DC 29L 2WC 5GY 5VS AAFWJ AAYXX ADBBV ADQAK AENEX AFPKN ALMA_UNASSIGNED_HOLDINGS BCNDV CITATION EBS EJD FRP GROUPED_DOAJ J9A KQ8 M~E OK1 OVT P2P TR2 TUS XSB |
| ID | FETCH-LOGICAL-c351t-d4b8c58a85fa023e57027a5efdce275f3b85d1693146d97e6cdc698dbab91f383 |
| IEDL.DBID | DOA |
| ISICitedReferencesCount | 24 |
| ISICitedReferencesURI | http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=000302505000026&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| ISSN | 1860-5974 |
| IngestDate | Fri Oct 03 12:38:40 EDT 2025 Tue Nov 18 21:52:00 EST 2025 Sat Nov 29 08:03:57 EST 2025 |
| IsDoiOpenAccess | true |
| IsOpenAccess | true |
| IsPeerReviewed | true |
| IsScholarly | true |
| Language | English |
| License | https://creativecommons.org/licenses/by/3.0 |
| LinkModel | DirectLink |
| MergedId | FETCHMERGED-LOGICAL-c351t-d4b8c58a85fa023e57027a5efdce275f3b85d1693146d97e6cdc698dbab91f383 |
| OpenAccessLink | https://doaj.org/article/6f64b8ea0c8d4860a6100e09fa2d9160 |
| ParticipantIDs | doaj_primary_oai_doaj_org_article_6f64b8ea0c8d4860a6100e09fa2d9160 crossref_primary_10_2168_LMCS_8_1_26_2012 crossref_citationtrail_10_2168_LMCS_8_1_26_2012 |
| PublicationCentury | 2000 |
| PublicationDate | 2012-01-01 |
| PublicationDateYYYYMMDD | 2012-01-01 |
| PublicationDate_xml | – month: 01 year: 2012 text: 2012-01-01 day: 01 |
| PublicationDecade | 2010 |
| PublicationTitle | Logical methods in computer science |
| PublicationYear | 2012 |
| Publisher | Logical Methods in Computer Science e.V |
| Publisher_xml | – name: Logical Methods in Computer Science e.V |
| References | 10.2168/LMCS-8(1:26)2012_mauborgne-rival-ESOP05 10.2168/LMCS-8(1:26)2012_chang-al:popl08 A. Tarski (10.2168/LMCS-8(1:26)2012_tarski-PJM55) 1955; 5 10.2168/LMCS-8(1:26)2012_posix-threads 10.2168/LMCS-8(1:26)2012_carre-hymans-ARXIV09 10.2168/LMCS-8(1:26)2012_dijkstra-EWD123 10.2168/LMCS-8(1:26)2012_cousot-al-ASIAN06 10.2168/LMCS-8(1:26)2012_ch:popl78 10.2168/LMCS-8(1:26)2012_steensgaard-popl96 10.2168/LMCS-8(1:26)2012_reynolds-FSTTCS04 10.2168/LMCS-8(1:26)2012_godefroid-phd 10.2168/LMCS-8(1:26)2012_java3 10.2168/LMCS-8(1:26)2012_mine-LCTES06 10.2168/LMCS-8(1:26)2012_mine:cav09 10.2168/LMCS-8(1:26)2012_flanagan-al-spin03 10.2168/LMCS-8(1:26)2012_qadeer-rehof-tacas05 10.2168/LMCS-8(1:26)2012_cc-APCT84 10.2168/LMCS-8(1:26)2012_ima 10.2168/LMCS-8(1:26)2012_delmas-souyris-sas07 P. Cousot and R. Cousot (10.2168/LMCS-8(1:26)2012_cc-PJM79) 1979; 81 10.2168/LMCS-8(1:26)2012_cc-JLC92 10.2168/LMCS-8(1:26)2012_alglave-al-tacas11 10.2168/LMCS-8(1:26)2012_saraswat-al-PPOPP07 10.2168/LMCS-8(1:26)2012_dijkstra-EWD472 10.2168/LMCS-8(1:26)2012_adve-charachorloo-WRL95 10.2168/LMCS-8(1:26)2012_lamport-AI80 10.2168/LMCS-8(1:26)2012_c99 10.2168/LMCS-8(1:26)2012_roever-01 10.2168/LMCS-8(1:26)2012_manson-al-POPL05 10.2168/LMCS-8(1:26)2012_absint-web 10.2168/LMCS-8(1:26)2012_bertrane-al-aiaa10 10.2168/LMCS-8(1:26)2012_rinard-sas01 10.2168/LMCS-8(1:26)2012_nielson-al 10.2168/LMCS-8(1:26)2012_ieee754 10.2168/LMCS-8(1:26)2012_lamport-ACM78 10.2168/LMCS-8(1:26)2012_feret:getcol00 10.2168/LMCS-8(1:26)2012_lamport-TC79 10.2168/LMCS-8(1:26)2012_sewell-al:jacm10 10.2168/LMCS-8(1:26)2012_malkis-phd 10.2168/LMCS-8(1:26)2012_ARINC 10.2168/LMCS-8(1:26)2012_blanchet-al-PLDI03 10.2168/LMCS-8(1:26)2012_owicki-gries-AI76 10.2168/LMCS-8(1:26)2012_lamport-TSE77 10.2168/LMCS-8(1:26)2012_leroy-POPL06 10.2168/LMCS-8(1:26)2012_mine:esop11 10.2168/LMCS-8(1:26)2012_atig-al-popl10 10.2168/LMCS-8(1:26)2012_cc-POPL77 10.2168/LMCS-8(1:26)2012_ferrara-TAP08 10.2168/LMCS-8(1:26)2012_gamatie-RTAS03 10.2168/LMCS-8(1:26)2012_cc-PLILP92 10.2168/LMCS-8(1:26)2012_mine:dasia09 10.2168/LMCS-8(1:26)2012_feret-ESOP04 10.2168/LMCS-8(1:26)2012_salciano-al-ppopp01 10.2168/LMCS-8(1:26)2012_sevcik-popl11 10.2168/LMCS-8(1:26)2012_mine-al:tase07 10.2168/LMCS-8(1:26)2012_astreea-web 10.2168/LMCS-8(1:26)2012_bourdoncle-FMPA93 10.2168/LMCS-8(1:26)2012_mine-HOSC06 10.2168/LMCS-8(1:26)2012_algave-aplas11 |
| References_xml | – ident: 10.2168/LMCS-8(1:26)2012_qadeer-rehof-tacas05 doi: 10.1007/978-3-540-31980-1_7 – ident: 10.2168/LMCS-8(1:26)2012_owicki-gries-AI76 doi: 10.1007/BF00268134 – volume: 81 start-page: 43 issue: 1 year: 1979 ident: 10.2168/LMCS-8(1:26)2012_cc-PJM79 publication-title: Pacific Journal of Mathematics doi: 10.2140/pjm.1979.82.43 – ident: 10.2168/LMCS-8(1:26)2012_godefroid-phd – ident: 10.2168/LMCS-8(1:26)2012_ferrara-TAP08 doi: 10.1007/978-3-540-79124-9_9 – ident: 10.2168/LMCS-8(1:26)2012_mauborgne-rival-ESOP05 doi: 10.1007/978-3-540-31987-0_2 – ident: 10.2168/LMCS-8(1:26)2012_blanchet-al-PLDI03 doi: 10.1145/781131.781153 – ident: 10.2168/LMCS-8(1:26)2012_gamatie-RTAS03 doi: 10.1109/RTTAS.2003.1203046 – ident: 10.2168/LMCS-8(1:26)2012_cc-POPL77 doi: 10.1145/512950.512973 – ident: 10.2168/LMCS-8(1:26)2012_nielson-al doi: 10.1007/978-3-662-03811-6 – ident: 10.2168/LMCS-8(1:26)2012_atig-al-popl10 doi: 10.1145/1706299.1706303 – ident: 10.2168/LMCS-8(1:26)2012_carre-hymans-ARXIV09 – ident: 10.2168/LMCS-8(1:26)2012_cc-JLC92 doi: 10.1093/logcom/2.4.511 – ident: 10.2168/LMCS-8(1:26)2012_alglave-al-tacas11 doi: 10.1007/978-3-642-19835-9_5 – ident: 10.2168/LMCS-8(1:26)2012_dijkstra-EWD123 doi: 10.1007/978-1-4757-3472-0_2 – ident: 10.2168/LMCS-8(1:26)2012_lamport-TC79 doi: 10.1109/TC.1979.1675439 – ident: 10.2168/LMCS-8(1:26)2012_bourdoncle-FMPA93 doi: 10.1007/BFb0039704 – ident: 10.2168/LMCS-8(1:26)2012_feret:getcol00 doi: 10.1016/S1571-0661(05)01155-2 – ident: 10.2168/LMCS-8(1:26)2012_chang-al:popl08 doi: 10.1145/1328438.1328469 – ident: 10.2168/LMCS-8(1:26)2012_cc-PLILP92 doi: 10.1007/3-540-55844-6_142 – ident: 10.2168/LMCS-8(1:26)2012_mine:cav09 doi: 10.1007/978-3-642-02658-4_52 – ident: 10.2168/LMCS-8(1:26)2012_c99 – ident: 10.2168/LMCS-8(1:26)2012_adve-charachorloo-WRL95 doi: 10.1109/2.546611 – ident: 10.2168/LMCS-8(1:26)2012_lamport-TSE77 doi: 10.1109/TSE.1977.229904 – ident: 10.2168/LMCS-8(1:26)2012_ima doi: 10.1109/DASC.2007.4391842 – ident: 10.2168/LMCS-8(1:26)2012_flanagan-al-spin03 doi: 10.1007/3-540-44829-2_14 – ident: 10.2168/LMCS-8(1:26)2012_posix-threads – ident: 10.2168/LMCS-8(1:26)2012_cc-APCT84 – ident: 10.2168/LMCS-8(1:26)2012_steensgaard-popl96 doi: 10.1145/237721.237727 – ident: 10.2168/LMCS-8(1:26)2012_malkis-phd – ident: 10.2168/LMCS-8(1:26)2012_salciano-al-ppopp01 doi: 10.1145/379539.379553 – ident: 10.2168/LMCS-8(1:26)2012_reynolds-FSTTCS04 doi: 10.1007/978-3-540-30538-5_4 – ident: 10.2168/LMCS-8(1:26)2012_cousot-al-ASIAN06 doi: 10.1007/978-3-540-77505-8_23 – volume: 5 start-page: 285 year: 1955 ident: 10.2168/LMCS-8(1:26)2012_tarski-PJM55 publication-title: Pacific Journal of Mathematics doi: 10.2140/pjm.1955.5.285 – ident: 10.2168/LMCS-8(1:26)2012_dijkstra-EWD472 doi: 10.1145/360933.360975 – ident: 10.2168/LMCS-8(1:26)2012_mine:esop11 doi: 10.1007/978-3-642-19718-5_21 – ident: 10.2168/LMCS-8(1:26)2012_manson-al-POPL05 doi: 10.1145/1040305.1040336 – ident: 10.2168/LMCS-8(1:26)2012_astreea-web – ident: 10.2168/LMCS-8(1:26)2012_bertrane-al-aiaa10 doi: 10.2514/6.2010-3385 – ident: 10.2168/LMCS-8(1:26)2012_lamport-AI80 doi: 10.1007/BF00289062 – ident: 10.2168/LMCS-8(1:26)2012_sevcik-popl11 doi: 10.1145/1926385.1926393 – ident: 10.2168/LMCS-8(1:26)2012_algave-aplas11 doi: 10.1007/978-3-642-25318-8_21 – ident: 10.2168/LMCS-8(1:26)2012_roever-01 – ident: 10.2168/LMCS-8(1:26)2012_absint-web – ident: 10.2168/LMCS-8(1:26)2012_mine-LCTES06 doi: 10.1145/1134650.1134659 – ident: 10.2168/LMCS-8(1:26)2012_sewell-al:jacm10 doi: 10.1145/1785414.1785443 – ident: 10.2168/LMCS-8(1:26)2012_ARINC – ident: 10.2168/LMCS-8(1:26)2012_mine-al:tase07 doi: 10.1109/TASE.2007.55 – ident: 10.2168/LMCS-8(1:26)2012_delmas-souyris-sas07 doi: 10.1007/978-3-540-74061-2_27 – ident: 10.2168/LMCS-8(1:26)2012_leroy-POPL06 doi: 10.1145/1111037.1111042 – ident: 10.2168/LMCS-8(1:26)2012_feret-ESOP04 doi: 10.1007/978-3-540-24725-8_4 – ident: 10.2168/LMCS-8(1:26)2012_lamport-ACM78 doi: 10.1145/359545.359563 – ident: 10.2168/LMCS-8(1:26)2012_rinard-sas01 doi: 10.1007/3-540-47764-0_1 – ident: 10.2168/LMCS-8(1:26)2012_ieee754 – ident: 10.2168/LMCS-8(1:26)2012_ch:popl78 doi: 10.1145/512760.512770 – ident: 10.2168/LMCS-8(1:26)2012_mine:dasia09 – ident: 10.2168/LMCS-8(1:26)2012_java3 – ident: 10.2168/LMCS-8(1:26)2012_saraswat-al-PPOPP07 doi: 10.1145/1229428.1229469 – ident: 10.2168/LMCS-8(1:26)2012_mine-HOSC06 doi: 10.1007/s10990-006-8609-1 |
| SSID | ssj0000331826 |
| Score | 2.0530665 |
| Snippet | We present a static analysis by Abstract Interpretation to check for run-time errors in parallel and multi-threaded C programs. Following our work on Astr\'ee,... |
| SourceID | doaj crossref |
| SourceType | Open Website Enrichment Source Index Database |
| SubjectTerms | computer science - logic in computer science computer science - programming languages d.2.4 f.3.1 f.3.2 |
| Title | Static Analysis of Run-Time Errors in Embedded Real-Time Parallel C Programs |
| URI | https://doaj.org/article/6f64b8ea0c8d4860a6100e09fa2d9160 |
| Volume | 8, Issue 1 |
| WOSCitedRecordID | wos000302505000026&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D |
| hasFullText | 1 |
| inHoldings | 1 |
| isFullTextHit | |
| isPrint | |
| journalDatabaseRights | – providerCode: PRVAON databaseName: Open Access资源_DOAJ customDbUrl: eissn: 1860-5974 dateEnd: 99991231 omitProxy: false ssIdentifier: ssj0000331826 issn: 1860-5974 databaseCode: DOA dateStart: 20040101 isFulltext: true titleUrlDefault: https://www.doaj.org/ providerName: Directory of Open Access Journals – providerCode: PRVHPJ databaseName: ROAD: Directory of Open Access Scholarly Resources customDbUrl: eissn: 1860-5974 dateEnd: 99991231 omitProxy: false ssIdentifier: ssj0000331826 issn: 1860-5974 databaseCode: M~E dateStart: 20040101 isFulltext: true titleUrlDefault: https://road.issn.org providerName: ISSN International Centre |
| link | http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwrV27TsMwFLVQxcDCG1Fe8sBAB6t52XHYoApiaKuqgNTN8lOqVFKUtox8O9dJWpUFFpYMiZNY5ya-5zjOuQjdMu-6FllDgKw6khiaEJmEnCQa2IPXB0pWlvn9dDjkk0k22ir15deE1fbANXBd5liiuJWB5sYXTJKQ7wMbZE5GBqhNpdbhdltiqhqD49gT5_q7ZBQy3u0Pei-E34X3EetA0ot-5KEtu_4qrzwdov2GEOKHuiNHaMcWx-hgXWwBN-_eCep7WjjVeO0igucOj1cF8f9w4Lws5-UCTwucvysLY4nBY2CA9cGRLH3BlBnu4VG9Gmtxit6e8tfeM2lKIRAd03BJDGCgKZecOglZ1tIU5KSk1hlto5S6WHFqvK8KDHwmSy3TRrOMGyVVFjpQoWeoVcwLe44w4AiqJWCGZTRJnFbaGQssKEs1UD3F2qi7Bkboxifcl6uYCdALHkrhoRRchCJiwkPZRp3NGR-1R8YvbR891pt23t262gExF03MxV8xv_iPi1yiPd-hejrlCrWW5cpeo139uZwuypvqcYLt4Cv_BjD4zTw |
| linkProvider | Directory of Open Access Journals |
| openUrl | ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=Static+Analysis+of+Run-Time+Errors+in+Embedded+Real-Time+Parallel+C+Programs&rft.jtitle=Logical+methods+in+computer+science&rft.au=Min%C3%A9%2C+Antoine&rft.date=2012-01-01&rft.issn=1860-5974&rft.eissn=1860-5974&rft.volume=8%2C+Issue+1&rft_id=info:doi/10.2168%2FLMCS-8%281%3A26%292012&rft.externalDBID=n%2Fa&rft.externalDocID=10_2168_LMCS_8_1_26_2012 |
| thumbnail_l | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=1860-5974&client=summon |
| thumbnail_m | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=1860-5974&client=summon |
| thumbnail_s | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=1860-5974&client=summon |