SlideShare ist ein Scribd-Unternehmen logo
1 von 4
Downloaden Sie, um offline zu lesen
jhc的な言語と割込み




たけおか@たけおかラボ
   @takeoka
Jhc の想像できるランタイム・ルーチン
●   オブジェクト(領域)アロケータ & GC
    ●   リスト、文字列、クロージャ


●   クロージャ(関数閉包)への引数のapply
●   (Lazyの制御?)
    ●   lazyの関数中に展開は可能だろう
割り込まれると嫌なところ
●   GC 走行中
    ●   「競合」のような高尚な話もあるが…
    ●   資源が無いのに、資源が必要になると、どうしようもない
        –   割り込みルーチン中で、オブジェクト生成したい
            →だがStop GC中なので、新オブジェクト作れない → 死亡
        –   簡単な回避策もあり
        –   例えば、
            ●   割り込みルーチン用にあらかじめインスタンス(領域)確保しておく
●   他は、想像できるところ
    ●   想像できないところにバグが出るwww :-P
他は、想像できるところ
    ●   想像できないところにバグが出るwww :-P
●   普通の排他制御でOK
●   jhcのランタイムルーチンで確認すべきであろうところ
    ●   アロケータ
    ●   GC
    ●   隠れてapplyを行おうとしてるとき(????適当なこと言ってます)
        などなど
    ●   結局
         (OSライタがよく使う)C言語のランタイム・ルーチンに無い
         ルーチンに気をつけよう
        と言ってるだけ
●   コンパイルド・コードそのものは、当然、人間が精査する

Weitere ähnliche Inhalte

Andere mochten auch

Hum2310 fa2014 proust questionnaire
Hum2310 fa2014 proust questionnaireHum2310 fa2014 proust questionnaire
Hum2310 fa2014 proust questionnaireProfWillAdams
 
Sustainable schoolyard mf2.3
Sustainable schoolyard mf2.3Sustainable schoolyard mf2.3
Sustainable schoolyard mf2.3Megan Finaly
 
eHotelExperts Cerveses montseny - Toni Farres
eHotelExperts Cerveses montseny - Toni FarreseHotelExperts Cerveses montseny - Toni Farres
eHotelExperts Cerveses montseny - Toni FarresHotel Curious
 
Java Tech & Tools | Beyond the Data Grid: Coherence, Normalisation, Joins and...
Java Tech & Tools | Beyond the Data Grid: Coherence, Normalisation, Joins and...Java Tech & Tools | Beyond the Data Grid: Coherence, Normalisation, Joins and...
Java Tech & Tools | Beyond the Data Grid: Coherence, Normalisation, Joins and...JAX London
 
What DevOps can learn from Oktoberfest
What DevOps can learn from OktoberfestWhat DevOps can learn from Oktoberfest
What DevOps can learn from OktoberfestAndreas Grabner
 
KOF OSSコンソーシアム 女子部 ハンダ付け勉強会 紹介
KOF OSSコンソーシアム 女子部 ハンダ付け勉強会 紹介KOF OSSコンソーシアム 女子部 ハンダ付け勉強会 紹介
KOF OSSコンソーシアム 女子部 ハンダ付け勉強会 紹介たけおか しょうぞう
 
Architecture | Thinking Distributed to Improve Agility | Jamie Allsop
Architecture | Thinking Distributed to Improve Agility | Jamie AllsopArchitecture | Thinking Distributed to Improve Agility | Jamie Allsop
Architecture | Thinking Distributed to Improve Agility | Jamie AllsopJAX London
 
DevOps and Performance - Why, How and Best Practices - DevOps Meetup Sydney
DevOps and Performance - Why, How and Best Practices - DevOps Meetup SydneyDevOps and Performance - Why, How and Best Practices - DevOps Meetup Sydney
DevOps and Performance - Why, How and Best Practices - DevOps Meetup SydneyAndreas Grabner
 
SchaalX Korte Presentatie
SchaalX Korte PresentatieSchaalX Korte Presentatie
SchaalX Korte PresentatieWendaKeijzer
 
Arh1000 sm2015 syllabus
Arh1000 sm2015 syllabusArh1000 sm2015 syllabus
Arh1000 sm2015 syllabusProfWillAdams
 
Beyond profit sig carbon finance
Beyond profit sig carbon financeBeyond profit sig carbon finance
Beyond profit sig carbon financeElaine Chow
 
Proposal for creation of mhadei tiger reserve by rajendra kerkar
Proposal for creation of mhadei tiger reserve by rajendra kerkarProposal for creation of mhadei tiger reserve by rajendra kerkar
Proposal for creation of mhadei tiger reserve by rajendra kerkartallulahdsilva
 
Poultry Planner July 2012
Poultry Planner July 2012Poultry Planner July 2012
Poultry Planner July 2012Manish Arora
 
상상지니릴레이
상상지니릴레이상상지니릴레이
상상지니릴레이HaNee Seo
 
Hum2220 1330 egyptian mummification
Hum2220 1330 egyptian mummificationHum2220 1330 egyptian mummification
Hum2220 1330 egyptian mummificationProfWillAdams
 
Digi historyand theory1_final
Digi historyand theory1_finalDigi historyand theory1_final
Digi historyand theory1_finalpkirk63
 

Andere mochten auch (20)

Hum2310 fa2014 proust questionnaire
Hum2310 fa2014 proust questionnaireHum2310 fa2014 proust questionnaire
Hum2310 fa2014 proust questionnaire
 
Sustainable schoolyard mf2.3
Sustainable schoolyard mf2.3Sustainable schoolyard mf2.3
Sustainable schoolyard mf2.3
 
eHotelExperts Cerveses montseny - Toni Farres
eHotelExperts Cerveses montseny - Toni FarreseHotelExperts Cerveses montseny - Toni Farres
eHotelExperts Cerveses montseny - Toni Farres
 
Java Tech & Tools | Beyond the Data Grid: Coherence, Normalisation, Joins and...
Java Tech & Tools | Beyond the Data Grid: Coherence, Normalisation, Joins and...Java Tech & Tools | Beyond the Data Grid: Coherence, Normalisation, Joins and...
Java Tech & Tools | Beyond the Data Grid: Coherence, Normalisation, Joins and...
 
What DevOps can learn from Oktoberfest
What DevOps can learn from OktoberfestWhat DevOps can learn from Oktoberfest
What DevOps can learn from Oktoberfest
 
KOF OSSコンソーシアム 女子部 ハンダ付け勉強会 紹介
KOF OSSコンソーシアム 女子部 ハンダ付け勉強会 紹介KOF OSSコンソーシアム 女子部 ハンダ付け勉強会 紹介
KOF OSSコンソーシアム 女子部 ハンダ付け勉強会 紹介
 
Wundt, w. (1897)
Wundt, w. (1897)Wundt, w. (1897)
Wundt, w. (1897)
 
Architecture | Thinking Distributed to Improve Agility | Jamie Allsop
Architecture | Thinking Distributed to Improve Agility | Jamie AllsopArchitecture | Thinking Distributed to Improve Agility | Jamie Allsop
Architecture | Thinking Distributed to Improve Agility | Jamie Allsop
 
DevOps and Performance - Why, How and Best Practices - DevOps Meetup Sydney
DevOps and Performance - Why, How and Best Practices - DevOps Meetup SydneyDevOps and Performance - Why, How and Best Practices - DevOps Meetup Sydney
DevOps and Performance - Why, How and Best Practices - DevOps Meetup Sydney
 
SchaalX Korte Presentatie
SchaalX Korte PresentatieSchaalX Korte Presentatie
SchaalX Korte Presentatie
 
SchaalX
SchaalXSchaalX
SchaalX
 
Arh1000 sm2015 syllabus
Arh1000 sm2015 syllabusArh1000 sm2015 syllabus
Arh1000 sm2015 syllabus
 
Beyond profit sig carbon finance
Beyond profit sig carbon financeBeyond profit sig carbon finance
Beyond profit sig carbon finance
 
Proposal for creation of mhadei tiger reserve by rajendra kerkar
Proposal for creation of mhadei tiger reserve by rajendra kerkarProposal for creation of mhadei tiger reserve by rajendra kerkar
Proposal for creation of mhadei tiger reserve by rajendra kerkar
 
Decoraciones 1
Decoraciones 1Decoraciones 1
Decoraciones 1
 
Bullying: Key Issues and a Call to Action
Bullying: Key Issues and a Call to ActionBullying: Key Issues and a Call to Action
Bullying: Key Issues and a Call to Action
 
Poultry Planner July 2012
Poultry Planner July 2012Poultry Planner July 2012
Poultry Planner July 2012
 
상상지니릴레이
상상지니릴레이상상지니릴레이
상상지니릴레이
 
Hum2220 1330 egyptian mummification
Hum2220 1330 egyptian mummificationHum2220 1330 egyptian mummification
Hum2220 1330 egyptian mummification
 
Digi historyand theory1_final
Digi historyand theory1_finalDigi historyand theory1_final
Digi historyand theory1_final
 

Mehr von たけおか しょうぞう

いにしえ的ななにか、カニか? RISC-V picoRV32, e203 改造 オレオレ命令追加した
いにしえ的ななにか、カニか? RISC-V picoRV32, e203 改造 オレオレ命令追加したいにしえ的ななにか、カニか? RISC-V picoRV32, e203 改造 オレオレ命令追加した
いにしえ的ななにか、カニか? RISC-V picoRV32, e203 改造 オレオレ命令追加したたけおか しょうぞう
 
俺ASICと俺CPU“松竹V(しょうちくぶい)”
俺ASICと俺CPU“松竹V(しょうちくぶい)”俺ASICと俺CPU“松竹V(しょうちくぶい)”
俺ASICと俺CPU“松竹V(しょうちくぶい)”たけおか しょうぞう
 
あるRISC-V CPUの 浮動小数点数(異常なし)
あるRISC-V CPUの 浮動小数点数(異常なし)あるRISC-V CPUの 浮動小数点数(異常なし)
あるRISC-V CPUの 浮動小数点数(異常なし)たけおか しょうぞう
 
どうして昔の人は八進数でしゃべるのか?
どうして昔の人は八進数でしゃべるのか?どうして昔の人は八進数でしゃべるのか?
どうして昔の人は八進数でしゃべるのか?たけおか しょうぞう
 
無脳スマートスピーカを 越えレレレのレ
無脳スマートスピーカを 越えレレレのレ無脳スマートスピーカを 越えレレレのレ
無脳スマートスピーカを 越えレレレのレたけおか しょうぞう
 
昔の外付けキャッシュ & コヒーレント・キャッシュ
昔の外付けキャッシュ & コヒーレント・キャッシュ昔の外付けキャッシュ & コヒーレント・キャッシュ
昔の外付けキャッシュ & コヒーレント・キャッシュたけおか しょうぞう
 

Mehr von たけおか しょうぞう (20)

いにしえ的ななにか、カニか? RISC-V picoRV32, e203 改造 オレオレ命令追加した
いにしえ的ななにか、カニか? RISC-V picoRV32, e203 改造 オレオレ命令追加したいにしえ的ななにか、カニか? RISC-V picoRV32, e203 改造 オレオレ命令追加した
いにしえ的ななにか、カニか? RISC-V picoRV32, e203 改造 オレオレ命令追加した
 
SOAR:Smalltalk on RISC
SOAR:Smalltalk on RISCSOAR:Smalltalk on RISC
SOAR:Smalltalk on RISC
 
俺ASICと俺CPU“松竹V(しょうちくぶい)”
俺ASICと俺CPU“松竹V(しょうちくぶい)”俺ASICと俺CPU“松竹V(しょうちくぶい)”
俺ASICと俺CPU“松竹V(しょうちくぶい)”
 
あるRISC-V CPUの 浮動小数点数(異常なし)
あるRISC-V CPUの 浮動小数点数(異常なし)あるRISC-V CPUの 浮動小数点数(異常なし)
あるRISC-V CPUの 浮動小数点数(異常なし)
 
RISC-Vの可能性
RISC-Vの可能性RISC-Vの可能性
RISC-Vの可能性
 
RISC-Vの可能性
RISC-Vの可能性RISC-Vの可能性
RISC-Vの可能性
 
どうして昔の人は八進数でしゃべるのか?
どうして昔の人は八進数でしゃべるのか?どうして昔の人は八進数でしゃべるのか?
どうして昔の人は八進数でしゃべるのか?
 
Riscv+fpga200606
Riscv+fpga200606Riscv+fpga200606
Riscv+fpga200606
 
Takep lpc1114-190614
Takep lpc1114-190614Takep lpc1114-190614
Takep lpc1114-190614
 
Takep lpc1114-190613
Takep lpc1114-190613Takep lpc1114-190613
Takep lpc1114-190613
 
初歩的な部品の知識
初歩的な部品の知識初歩的な部品の知識
初歩的な部品の知識
 
Takepino LPC1114
Takepino LPC1114Takepino LPC1114
Takepino LPC1114
 
Lisp_chibi_machine 190427
Lisp_chibi_machine 190427Lisp_chibi_machine 190427
Lisp_chibi_machine 190427
 
無脳スマートスピーカを 越えレレレのレ
無脳スマートスピーカを 越えレレレのレ無脳スマートスピーカを 越えレレレのレ
無脳スマートスピーカを 越えレレレのレ
 
Common Lisp ユーザへのScheme紹介
Common Lisp ユーザへのScheme紹介Common Lisp ユーザへのScheme紹介
Common Lisp ユーザへのScheme紹介
 
RISC-V User level ISA
RISC-V User level ISARISC-V User level ISA
RISC-V User level ISA
 
Lispマシン・シミュレータの紹介
Lispマシン・シミュレータの紹介Lispマシン・シミュレータの紹介
Lispマシン・シミュレータの紹介
 
昔の外付けキャッシュ & コヒーレント・キャッシュ
昔の外付けキャッシュ & コヒーレント・キャッシュ昔の外付けキャッシュ & コヒーレント・キャッシュ
昔の外付けキャッシュ & コヒーレント・キャッシュ
 
Ichigojam ossc-170819
Ichigojam ossc-170819Ichigojam ossc-170819
Ichigojam ossc-170819
 
大昔のMMU
大昔のMMU大昔のMMU
大昔のMMU
 

Interrupt jhc

  • 2. Jhc の想像できるランタイム・ルーチン ● オブジェクト(領域)アロケータ & GC ● リスト、文字列、クロージャ ● クロージャ(関数閉包)への引数のapply ● (Lazyの制御?) ● lazyの関数中に展開は可能だろう
  • 3. 割り込まれると嫌なところ ● GC 走行中 ● 「競合」のような高尚な話もあるが… ● 資源が無いのに、資源が必要になると、どうしようもない – 割り込みルーチン中で、オブジェクト生成したい →だがStop GC中なので、新オブジェクト作れない → 死亡 – 簡単な回避策もあり – 例えば、 ● 割り込みルーチン用にあらかじめインスタンス(領域)確保しておく ● 他は、想像できるところ ● 想像できないところにバグが出るwww :-P
  • 4. 他は、想像できるところ ● 想像できないところにバグが出るwww :-P ● 普通の排他制御でOK ● jhcのランタイムルーチンで確認すべきであろうところ ● アロケータ ● GC ● 隠れてapplyを行おうとしてるとき(????適当なこと言ってます) などなど ● 結局 (OSライタがよく使う)C言語のランタイム・ルーチンに無い ルーチンに気をつけよう と言ってるだけ ● コンパイルド・コードそのものは、当然、人間が精査する